From: Andre Noll Date: Wed, 19 Apr 2017 17:13:20 +0000 (+0200) Subject: Merge branch 'refs/heads/t/makefile_conventions' X-Git-Tag: v0.6.0~9 X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=commitdiff_plain;h=40b1bbc50682effec5cf18b0923cfab24e154245;hp=-c Merge branch 'refs/heads/t/makefile_conventions' A bunch of changes which strive to make the paraslash build system more standard. Cooking for three months. * refs/heads/t/makefile_conventions: build: Add target "check" as a synonym for "test". build: Rename target "tarball" to "dist". build: Do not strip installed executables by default. build: Support $(DESTDIR). build: Rename clean targets. --- 40b1bbc50682effec5cf18b0923cfab24e154245 diff --combined Makefile.in index 3c51029b,00a3d18f..6e84b6fd --- a/Makefile.in +++ b/Makefile.in @@@ -8,7 -8,6 +8,6 @@@ datarootdir := @datarootdir PACKAGE_TARNAME := @PACKAGE_TARNAME@ PACKAGE_VERSION := @PACKAGE_VERSION@ - INSTALL := @INSTALL@ M4 := @M4@ GENGETOPT := @GENGETOPT@ HELP2MAN := @HELP2MAN@ @@@ -52,6 -51,7 +51,6 @@@ alsa_cppflags := @alsa_cppflags oss_cppflags := @oss_cppflags@ mp4v2_cppflags := @mp4v2_cppflags@ -clock_gettime_ldflags := @clock_gettime_ldflags@ id3tag_ldflags := @id3tag_ldflags@ ogg_ldflags := @ogg_ldflags@ vorbis_ldflags := @vorbis_ldflags@ @@@ -68,6 -68,7 +67,6 @@@ readline_ldflags := @readline_ldflags samplerate_ldflags := @samplerate_ldflags@ osl_ldflags := @osl_ldflags@ curses_ldflags := @curses_ldflags@ -core_audio_ldflags := @core_audio_ldflags@ crypto_ldflags := @crypto_ldflags@ iconv_ldflags := @iconv_ldflags@ mp4v2_ldflags := @mp4v2_ldflags@ diff --combined Makefile.real index 8a8cd434,8a3d7acc..5e4dbe68 --- a/Makefile.real +++ b/Makefile.real @@@ -9,7 -9,6 +9,6 @@@ endi vardir := /var/paraslash mandir := $(datarootdir)/man/man1 - STRIP := $(CROSS_COMPILE)strip MKDIR_P := mkdir -p prefixed_executables := $(addprefix para_, $(executables)) @@@ -63,10 -62,11 +62,11 @@@ tarball_pfx := $(PACKAGE_TARNAME)-$(GIT tarball_delete := $(addprefix $(tarball_pfx)/, web .gitignore) tarball := $(tarball_pfx).tar.bz2 - .PHONY: all clean clean2 distclean maintainer-clean install man tarball all: $(prefixed_executables) $(man_pages) + .PHONY: all mostlyclean clean distclean maintainer-clean install \ + install-strip man dist tarball + man: $(man_pages) - tarball: $(tarball) include $(m4_ggo_dir)/makefile include $(test_dir)/makefile.test @@@ -113,6 -113,8 +113,6 @@@ STRICT_CFLAGS += -Wformat -Wformat-secu STRICT_CFLAGS += -Wmissing-format-attribute STRICT_CFLAGS += -Wdeclaration-after-statement -LDFLAGS += $(clock_gettime_ldflags) - ifeq ($(uname_s),Linux) # these cause warnings on *BSD CPPFLAGS += -Wunused-macros @@@ -280,7 -282,7 +280,7 @@@ $(dep_dir)/%.d: %.c | $(dep_dir para_recv para_afh para_play para_server: LDFLAGS += $(id3tag_ldflags) para_write para_play para_audiod \ -: LDFLAGS += $(ao_ldflags) $(pthread_ldflags) $(core_audio_ldflags) +: LDFLAGS += $(ao_ldflags) $(pthread_ldflags) para_client para_audioc para_play : LDFLAGS += $(readline_ldflags) para_server: LDFLAGS += $(osl_ldflags) para_gui: LDFLAGS += $(curses_ldflags) @@@ -335,31 -337,36 +335,36 @@@ $(prefixed_executables) @[ -z "$(Q)" ] || echo 'LD $@' $(Q) $(CC) $^ -o $@ $(LDFLAGS) - clean: - @[ -z "$(Q)" ] || echo 'CLEAN' + mostlyclean: + @[ -z "$(Q)" ] || echo 'MOSTLYCLEAN' $(Q) rm -f para_* $(Q) rm -rf $(object_dir) - - clean2: clean - @[ -z "$(Q)" ] || echo 'CLEAN2' + clean: mostlyclean + @[ -z "$(Q)" ] || echo 'CLEAN' $(Q) rm -rf $(build_dir) - distclean: clean2 test-clean + distclean: clean @[ -z "$(Q)" ] || echo 'DISTCLEAN' $(Q) rm -f Makefile autoscan.log config.status config.log - $(Q) rm -f GPATH GRTAGS GSYMS GTAGS - + $(Q) rm -f config.h configure config.h.in maintainer-clean: distclean @[ -z "$(Q)" ] || echo 'MAINTAINER-CLEAN' - $(Q) rm -f *.tar.bz2 config.h configure config.h.in + $(Q) rm -f *.tar.bz2 + $(Q) rm -f GPATH GRTAGS GSYMS GTAGS + + INSTALL ?= install + INSTALL_PROGRAM ?= $(INSTALL) + INSTALL_DATA ?= $(INSTALL) -m 644 + ifneq ($(findstring strip, $(MAKECMDGOALS)),) + strip_option := -s + endif - install: all man - $(MKDIR_P) $(bindir) $(mandir) - $(INSTALL) -s --strip-program $(STRIP) -m 755 \ - $(prefixed_executables) $(bindir) - $(INSTALL) -m 644 $(man_pages) $(mandir) - $(MKDIR_P) $(vardir) >/dev/null 2>&1 || true # not fatal, so don't complain + install install-strip: all man + $(MKDIR_P) $(DESTDIR)$(bindir) $(DESTDIR)$(mandir) + $(INSTALL) $(strip_option) $(prefixed_executables) $(DESTDIR)$(bindir) + $(INSTALL_DATA) $(man_pages) $(DESTDIR)$(mandir) + $(MKDIR_P) $(DESTDIR)$(vardir) >/dev/null 2>&1 || true # not fatal, so don't complain - $(tarball): + $(tarball) dist tarball: $(Q) rm -rf $(tarball) $(tarball_pfx) $(Q) git archive --format=tar --prefix=$(tarball_pfx)/ HEAD \ | tar --delete $(tarball_delete) > $(tarball_pfx).tar diff --combined NEWS.md index 6184335e,d9326db7..ae0c14b5 --- a/NEWS.md +++ b/NEWS.md @@@ -1,34 -1,9 +1,42 @@@ NEWS ==== +------------------------------------ +0.6.0 (to be announced) "fuzzy flux" +------------------------------------ +- Support for Mac OS X has been removed. +- On Linux systems, glibc-2.17 or newer is required to build the + source tree. +- Support for RSA public keys in ASN format (as generated by openssl + genrsa) has been removed. These keys have been deprecated since + 2011, so users should have long switched to keys generated with + ssh-keygen(1). +- If libgcrypt is used as the crypto library, we now require version + 1.5.0 (released in 2011) or later. +- The insecure RC4 stream cipher has been removed. It was superseded + by aes_ctr128 three years ago but the RC4 code had been kept for + backwards compatibility. +- On Linux, abstract unix domain sockets are used unconditionally. ++- The "install" target no longer strips executables, the new ++ install-strip target can be used to get the old behaviour. ++- The clean targets have been renamed: clean2 is gone, and the new ++ mostlyclean removes only the executables and object files. ++- New target: check (identical to test). ++- The DESTDIR make variable is honored to prepend a path to the ++ installation directory. This feature is orthogonal to the --prefix ++ option to configure. + +Downloads: +[tarball](./releases/paraslash-git.tar.bz2), + ------------------------------------- 0.5.7 (2016-12-31) "semantic density" ------------------------------------- + +Mostly a bug fix release, and a bunch of internal improvements. +The only user-visible changes are the sanity checks for the touch +command and the new options to the ls command. + - Speedup of the base64 decoder. - One of the two source browsers has been removed from the web pages. The doxygen API reference still contains an HTML version of each diff --combined configure.ac index afed0a79,17227125..eed441d6 --- a/configure.ac +++ b/configure.ac @@@ -63,14 -63,23 +63,10 @@@ AC_PATH_PROG([HELP2MAN], [help2man] test -z "$HELP2MAN" && AC_MSG_ERROR( [help2man is required to build this package]) - AC_PATH_PROG([INSTALL], [install]) - test -z "$INSTALL" && AC_MSG_ERROR( - [The install program is required to build this package]) - AC_PROG_CC AC_PROG_CPP executables="recv filter audioc write afh play" -################################################################## clock_gettime -clock_gettime_lib= -AC_CHECK_LIB([c], [clock_gettime], [clock_gettime_lib=c], [ - AC_CHECK_LIB([rt], [clock_gettime], [clock_gettime_lib=rt], [], []) -]) -if test -n "$clock_gettime_lib"; then - AC_DEFINE(HAVE_CLOCK_GETTIME, 1, [ - define to 1 if clock_gettime() is supported]) -fi -if test "$clock_gettime_lib" = "rt"; then - AC_SUBST(clock_gettime_ldflags, -lrt) -fi - ########################################################################### osl STASH_FLAGS LIB_ARG_WITH([osl], [-losl]) @@@ -200,6 -209,24 +196,6 @@@ AC_MSG_RESULT($have_ip_mreqn if test ${have_ip_mreqn} = yes; then AC_DEFINE(HAVE_IP_MREQN, 1, define to 1 you have struct ip_mreqn) fi -########################################################################### osx - -AC_MSG_CHECKING(for CoreAudio (MacOs)) -AC_LINK_IFELSE([AC_LANG_PROGRAM([[ - #include -]], [[ - AudioDeviceID id; -]])],[have_core_audio=yes],[have_core_audio=no]) -AC_MSG_RESULT($have_core_audio) -if test ${have_core_audio} = yes; then - f1="-framework CoreAudio" - f2="-framework AudioToolbox" - f3="-framework AudioUnit" - f4="-framework CoreServices" - core_audio_ldflags="$f1 $f2 $f3 $f4" - AC_SUBST(core_audio_ldflags) - AC_DEFINE(HAVE_CORE_AUDIO, 1, define to 1 on Mac Os X) -fi ########################################################################### ogg STASH_FLAGS LIB_ARG_WITH([ogg], [-logg]) @@@ -513,6 -540,10 +509,6 @@@ if test -n "$CRYPTOLIB"; the else audiod_errlist_objs="$audiod_errlist_objs gcrypt" fi - if test "$have_core_audio" = "yes"; then - audiod_errlist_objs="$audiod_errlist_objs osx_write ipc" - audiod_cmdline_objs="$audiod_cmdline_objs osx_write" - fi NEED_VORBIS_OBJECTS && { audiod_errlist_objs="$audiod_errlist_objs oggdec_filter" audiod_audio_formats="$audiod_audio_formats ogg" @@@ -845,6 -876,10 +841,6 @@@ play_cmdline_objs= play sync_filter " -if test "$have_core_audio" = "yes"; then - play_errlist_objs="$play_errlist_objs osx_write ipc" - play_cmdline_objs="$play_cmdline_objs osx_write" -fi NEED_OGG_OBJECTS && play_errlist_objs="$play_errlist_objs ogg_afh_common" NEED_VORBIS_OBJECTS && { play_errlist_objs="$play_errlist_objs oggdec_filter ogg_afh" @@@ -918,6 -953,12 +914,6 @@@ write_errlist_objs= writers="file" default_writer="FILE_WRITE" -if test "$have_core_audio" = "yes"; then - write_errlist_objs="$write_errlist_objs osx_write ipc" - write_cmdline_objs="$write_cmdline_objs osx_write" - writers="$writers osx" - default_writer="OSX_WRITE" -fi NEED_AO_OBJECTS && { write_errlist_objs="$write_errlist_objs ao_write" write_cmdline_objs="$write_cmdline_objs ao_write"