path: root/Makefile
AgeCommit message (Collapse)AuthorFilesLines
2016-12-12add uninstall into makefileFelix Wong1-1/+10
2016-02-21Makefile: Provide a way to disable silent rulesLars-Dominik Braun1-16/+24
Fixes #571
2015-10-06Further Makefile fixesLars-Dominik Braun1-31/+20
Specifically: Use libao’s pkgconfig file, drop explicit header dependencies (handled by dependency generation), use immediate assignment operator :=
2015-10-05clean up MakefileDavid Coppa1-7/+3
2015-08-12Change ln -s to ln -fs in MakefileDylan Frese1-4/+4
The -f/--force flag allows ln to overwrite its target if it already exists instead of exiting with an error. Before, make install-libpiano and make libpiano would error on a rebuild.
2015-04-06Switch back to libcurlLars-Dominik Braun1-33/+13
Drops libwaitress. Adds the new dependency libcurl and drops gnutls. I wouldn’t say writing my own HTTP library was a mistake – it was not and the experience gained was worth it. Instead I have to acknowledge that libcurl is just better than my own implementation. Sure, it does a lot more than HTTP – one could call that bloat. Yet if you just want to get the job done™ reusing code is the way to go. See #512 and #513.
2014-08-06Makefile: Avoid double path separator (//)Lars-Dominik Braun1-11/+11
Causes problems on Windows/Cygwin. Fixes #471.
2014-07-25Makefile: remove dependency generation for *.d filesBrian Norris1-9/+2
The %.d rule means that 'make clean' will try to generate dependency files first. Let's use somem extra gcc flags to make this simpler. Fixes Github Issue #468 Signed-off-by: Brian Norris <>
2014-06-02libav* autodetectionLars-Dominik Braun1-23/+1
I’ll give it another shot. ffmpeg’s doc/developer.texi states their micro version always starts at 100 for this very reason. Use that to detect ffmpeg and guess its version by looking at major and minor version numbers. Let’s hope this works.
2014-05-08Makefile: Improve libav selectionLars-Dominik Braun1-4/+8
See #447.
2014-04-22player: Add missing header for ffmpeg1.2Lars-Dominik Braun1-1/+1
Closes #441.
2014-04-11Fix volume controlLars-Dominik Braun1-35/+17
Commit 8012d6cb4bb65a858105ef878c5b98d91b24e1cd was broken in several ways. Since auto-detection did not work correctly it was replaced by a user-editable variable. See #439.
2014-04-07ffmpeg compatibilityLars-Dominik Braun1-19/+35
Adds support for ffmpeg 2.2 and 1.2. Right now the maintenance overhead of supporting both libav implementations is not that big. Fixes #437 and #435.
2014-03-31Use libav/ffmpeg for audio decodingLars-Dominik Braun1-23/+7
libav 9.12 and ffmpeg 2.2 have been tested. Here’s why: My mp4 “parser” *cough* never was a mp4 parser in the sense that it actually understood the file format. Instead it grepped the input stream for “magic” strings (section identifiers). That alone should be sufficient to throw away the code and rewrite it. Additionally libfaad2 has not been updated for ages. I guess it was abandoned in favor of libav/ffmpeg. With libav/ffmpeg, which we support both as long as the API’s don’t diverge too much, pianobar gains fast and reliable AAC and MP3 decoding without bothering too much about the details. Most users will have it installed already. On my own machine libav consumes about 2/3 CPU time compared to the previous solution when playing AAC. Unfortunately memory usage doubled and my attempts to disable unused protocols/formats/codec failed due to libav’s API limitations. While cleaning up a small detail regarding the eventcmd API has changed too: Song duration and position are measured in seconds instead of milliseconds now. Since libav/ffmpeg keeps track of accurate timing the precision pianobar keeps track of can be reduced, while still being sufficient for most users.
2014-01-31Switch to clang for debugging build + fix issuesLars-Dominik Braun1-26/+16
2013-10-24Port to OpenBSDRichard Allen1-0/+2
This really just tells the makefile how to call the compiler on OpenBSD. You'll also want the following packages: json libmad libao faad gnutls
2013-09-08waitress: Move testcases to separate fileLars-Dominik Braun1-3/+5
Now the test-enabled waitress.o does not conflict with pianobar’s waitress.o any more, thus running `make test` without `make clean` works fine.
2013-08-09Remove nonexisting list.h from MakefileLars-Dominik Braun1-1/+0
Oops. Fixes #386.
2013-08-07piano: Generic linked listsLars-Dominik Braun1-1/+3
Introduces generic linked list structure and functions (like append, delete, …). Removes a lot of copy&pasted code and improves code readability/reusability. Heads up: This change breaks libpiano’s ABI.
2013-06-08Fix build in FreeBSDWilliam Grzybowski1-0/+2
2013-04-30Makefile: Use simple variablesLars-Dominik Braun1-30/+30
TIL recursive variables and $(shell …) slow down `make`.
2013-04-30Makefile: Use new json-c pkgconfig file nameLars-Dominik Braun1-2/+2
Keeps compatibility with older versions (will be removed in the future). Closes #364.
2013-04-17Link dynamic pianobar against gcryptLars-Dominik Braun1-1/+2
Commit 96db841a16670b52fa462337c657c6dc6bd2844a added initialization functions to the pianobar binary but failed to link the dynamically linked version against libgcrypt. Closes #362.
2013-01-09Use gcc -std=c99 instead of c99 on OS XTej Chajed1-1/+6
Automatic checking in Makefile. Fixes #308 and #340.
2012-06-24Auto-dependency generationLars-Dominik Braun1-1/+17
Modified example from GNU make manual[1] and [2]. Closes #221. [1] [2]
2012-05-23Add libgcrypt cflags to %.o targetTodd Eigenschink1-1/+1
2012-05-17Fix dynlink with --as-neededLars-Dominik Braun1-2/+2
Closes #258.
2012-05-09Correct LDFLAGS for DYNLINK=1Andres J Ruiz Torres1-3/+2
Closes #253
2012-05-08Use pkg-config for libmad and gnutlsDavid Coppa1-3/+4
2012-05-02Fixed building when DYNLIB=1Kaleb Elwert1-0/+1
Closes #247
2012-05-01piano: Remove old blowfish keysLars-Dominik Braun1-2/+0
2012-05-01piano: Split piano.c into request.c and response.cLars-Dominik Braun1-1/+3
2012-05-01piano: Move to JSON API (v5)Lars-Dominik Braun1-24/+23
In random order: Thanks to Chris Eby for his work on pithos, to an anonymous coward for sending me his Android client, to Alex Howard for sending me the webOS client, to ZigZagJoe for providing a temporary fix and thanks to everyone who sent Pandora a message. Although there are a few rough edges here and there this fixes #236.
2011-12-24Pretty makeLars-Dominik Braun1-9/+16
2011-12-24Enable a lot of GCC warnings for debug targetLars-Dominik Braun1-1/+26
2011-12-23Fix warnings found by -Wcast-qualLars-Dominik Braun1-1/+1
2011-12-23Fix warnings found by -WshadowLars-Dominik Braun1-1/+1
2011-12-23Fix warnings found by -Wmissing-declarationsLars-Dominik Braun1-1/+1
2011-12-08Added gnutls flags so builds correctly when using DYNLINKbrimstone1-1/+1
2011-11-09TLS is not optional any moreLars-Dominik Braun1-7/+2
2011-11-09waitress: Initial TLS implementation (using gnutls)Lars-Dominik Braun1-4/+12
2011-08-18Add .PHONY to Makefile to avoid conflicts on case-insensitive file systemsaguynamedryan1-0/+2
Closes #147
2011-06-18Makefile: Don't override CFLAGS and CC environment variablesLars-Dominik Braun1-3/+8
Closes #129.
2011-06-13waitress: Rewrite split urlLars-Dominik Braun1-3/+10
Accepts user and password in urls now. Tests added.
2011-05-07Use the correct linking order for the --as-needed flagTim Harder1-3/+3
Closes #117
2011-04-20Make libpiano usable for 3rd party applicationsRomain Beauxis1-9/+30
* build shared library, * install it along with the required symlinks * install library headers * dynamically link pianobar to libpiano (if requested by the user)
2011-04-12Added LDFLAGS to Makefile and simplified LIB*_LDFLAGSLars-Dominik Braun1-19/+9
See issue #103.
2011-03-24Use c99 in posix compliant wayLars-Dominik Braun1-6/+6
-lpthread and move object file to the end of the argument list.
2011-02-27Use `c99`Lars-Dominik Braun1-2/+3
2011-02-26Rewrite input processingLars-Dominik Braun1-1/+2