X-Git-Url: http://git.ipfire.org/?p=thirdparty%2Fcups.git;a=blobdiff_plain;f=config-scripts%2Fcups-sharedlibs.m4;h=41897d62e82037fb5ab67f7874b82471f6e769d1;hp=05dc479b744953d8eb58ccd9fe1a89169a8b4002;hb=50fe720154d2af59cdeeaecf05cc868530e16248;hpb=a74454a757c35671e1cbf71870231a3d51945858 diff --git a/config-scripts/cups-sharedlibs.m4 b/config-scripts/cups-sharedlibs.m4 index 05dc479b7..41897d62e 100644 --- a/config-scripts/cups-sharedlibs.m4 +++ b/config-scripts/cups-sharedlibs.m4 @@ -1,25 +1,16 @@ dnl -dnl "$Id: cups-sharedlibs.m4 5466 2006-04-26 19:52:27Z mike $" +dnl "$Id: cups-sharedlibs.m4 6649 2007-07-11 21:46:42Z mike $" dnl dnl Shared library support for the Common UNIX Printing System (CUPS). dnl +dnl Copyright 2007-2008 by Apple Inc. dnl Copyright 1997-2005 by Easy Software Products, all rights reserved. dnl dnl These coded instructions, statements, and computer programs are the -dnl property of Easy Software Products and are protected by Federal -dnl copyright law. Distribution and use rights are outlined in the file -dnl "LICENSE.txt" which should have been included with this file. If this -dnl file is missing or damaged please contact Easy Software Products -dnl at: -dnl -dnl Attn: CUPS Licensing Information -dnl Easy Software Products -dnl 44141 Airport View Drive, Suite 204 -dnl Hollywood, Maryland 20636 USA -dnl -dnl Voice: (301) 373-9600 -dnl EMail: cups-info@cups.org -dnl WWW: http://www.cups.org +dnl property of Apple Inc. and are protected by Federal copyright +dnl law. Distribution and use rights are outlined in the file "LICENSE.txt" +dnl which should have been included with this file. If this file is +dnl file is missing or damaged, see the license at "http://www.cups.org/". dnl PICFLAG=1 @@ -31,60 +22,127 @@ if test x$enable_shared != xno; then case "$uname" in SunOS* | UNIX_S*) LIBCUPS="libcups.so.2" + LIBCUPSCGI="libcupscgi.so.1" + LIBCUPSDRIVER="libcupsdriver.so.1" LIBCUPSIMAGE="libcupsimage.so.2" + LIBCUPSMIME="libcupsmime.so.1" + LIBCUPSPPDC="libcupsppdc.so.1" DSO="\$(CC)" - DSOFLAGS="$DSOFLAGS -Wl,-h,\$@ -G \$(OPTIM)" + DSOXX="\$(CXX)" + DSOFLAGS="$DSOFLAGS -Wl,-h,\`basename \$@\` -G \$(OPTIM)" ;; HP-UX*) - LIBCUPS="libcups.sl.2" - LIBCUPSIMAGE="libcupsimage.sl.2" - DSO="\$(LD)" - DSOFLAGS="$DSOFLAGS -b -z +h \$@" + case "$uarch" in + ia64) + LIBCUPS="libcups.so.2" + LIBCUPSCGI="libcupscgi.so.1" + LIBCUPSDRIVER="libcupsdriver.so.1" + LIBCUPSIMAGE="libcupsimage.so.2" + LIBCUPSMIME="libcupsmime.so.1" + LIBCUPSPPDC="libcupsppdc.so.1" + DSO="\$(CC)" + DSOXX="\$(CXX)" + DSOFLAGS="$DSOFLAGS -Wl,-b,-z,+h,\`basename \$@\`" + ;; + *) + LIBCUPS="libcups.sl.2" + LIBCUPSCGI="libcupscgi.sl.1" + LIBCUPSDRIVER="libcupsdriver.sl.1" + LIBCUPSIMAGE="libcupsimage.sl.2" + LIBCUPSMIME="libcupsmime.sl.1" + LIBCUPSPPDC="libcupsppdc.sl.1" + DSO="\$(LD)" + DSOXX="\$(LD)" + DSOFLAGS="$DSOFLAGS -b -z +h \`basename \$@\`" + ;; + esac ;; IRIX) LIBCUPS="libcups.so.2" + LIBCUPSCGI="libcupscgi.so.1" + LIBCUPSDRIVER="libcupsdriver.so.1" LIBCUPSIMAGE="libcupsimage.so.2" + LIBCUPSMIME="libcupsmime.so.1" + LIBCUPSPPDC="libcupsppdc.so.1" DSO="\$(CC)" - DSOFLAGS="$DSOFLAGS -Wl,-rpath,\$(libdir),-set_version,sgi2.6,-soname,\$@ -shared \$(OPTIM)" + DSOXX="\$(CXX)" + DSOFLAGS="$DSOFLAGS -set_version,sgi2.6,-soname,\`basename \$@\` -shared \$(OPTIM)" ;; OSF1* | Linux | GNU | *BSD*) LIBCUPS="libcups.so.2" + LIBCUPSCGI="libcupscgi.so.1" + LIBCUPSDRIVER="libcupsdriver.so.1" LIBCUPSIMAGE="libcupsimage.so.2" + LIBCUPSMIME="libcupsmime.so.1" + LIBCUPSPPDC="libcupsppdc.so.1" DSO="\$(CC)" - DSOFLAGS="$DSOFLAGS -Wl,-soname,\$@ -shared \$(OPTIM)" + DSOXX="\$(CXX)" + DSOFLAGS="$DSOFLAGS -Wl,-soname,\`basename \$@\` -shared \$(OPTIM)" ;; Darwin*) LIBCUPS="libcups.2.dylib" + LIBCUPSCGI="libcupscgi.1.dylib" + LIBCUPSDRIVER="libcupsdriver.1.dylib" LIBCUPSIMAGE="libcupsimage.2.dylib" + LIBCUPSMIME="libcupsmime.1.dylib" + LIBCUPSPPDC="libcupsppdc.1.dylib" DSO="\$(CC)" - DSOFLAGS="$DSOFLAGS \$(RC_CFLAGS) -dynamiclib -single_module -lc" + DSOXX="\$(CXX)" + DSOFLAGS="$DSOFLAGS -dynamiclib -single_module -lc" ;; AIX*) LIBCUPS="libcups_s.a" + LIBCUPSCGI="libcupscgi_s.a" + LIBCUPSDRIVER="libcupsdriver_s.a" LIBCUPSIMAGE="libcupsimage_s.a" + LIBCUPSMIME="libcupsmime_s.a" + LIBCUPSPPDC="libcupsppdc_s.a" DSO="\$(CC)" + DSOXX="\$(CXX)" DSOFLAGS="$DSOFLAGS -Wl,-bexpall,-bM:SRE,-bnoentry,-blibpath:\$(libdir)" ;; *) echo "Warning: shared libraries may not be supported. Trying -shared" echo " option with compiler." LIBCUPS="libcups.so.2" + LIBCUPSCGI="libcupscgi.so.1" + LIBCUPSDRIVER="libcupsdriver.so.1" LIBCUPSIMAGE="libcupsimage.so.2" + LIBCUPSMIME="libcupsmime.so.1" + LIBCUPSPPDC="libcupsppdc.so.1" DSO="\$(CC)" - DSOFLAGS="$DSOFLAGS -Wl,-soname,\$@ -shared \$(OPTIM)" + DSOXX="\$(CXX)" + DSOFLAGS="$DSOFLAGS -Wl,-soname,\`basename \$@\` -shared \$(OPTIM)" ;; esac else PICFLAG=0 LIBCUPS="libcups.a" + LIBCUPSCGI="libcupscgi.a" + LIBCUPSDRIVER="libcupsdriver.a" LIBCUPSIMAGE="libcupsimage.a" + LIBCUPSMIME="libcupsmime.a" + LIBCUPSPPDC="libcupsppdc.a" DSO=":" + DSOXX=":" fi +# 32-bit and 64-bit libraries need variations of the standard +# DSOFLAGS... +DSO32FLAGS="$DSOFLAGS" +DSO64FLAGS="$DSOFLAGS" + AC_SUBST(DSO) +AC_SUBST(DSOXX) AC_SUBST(DSOFLAGS) +AC_SUBST(DSO32FLAGS) +AC_SUBST(DSO64FLAGS) AC_SUBST(LIBCUPS) +AC_SUBST(LIBCUPSCGI) +AC_SUBST(LIBCUPSDRIVER) AC_SUBST(LIBCUPSIMAGE) +AC_SUBST(LIBCUPSMIME) +AC_SUBST(LIBCUPSPPDC) if test x$enable_shared = xno; then LINKCUPS="../cups/libcups.a" @@ -110,41 +168,64 @@ if test "$DSO" != ":"; then # rather than to the executables. This makes things smaller if you # are using any static libraries, and it also allows us to distribute # a single DSO rather than a bunch... - DSOLIBS="\$(LIBPNG) \$(LIBTIFF) \$(LIBJPEG) \$(LIBZ)" + DSOLIBS="\$(LIBTIFF) \$(LIBPNG) \$(LIBJPEG) \$(LIBZ)" IMGLIBS="" - # The *BSD, HP-UX, and Solaris run-time linkers need help when - # deciding where to find a DSO. Add linker options to tell them - # where to find the DSO (usually in /usr/lib... duh!) + # Tell the run-time linkers where to find a DSO. Some platforms + # need this option, even when the library is installed in a + # standard location... case $uname in HP-UX*) - # HP-UX - DSOFLAGS="+s +b $libdir $DSOFLAGS" + # HP-UX needs the path, even for /usr/lib... + case "$uarch" in + ia64) + DSOFLAGS="-Wl,+s,+b,$libdir $DSOFLAGS" + DSO32FLAGS="-Wl,+s,+b,$LIB32DIR $DSO32FLAGS" + DSO64FLAGS="-Wl,+s,+b,$LIB64DIR $DSO64FLAGS" + ;; + *) + DSOFLAGS="+s +b $libdir $DSOFLAGS" + DSO32FLAGS="+s +b $LIB32DIR $DSO32FLAGS" + DSO64FLAGS="+s +b $LIB64DIR $DSO64FLAGS" + ;; + esac LDFLAGS="$LDFLAGS -Wl,+s,+b,$libdir" EXPORT_LDFLAGS="-Wl,+s,+b,$libdir" - ;; + ;; SunOS*) - # Solaris - DSOFLAGS="-R$libdir $DSOFLAGS" - LDFLAGS="$LDFLAGS -R$libdir" - EXPORT_LDFLAGS="-R$libdir" - ;; + # Solaris... + if test $exec_prefix != /usr; then + DSOFLAGS="-R$libdir $DSOFLAGS" + DSO32FLAGS="-R$LIB32DIR $DSO32FLAGS" + DSO64FLAGS="-R$LIB64DIR $DSO64FLAGS" + LDFLAGS="$LDFLAGS -R$libdir" + EXPORT_LDFLAGS="-R$libdir" + fi + ;; *BSD*) - # *BSD - DSOFLAGS="-Wl,-R$libdir $DSOFLAGS" - LDFLAGS="$LDFLAGS -Wl,-R$libdir" - EXPORT_LDFLAGS="-Wl,-R$libdir" - ;; - Linux | GNU) - # Linux and HURD - DSOFLAGS="-Wl,-rpath,$libdir $DSOFLAGS" - LDFLAGS="$LDFLAGS -Wl,-rpath,$libdir" - EXPORT_LDFLAGS="-Wl,-rpath,$libdir" - ;; + # *BSD... + if test $exec_prefix != /usr; then + DSOFLAGS="-Wl,-R$libdir $DSOFLAGS" + DSO32FLAGS="-Wl,-R$LIB32DIR $DSO32FLAGS" + DSO64FLAGS="-Wl,-R$LIB64DIR $DSO64FLAGS" + LDFLAGS="$LDFLAGS -Wl,-R$libdir" + EXPORT_LDFLAGS="-Wl,-R$libdir" + fi + ;; + IRIX | Linux | GNU) + # IRIX, Linux, and HURD... + if test $exec_prefix != /usr; then + DSOFLAGS="-Wl,-rpath,$libdir $DSOFLAGS" + DSO32FLAGS="-Wl,-rpath,$LIB32DIR $DSO32FLAGS" + DSO64FLAGS="-Wl,-rpath,$LIB64DIR $DSO64FLAGS" + LDFLAGS="$LDFLAGS -Wl,-rpath,$libdir" + EXPORT_LDFLAGS="-Wl,-rpath,$libdir" + fi + ;; esac else DSOLIBS="" - IMGLIBS="\$(LIBPNG) \$(LIBTIFF) \$(LIBJPEG) \$(LIBZ)" + IMGLIBS="\$(LIBTIFF) \$(LIBPNG) \$(LIBJPEG) \$(LIBZ)" fi AC_SUBST(DSOLIBS) @@ -152,5 +233,5 @@ AC_SUBST(IMGLIBS) AC_SUBST(EXPORT_LDFLAGS) dnl -dnl End of "$Id: cups-sharedlibs.m4 5466 2006-04-26 19:52:27Z mike $". +dnl End of "$Id: cups-sharedlibs.m4 6649 2007-07-11 21:46:42Z mike $". dnl