diff options
author | Laurent Bercot <ska-skaware@skarnet.org> | 2015-08-12 10:49:00 +0000 |
---|---|---|
committer | Laurent Bercot <ska-skaware@skarnet.org> | 2015-08-12 10:49:00 +0000 |
commit | d6517b38b23e016069be16d591cf3c6674bbff97 (patch) | |
tree | e3b93a9e70a8cedbcf3472d65e3905247e9d34e5 | |
parent | 30b7d1b936b048f3ab9f1c35832891f407cdb6cf (diff) | |
download | execline-d6517b38b23e016069be16d591cf3c6674bbff97.tar.gz execline-d6517b38b23e016069be16d591cf3c6674bbff97.tar.xz execline-d6517b38b23e016069be16d591cf3c6674bbff97.zip |
- Xyzzy fix! (fixes https://bugs.gentoo.org/show_bug.cgi?id=541092)
- skalibs dep bump to 2.3.6.1
-rw-r--r-- | INSTALL | 2 | ||||
-rw-r--r-- | Makefile | 30 | ||||
-rwxr-xr-x | configure | 5 | ||||
-rw-r--r-- | doc/index.html | 4 | ||||
-rw-r--r-- | doc/upgrade.html | 6 | ||||
-rw-r--r-- | package/deps.mak | 6 | ||||
-rw-r--r-- | package/info | 2 | ||||
-rw-r--r-- | package/targets.mak | 8 | ||||
-rwxr-xr-x | tools/gen-deps.sh | 4 |
9 files changed, 39 insertions, 28 deletions
diff --git a/INSTALL b/INSTALL index 235fccf..22b7f0a 100644 --- a/INSTALL +++ b/INSTALL @@ -6,7 +6,7 @@ Build Instructions - A POSIX-compliant C development environment - GNU make version 4.0 or later - - skalibs version 2.3.6.0 or later: http://skarnet.org/software/skalibs/ + - skalibs version 2.3.6.1 or later: http://skarnet.org/software/skalibs/ This software will run on any operating system that implements POSIX.1-2008, available at: diff --git a/Makefile b/Makefile index 3d49943..c7b57a6 100644 --- a/Makefile +++ b/Makefile @@ -67,19 +67,20 @@ ifneq ($(strip $(ALL_BINS)),) endif install: install-dynlib install-libexec install-bin install-sbin install-lib install-include -install-dynlib: $(SHARED_LIBS:lib%.so=$(DESTDIR)$(dynlibdir)/lib%.so) +install-dynlib: $(SHARED_LIBS:lib%.so.xyzzy=$(DESTDIR)$(dynlibdir)/lib%.so) install-libexec: $(LIBEXEC_TARGETS:%=$(DESTDIR)$(libexecdir)/%) install-bin: $(BIN_TARGETS:%=$(DESTDIR)$(bindir)/%) install-sbin: $(SBIN_TARGETS:%=$(DESTDIR)$(sbindir)/%) -install-lib: $(STATIC_LIBS:lib%.a=$(DESTDIR)$(libdir)/lib%.a) +install-lib: $(STATIC_LIBS:lib%.a.xyzzy=$(DESTDIR)$(libdir)/lib%.a) install-include: $(ALL_INCLUDES:src/include/$(package)/%.h=$(DESTDIR)$(includedir)/$(package)/%.h) +install-data: $(ALL_DATA:src/etc/%=$(DESTDIR)$(datadir)/%) ifneq ($(exthome),) update: exec $(INSTALL) -l $(notdir $(home)) $(DESTDIR)$(exthome) -global-links: $(DESTDIR)$(exthome) $(SHARED_LIBS:lib%.so=$(DESTDIR)$(sproot)/library.so/lib%.so) $(BIN_TARGETS:%=$(DESTDIR)$(sproot)/command/%) $(SBIN_TARGETS:%=$(DESTDIR)$(sproot)/command/%) +global-links: $(DESTDIR)$(exthome) $(SHARED_LIBS:lib%.so.xyzzy=$(DESTDIR)$(sproot)/library.so/lib%.so) $(BIN_TARGETS:%=$(DESTDIR)$(sproot)/command/%) $(SBIN_TARGETS:%=$(DESTDIR)$(sproot)/command/%) $(DESTDIR)$(sproot)/command/%: $(DESTDIR)$(home)/command/% exec $(INSTALL) -D -l ..$(subst $(sproot),,$(exthome))/command/$(<F) $@ @@ -91,12 +92,15 @@ $(DESTDIR)$(sproot)/library.so/lib%.so: $(DESTDIR)$(dynlibdir)/lib%.so endif -$(DESTDIR)$(dynlibdir)/lib%.so: lib%.so +$(DESTDIR)$(datadir)/%: src/etc/% + exec $(INSTALL) -D -m 644 $< $@ + +$(DESTDIR)$(dynlibdir)/lib%.so: lib%.so.xyzzy $(INSTALL) -D -m 755 $< $@.$(version) && \ - $(INSTALL) -l $<.$(version) $@.$(version_m) && \ - $(INSTALL) -l $<.$(version_m) $@.$(version_M) && \ - $(INSTALL) -l $<.$(version_M) $@.$(version_l) && \ - exec $(INSTALL) -l $<.$(version_l) $@ + $(INSTALL) -l $(@F).$(version) $@.$(version_m) && \ + $(INSTALL) -l $(@F).$(version_m) $@.$(version_M) && \ + $(INSTALL) -l $(@F).$(version_M) $@.$(version_l) && \ + exec $(INSTALL) -l $(@F).$(version_l) $@ $(DESTDIR)$(libexecdir)/% $(DESTDIR)$(bindir)/% $(DESTDIR)$(sbindir)/%: % package/modes exec $(INSTALL) -D -m 600 $< $@ @@ -104,7 +108,7 @@ $(DESTDIR)$(libexecdir)/% $(DESTDIR)$(bindir)/% $(DESTDIR)$(sbindir)/%: % packag if [ x$$owner != x ] ; then chown -- $$owner $@ ; fi && \ chmod $$mode $@ ; } -$(DESTDIR)$(libdir)/lib%.a: lib%.a +$(DESTDIR)$(libdir)/lib%.a: lib%.a.xyzzy exec $(INSTALL) -D -m 644 $< $@ $(DESTDIR)$(includedir)/$(package)/%.h: src/include/$(package)/%.h @@ -119,13 +123,13 @@ $(DESTDIR)$(includedir)/$(package)/%.h: src/include/$(package)/%.h $(ALL_BINS): exec $(REALCC) -o $@ $(CFLAGS_ALL) $(LDFLAGS_ALL) $(LDFLAGS_NOSHARED) $^ $(EXTRA_LIBS) $(LDLIBS_ALL) -lib%.a: +lib%.a.xyzzy: exec $(AR) rc $@ $^ exec $(RANLIB) $@ -lib%.so: - exec $(REALCC) -o $@ $(CFLAGS_ALL) $(CFLAGS_SHARED) $(LDFLAGS_ALL) $(LDFLAGS_SHARED) -Wl,-soname,$@.$(version_l) $^ +lib%.so.xyzzy: + exec $(REALCC) -o $@ $(CFLAGS_ALL) $(CFLAGS_SHARED) $(LDFLAGS_ALL) $(LDFLAGS_SHARED) -Wl,-soname,$(patsubst lib%.so.xyzzy,lib%.so.$(version_l),$@) $^ -.PHONY: it all clean distclean tgz strip install install-dynlib install-bin install-sbin install-lib install-include +.PHONY: it all clean distclean tgz strip install install-dynlib install-bin install-sbin install-lib install-include install-data .DELETE_ON_ERROR: diff --git a/configure b/configure index 6869d89..89bdd38 100755 --- a/configure +++ b/configure @@ -358,13 +358,14 @@ LDFLAGS_NOSHARED := $LDFLAGS_NOSHARED CROSS_COMPILE := $cross vpath lib%.a$vpaths +vpath lib%.so$vpathd EOF if $allstatic ; then echo ".LIBPATTERNS := lib%.a" echo "DO_ALLSTATIC := 1" - vpathd= +else + echo ".LIBPATTERNS := lib%.so" fi - echo "vpath lib%.so$vpathd" if $static ; then echo "DO_STATIC := 1" else diff --git a/doc/index.html b/doc/index.html index 64fcfa7..921ff49 100644 --- a/doc/index.html +++ b/doc/index.html @@ -52,7 +52,7 @@ shell's syntax, and has no security issues. <li> GNU make, version 4.0 or later. Please be aware that execline will not build with an earlier version. </li> <li> <a href="http://skarnet.org/software/skalibs/">skalibs</a> version -2.3.6.0 or later. It's a build-time requirement. It's also a run-time +2.3.6.1 or later. It's a build-time requirement. It's also a run-time requirement if you link against the shared version of the skalibs library. </li> </ul> @@ -67,7 +67,7 @@ library. </li> <h3> Download </h3> <ul> - <li> The current released version of execline is <a href="execline-2.1.3.0.tar.gz">2.1.3.0</a>. </li> + <li> The current released version of execline is <a href="execline-2.1.3.1.tar.gz">2.1.3.1</a>. </li> <li> Alternatively, you can checkout a copy of the execline git repository: <pre> git clone git://git.skarnet.org/execline </pre> </li> </ul> diff --git a/doc/upgrade.html b/doc/upgrade.html index 6a5f082..51d64d3 100644 --- a/doc/upgrade.html +++ b/doc/upgrade.html @@ -18,6 +18,12 @@ <h1> What has changed in execline </h1> +<h2> in 2.1.3.1 </h2> + +<ul> + <li> skalibs dependency bumped to 2.3.6.1 </li> +</ul> + <h2> in 2.1.3.0 </h2> <ul> diff --git a/package/deps.mak b/package/deps.mak index fd4477b..6e99f10 100644 --- a/package/deps.mak +++ b/package/deps.mak @@ -54,7 +54,7 @@ src/libexecline/el_parse_from_string.o src/libexecline/el_parse_from_string.lo: src/libexecline/el_popenv.o src/libexecline/el_popenv.lo: src/libexecline/el_popenv.c src/include/execline/execline.h src/libexecline/el_pushenv.o src/libexecline/el_pushenv.lo: src/libexecline/el_pushenv.c src/include/execline/execline.h src/libexecline/el_semicolon.o src/libexecline/el_semicolon.lo: src/libexecline/el_semicolon.c src/include/execline/execline.h -src/libexecline/el_spawn0.o src/libexecline/el_spawn0.lo: src/libexecline/el_spawn0.c src/include/execline/execline.h +src/libexecline/el_spawn0.o src/libexecline/el_spawn0.lo: src/libexecline/el_spawn0.c src/include/execline/config.h src/include/execline/execline.h src/libexecline/el_spawn1.o src/libexecline/el_spawn1.lo: src/libexecline/el_spawn1.c src/include/execline/execline.h src/libexecline/el_substandrun.o src/libexecline/el_substandrun.lo: src/libexecline/el_substandrun.c src/include-local/exlsn.h src/libexecline/el_substandrun_str.o src/libexecline/el_substandrun_str.lo: src/libexecline/el_substandrun_str.c src/include/execline/execline.h src/include-local/exlsn.h @@ -158,5 +158,5 @@ unexport: private EXTRA_LIBS := unexport: src/execline/unexport.o -lskarnet wait: private EXTRA_LIBS := wait: src/execline/wait.o ${LIBEXECLINE} -lskarnet -libexecline.a: src/libexecline/el_execsequence.o src/libexecline/el_getstrict.o src/libexecline/el_parse.o src/libexecline/el_parse_from_buffer.o src/libexecline/el_parse_from_string.o src/libexecline/el_popenv.o src/libexecline/el_pushenv.o src/libexecline/el_semicolon.o src/libexecline/el_spawn0.o src/libexecline/el_spawn1.o src/libexecline/el_substandrun.o src/libexecline/el_substandrun_str.o src/libexecline/el_substitute.o src/libexecline/el_transform.o src/libexecline/el_vardupl.o src/libexecline/exlsn_define.o src/libexecline/exlsn_elglob.o src/libexecline/exlsn_import.o src/libexecline/exlsn_multidefine.o src/libexecline/exlsn_exlp.o src/libexecline/exlsn_main.o src/libexecline/exlsn_free.o src/libexecline/exlp.o -libexecline.so: src/libexecline/el_execsequence.lo src/libexecline/el_getstrict.lo src/libexecline/el_parse.lo src/libexecline/el_parse_from_buffer.lo src/libexecline/el_parse_from_string.lo src/libexecline/el_popenv.lo src/libexecline/el_pushenv.lo src/libexecline/el_semicolon.lo src/libexecline/el_spawn0.lo src/libexecline/el_spawn1.lo src/libexecline/el_substandrun.lo src/libexecline/el_substandrun_str.lo src/libexecline/el_substitute.lo src/libexecline/el_transform.lo src/libexecline/el_vardupl.lo src/libexecline/exlsn_define.lo src/libexecline/exlsn_elglob.lo src/libexecline/exlsn_import.lo src/libexecline/exlsn_multidefine.lo src/libexecline/exlsn_exlp.lo src/libexecline/exlsn_main.lo src/libexecline/exlsn_free.lo src/libexecline/exlp.lo +libexecline.a.xyzzy: src/libexecline/el_execsequence.o src/libexecline/el_getstrict.o src/libexecline/el_parse.o src/libexecline/el_parse_from_buffer.o src/libexecline/el_parse_from_string.o src/libexecline/el_popenv.o src/libexecline/el_pushenv.o src/libexecline/el_semicolon.o src/libexecline/el_spawn0.o src/libexecline/el_spawn1.o src/libexecline/el_substandrun.o src/libexecline/el_substandrun_str.o src/libexecline/el_substitute.o src/libexecline/el_transform.o src/libexecline/el_vardupl.o src/libexecline/exlsn_define.o src/libexecline/exlsn_elglob.o src/libexecline/exlsn_import.o src/libexecline/exlsn_multidefine.o src/libexecline/exlsn_exlp.o src/libexecline/exlsn_main.o src/libexecline/exlsn_free.o src/libexecline/exlp.o +libexecline.so.xyzzy: src/libexecline/el_execsequence.lo src/libexecline/el_getstrict.lo src/libexecline/el_parse.lo src/libexecline/el_parse_from_buffer.lo src/libexecline/el_parse_from_string.lo src/libexecline/el_popenv.lo src/libexecline/el_pushenv.lo src/libexecline/el_semicolon.lo src/libexecline/el_spawn0.lo src/libexecline/el_spawn1.lo src/libexecline/el_substandrun.lo src/libexecline/el_substandrun_str.lo src/libexecline/el_substitute.lo src/libexecline/el_transform.lo src/libexecline/el_vardupl.lo src/libexecline/exlsn_define.lo src/libexecline/exlsn_elglob.lo src/libexecline/exlsn_import.lo src/libexecline/exlsn_multidefine.lo src/libexecline/exlsn_exlp.lo src/libexecline/exlsn_main.lo src/libexecline/exlsn_free.lo src/libexecline/exlp.lo diff --git a/package/info b/package/info index b40d80f..34656b7 100644 --- a/package/info +++ b/package/info @@ -1,4 +1,4 @@ package=execline -version=2.1.3.0 +version=2.1.3.1 category=admin package_macro_name=EXECLINE diff --git a/package/targets.mak b/package/targets.mak index 4ffca0f..e2b36cf 100644 --- a/package/targets.mak +++ b/package/targets.mak @@ -48,15 +48,15 @@ SBIN_TARGETS := LIBEXEC_TARGETS := ifdef DO_ALLSTATIC -LIBEXECLINE := libexecline.a +LIBEXECLINE := libexecline.a.xyzzy else -LIBEXECLINE := libexecline.so +LIBEXECLINE := libexecline.so.xyzzy endif ifdef DO_SHARED -SHARED_LIBS := libexecline.so +SHARED_LIBS := libexecline.so.xyzzy endif ifdef DO_STATIC -STATIC_LIBS := libexecline.a +STATIC_LIBS := libexecline.a.xyzzy endif diff --git a/tools/gen-deps.sh b/tools/gen-deps.sh index 2f7c57d..1ca66ea 100755 --- a/tools/gen-deps.sh +++ b/tools/gen-deps.sh @@ -60,8 +60,8 @@ for dir in $(ls -1 src | grep -v ^include) ; do while read dep ; do deps="$deps src/$dir/$dep" done < src/$dir/deps-lib/$file - echo "lib$file.a: $deps" - echo "lib${file}.so: $(echo "$deps" | sed 's/\.o/.lo/g')" + echo "lib$file.a.xyzzy: $deps" + echo "lib${file}.so.xyzzy: $(echo "$deps" | sed 's/\.o/.lo/g')" done for file in $(ls -1 src/$dir/deps-exe) ; do |