diff --git a/ANNOUNCE b/ANNOUNCE index 0d83a5a49..6f029b896 100644 --- a/ANNOUNCE +++ b/ANNOUNCE @@ -1,5 +1,5 @@ -Libpng 1.5.5beta07 - August 29, 2011 +Libpng 1.5.5beta07 - September 1, 2011 This is not intended to be a public release. It will be replaced within a few weeks by a public version or by another test version. @@ -79,8 +79,9 @@ Version 1.5.5beta06 [August 26, 2011] than correctness.) The code still has considerable inaccuracies in the 8-bit case because 8-bit linear arithmetic is used. -Version 1.5.5beta07 [August 29, 2011] +Version 1.5.5beta07 [September 1, 2011] Added "$(ARCH)" option to makefile.darwin + Added SunOS support to configure.ac and Makefile.am Send comments/corrections/commendations to png-mng-implement at lists.sf.net: (subscription required; visit diff --git a/CHANGES b/CHANGES index 75ac659d4..6d27fb4f0 100644 --- a/CHANGES +++ b/CHANGES @@ -3562,8 +3562,9 @@ Version 1.5.5beta06 [August 26, 2011] than correctness.) The code still has considerable inaccuracies in the 8-bit case because 8-bit linear arithmetic is used. -Version 1.5.5beta07 [August 29, 2011] +Version 1.5.5beta07 [September 1, 2011] Added "$(ARCH)" option to makefile.darwin + Added SunOS support to configure.ac and Makefile.am Send comments/corrections/commendations to png-mng-implement at lists.sf.net (subscription required; visit diff --git a/Makefile.am b/Makefile.am index b4e0ff92c..69fa5d9f7 100644 --- a/Makefile.am +++ b/Makefile.am @@ -44,11 +44,16 @@ libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@_la_LDFLAGS = -no-undefined -export-dynamic \ -version-number @PNGLIB_MAJOR@@PNGLIB_MINOR@:@PNGLIB_RELEASE@:0 if HAVE_LD_VERSION_SCRIPT - # Versioned symbols and restricted exports +# Versioned symbols and restricted exports +if HAVE_SOLARIS_LD + libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@_la_LDFLAGS += -Wl,-M -Ll,libpng.vers +else libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@_la_LDFLAGS += -Wl,--version-script=libpng.vers +endif + libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@_la_DEPENDENCIES = libpng.vers else - # Only restricted exports when possible +# Only restricted exports when possible libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@_la_LDFLAGS += -export-symbols libpng.sym libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@_la_DEPENDENCIES = libpng.sym endif @@ -120,8 +125,8 @@ $(srcdir)/scripts/pnglibconf.h.prebuilt: pngvalid.o pngtest.o: pnglibconf.h # We must use -DPNG_NO_USE_READ_MACROS here even when the library may actually -# be built with PNG_USE_READ_MACROS; this stops the read macros interfering -# with the symbol file format. +# be built with PNG_USE_READ_MACROS; this prevents the read macros from +# interfering with the symbol file format. SYMBOL_CFLAGS = -DPNGLIB_LIBNAME='PNG@PNGLIB_MAJOR@@PNGLIB_MINOR@_0'\ -DPNGLIB_VERSION='@PNGLIB_VERSION@'\ -DSYMBOL_PREFIX='$(SYMBOL_PREFIX)'\ diff --git a/Makefile.in b/Makefile.in index 667d2b189..ce1f82fed 100644 --- a/Makefile.in +++ b/Makefile.in @@ -41,8 +41,12 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ check_PROGRAMS = pngtest$(EXEEXT) pngvalid$(EXEEXT) -@HAVE_LD_VERSION_SCRIPT_TRUE@am__append_1 = -Wl,--version-script=libpng.vers -@HAVE_LD_VERSION_SCRIPT_FALSE@am__append_2 = -export-symbols libpng.sym + +# Versioned symbols and restricted exports +@HAVE_LD_VERSION_SCRIPT_TRUE@@HAVE_SOLARIS_LD_TRUE@am__append_1 = -Wl,-M -Ll,libpng.vers +@HAVE_LD_VERSION_SCRIPT_TRUE@@HAVE_SOLARIS_LD_FALSE@am__append_2 = -Wl,--version-script=libpng.vers +# Only restricted exports when possible +@HAVE_LD_VERSION_SCRIPT_FALSE@am__append_3 = -export-symbols libpng.sym subdir = . DIST_COMMON = README $(am__configure_deps) $(dist_man_MANS) \ $(pkginclude_HEADERS) $(srcdir)/Makefile.am \ @@ -330,7 +334,7 @@ libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@_la_CPPFLAGS = @LIBPNG_DEFINES@ libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@_la_LDFLAGS = -no-undefined \ -export-dynamic -version-number \ @PNGLIB_MAJOR@@PNGLIB_MINOR@:@PNGLIB_RELEASE@:0 \ - $(am__append_1) $(am__append_2) + $(am__append_1) $(am__append_2) $(am__append_3) @HAVE_LD_VERSION_SCRIPT_FALSE@libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@_la_DEPENDENCIES = libpng.sym @HAVE_LD_VERSION_SCRIPT_TRUE@libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@_la_DEPENDENCIES = libpng.vers pkginclude_HEADERS = png.h pngconf.h @@ -357,8 +361,8 @@ config.sub configure depcomp install-sh ltmain.sh missing SUFFIXES = .chk .dfn .out # We must use -DPNG_NO_USE_READ_MACROS here even when the library may actually -# be built with PNG_USE_READ_MACROS; this stops the read macros interfering -# with the symbol file format. +# be built with PNG_USE_READ_MACROS; this prevents the read macros from +# interfering with the symbol file format. SYMBOL_CFLAGS = -DPNGLIB_LIBNAME='PNG@PNGLIB_MAJOR@@PNGLIB_MINOR@_0'\ -DPNGLIB_VERSION='@PNGLIB_VERSION@'\ -DSYMBOL_PREFIX='$(SYMBOL_PREFIX)'\ @@ -413,7 +417,7 @@ config.h: stamp-h1 stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status @rm -f stamp-h1 cd $(top_builddir) && $(SHELL) ./config.status config.h -$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) +$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) ($(am__cd) $(top_srcdir) && $(AUTOHEADER)) rm -f stamp-h1 touch $@ @@ -455,7 +459,7 @@ clean-libLTLIBRARIES: echo "rm -f \"$${dir}/so_locations\""; \ rm -f "$${dir}/so_locations"; \ done -libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@.la: $(libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@_la_OBJECTS) $(libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@_la_DEPENDENCIES) +libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@.la: $(libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@_la_OBJECTS) $(libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@_la_DEPENDENCIES) $(libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@_la_LINK) -rpath $(libdir) $(libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@_la_OBJECTS) $(libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@_la_LIBADD) $(LIBS) clean-checkPROGRAMS: @@ -466,10 +470,10 @@ clean-checkPROGRAMS: list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ echo " rm -f" $$list; \ rm -f $$list -pngtest$(EXEEXT): $(pngtest_OBJECTS) $(pngtest_DEPENDENCIES) +pngtest$(EXEEXT): $(pngtest_OBJECTS) $(pngtest_DEPENDENCIES) @rm -f pngtest$(EXEEXT) $(LINK) $(pngtest_OBJECTS) $(pngtest_LDADD) $(LIBS) -pngvalid$(EXEEXT): $(pngvalid_OBJECTS) $(pngvalid_DEPENDENCIES) +pngvalid$(EXEEXT): $(pngvalid_OBJECTS) $(pngvalid_DEPENDENCIES) @rm -f pngvalid$(EXEEXT) $(LINK) $(pngvalid_OBJECTS) $(pngvalid_LDADD) $(LIBS) install-binSCRIPTS: $(bin_SCRIPTS) @@ -1255,9 +1259,6 @@ uninstall-man: uninstall-man3 uninstall-man5 uninstall-pkgconfigDATA uninstall-pkgincludeHEADERS -@HAVE_LD_VERSION_SCRIPT_TRUE@ # Versioned symbols and restricted exports -@HAVE_LD_VERSION_SCRIPT_FALSE@ # Only restricted exports when possible - $(PNGLIB_BASENAME).pc: libpng.pc cp libpng.pc $@ diff --git a/configure b/configure index 71e52332d..6755b2519 100755 --- a/configure +++ b/configure @@ -624,6 +624,8 @@ PNGLIB_VERSION SYMBOL_PREFIX HAVE_LD_VERSION_SCRIPT_FALSE HAVE_LD_VERSION_SCRIPT_TRUE +HAVE_SOLARIS_LD_FALSE +HAVE_SOLARIS_LD_TRUE LIBPNG_DEFINES LIBOBJS POW_LIB @@ -763,8 +765,7 @@ CFLAGS LDFLAGS LIBS CPPFLAGS -CPP -CPPFLAGS' +CPP' # Initialize some variables set by options. @@ -12418,7 +12419,37 @@ case $host in $as_echo "no" >&6; } ;; * ) -GLD=`$LD --help < /dev/null 2>/dev/null | grep version-script` + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if using Solaris linker" >&5 +$as_echo_n "checking if using Solaris linker... " >&6; } +SLD=`$LD --version 2>&1 | grep Solaris` +if test "$SLD"; then + have_solaris_ld=yes + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +else + have_solaris_ld=no + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + if test "$have_solaris_ld" = "yes"; then + HAVE_SOLARIS_LD_TRUE= + HAVE_SOLARIS_LD_FALSE='#' +else + HAVE_SOLARIS_LD_TRUE='#' + HAVE_SOLARIS_LD_FALSE= +fi + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libraries can be versioned" >&5 +$as_echo_n "checking if libraries can be versioned... " >&6; } +if test "$have_solaris_ld" = "yes"; then + GLD=`$LD --help < /dev/null 2>&1 | grep 'M mapfile'` +else + GLD=`$LD --help < /dev/null 2>/dev/null | grep version-script` +fi + + if test "$GLD"; then if test "$GLD"; then have_ld_version_script=yes { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 @@ -12627,6 +12658,10 @@ if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then as_fn_error $? "conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${HAVE_SOLARIS_LD_TRUE}" && test -z "${HAVE_SOLARIS_LD_FALSE}"; then + as_fn_error $? "conditional \"HAVE_SOLARIS_LD\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${HAVE_LD_VERSION_SCRIPT_TRUE}" && test -z "${HAVE_LD_VERSION_SCRIPT_FALSE}"; then as_fn_error $? "conditional \"HAVE_LD_VERSION_SCRIPT\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 diff --git a/configure.ac b/configure.ac index dce503307..0d0b72405 100644 --- a/configure.ac +++ b/configure.ac @@ -104,7 +104,26 @@ case $host in AC_MSG_RESULT(no) ;; * ) -GLD=`$LD --help < /dev/null 2>/dev/null | grep version-script` + +AC_MSG_CHECKING([if using Solaris linker]) +SLD=`$LD --version 2>&1 | grep Solaris` +if test "$SLD"; then + have_solaris_ld=yes + AC_MSG_RESULT(yes) +else + have_solaris_ld=no + AC_MSG_RESULT(no) +fi +AM_CONDITIONAL(HAVE_SOLARIS_LD, test "$have_solaris_ld" = "yes") + + AC_MSG_CHECKING([if libraries can be versioned]) +if test "$have_solaris_ld" = "yes"; then + GLD=`$LD --help < /dev/null 2>&1 | grep 'M mapfile'` +else + GLD=`$LD --help < /dev/null 2>/dev/null | grep version-script` +fi + + if test "$GLD"; then if test "$GLD"; then have_ld_version_script=yes AC_MSG_RESULT(yes)