]> git.ipfire.org Git - thirdparty/cups.git/blame - config-scripts/cups-sharedlibs.m4
Remove support for AIX, HP-UX, and OSF/1.
[thirdparty/cups.git] / config-scripts / cups-sharedlibs.m4
CommitLineData
ef416fc2 1dnl
5ec1fd3d 2dnl "$Id$"
ef416fc2 3dnl
5a1d7a17 4dnl Shared library support for CUPS.
ef416fc2 5dnl
5a1d7a17
MS
6dnl Copyright 2007-2013 by Apple Inc.
7dnl Copyright 1997-2005 by Easy Software Products, all rights reserved.
ef416fc2 8dnl
5a1d7a17
MS
9dnl These coded instructions, statements, and computer programs are the
10dnl property of Apple Inc. and are protected by Federal copyright
11dnl law. Distribution and use rights are outlined in the file "LICENSE.txt"
12dnl which should have been included with this file. If this file is
13dnl file is missing or damaged, see the license at "http://www.cups.org/".
ef416fc2 14dnl
15
16PICFLAG=1
17DSOFLAGS="${DSOFLAGS:=}"
18
bf3816c7 19AC_ARG_ENABLE(shared, [ --disable-shared do not create shared libraries])
ef416fc2 20
f8b3a85b
MS
21cupsbase="cups"
22LIBCUPSBASE="lib$cupsbase"
23LIBCUPSSTATIC="lib$cupsbase.a"
24
ef416fc2 25if test x$enable_shared != xno; then
26 case "$uname" in
dd1abb6b 27 SunOS*)
f8b3a85b 28 LIBCUPS="lib$cupsbase.so.2"
dd1abb6b 29 LIBCUPSCGI="libcupscgi.so.1"
dd1abb6b
MS
30 LIBCUPSIMAGE="libcupsimage.so.2"
31 LIBCUPSMIME="libcupsmime.so.1"
32 LIBCUPSPPDC="libcupsppdc.so.1"
33 DSO="\$(CC)"
34 DSOXX="\$(CXX)"
35 DSOFLAGS="$DSOFLAGS -Wl,-h\`basename \$@\` -G \$(OPTIM)"
36 ;;
5a1d7a17 37 Linux | GNU | *BSD*)
f8b3a85b 38 LIBCUPS="lib$cupsbase.so.2"
50fe7201 39 LIBCUPSCGI="libcupscgi.so.1"
ef416fc2 40 LIBCUPSIMAGE="libcupsimage.so.2"
50fe7201
MS
41 LIBCUPSMIME="libcupsmime.so.1"
42 LIBCUPSPPDC="libcupsppdc.so.1"
ef416fc2 43 DSO="\$(CC)"
50fe7201 44 DSOXX="\$(CXX)"
f301802f 45 DSOFLAGS="$DSOFLAGS -Wl,-soname,\`basename \$@\` -shared \$(OPTIM)"
ef416fc2 46 ;;
47 Darwin*)
f8b3a85b 48 LIBCUPS="lib$cupsbase.2.dylib"
50fe7201 49 LIBCUPSCGI="libcupscgi.1.dylib"
ef416fc2 50 LIBCUPSIMAGE="libcupsimage.2.dylib"
50fe7201
MS
51 LIBCUPSMIME="libcupsmime.1.dylib"
52 LIBCUPSPPDC="libcupsppdc.1.dylib"
ef416fc2 53 DSO="\$(CC)"
50fe7201 54 DSOXX="\$(CXX)"
f301802f 55 DSOFLAGS="$DSOFLAGS -dynamiclib -single_module -lc"
ef416fc2 56 ;;
ef416fc2 57 *)
58 echo "Warning: shared libraries may not be supported. Trying -shared"
59 echo " option with compiler."
f8b3a85b 60 LIBCUPS="lib$cupsbase.so.2"
50fe7201 61 LIBCUPSCGI="libcupscgi.so.1"
ef416fc2 62 LIBCUPSIMAGE="libcupsimage.so.2"
50fe7201
MS
63 LIBCUPSMIME="libcupsmime.so.1"
64 LIBCUPSPPDC="libcupsppdc.so.1"
ef416fc2 65 DSO="\$(CC)"
50fe7201 66 DSOXX="\$(CXX)"
f301802f 67 DSOFLAGS="$DSOFLAGS -Wl,-soname,\`basename \$@\` -shared \$(OPTIM)"
ef416fc2 68 ;;
69 esac
70else
71 PICFLAG=0
f8b3a85b 72 LIBCUPS="lib$cupsbase.a"
50fe7201 73 LIBCUPSCGI="libcupscgi.a"
ef416fc2 74 LIBCUPSIMAGE="libcupsimage.a"
50fe7201
MS
75 LIBCUPSMIME="libcupsmime.a"
76 LIBCUPSPPDC="libcupsppdc.a"
ef416fc2 77 DSO=":"
50fe7201 78 DSOXX=":"
ef416fc2 79fi
80
81AC_SUBST(DSO)
50fe7201 82AC_SUBST(DSOXX)
ef416fc2 83AC_SUBST(DSOFLAGS)
84AC_SUBST(LIBCUPS)
f8b3a85b 85AC_SUBST(LIBCUPSBASE)
50fe7201 86AC_SUBST(LIBCUPSCGI)
ef416fc2 87AC_SUBST(LIBCUPSIMAGE)
50fe7201
MS
88AC_SUBST(LIBCUPSMIME)
89AC_SUBST(LIBCUPSPPDC)
f8b3a85b 90AC_SUBST(LIBCUPSSTATIC)
ef416fc2 91
92if test x$enable_shared = xno; then
f8b3a85b 93 LINKCUPS="../cups/lib$cupsbase.a"
ef416fc2 94 LINKCUPSIMAGE="../filter/libcupsimage.a"
c7017ecc
MS
95
96 EXTLINKCUPS="-lcups"
c7017ecc 97 EXTLINKCUPSIMAGE="-lcupsimage"
ef416fc2 98else
5a1d7a17
MS
99 LINKCUPS="-l${cupsbase}"
100 LINKCUPSIMAGE="-lcupsimage"
c7017ecc 101
5a1d7a17
MS
102 EXTLINKCUPS="-lcups"
103 EXTLINKCUPSIMAGE="-lcupsimage"
ef416fc2 104fi
105
c7017ecc 106AC_SUBST(EXTLINKCUPS)
c7017ecc 107AC_SUBST(EXTLINKCUPSIMAGE)
ef416fc2 108AC_SUBST(LINKCUPS)
109AC_SUBST(LINKCUPSIMAGE)
110
111dnl Update libraries for DSOs...
112EXPORT_LDFLAGS=""
113
114if test "$DSO" != ":"; then
115 # When using DSOs the image libraries are linked to libcupsimage.so
116 # rather than to the executables. This makes things smaller if you
117 # are using any static libraries, and it also allows us to distribute
118 # a single DSO rather than a bunch...
a4845881 119 DSOLIBS="\$(LIBZ)"
ef416fc2 120 IMGLIBS=""
121
f301802f 122 # Tell the run-time linkers where to find a DSO. Some platforms
123 # need this option, even when the library is installed in a
124 # standard location...
ef416fc2 125 case $uname in
ef416fc2 126 SunOS*)
f301802f 127 # Solaris...
128 if test $exec_prefix != /usr; then
ed486911 129 DSOFLAGS="-R$libdir $DSOFLAGS"
ed486911 130 LDFLAGS="$LDFLAGS -R$libdir"
131 EXPORT_LDFLAGS="-R$libdir"
f301802f 132 fi
133 ;;
ef416fc2 134 *BSD*)
f301802f 135 # *BSD...
136 if test $exec_prefix != /usr; then
ed486911 137 DSOFLAGS="-Wl,-R$libdir $DSOFLAGS"
ed486911 138 LDFLAGS="$LDFLAGS -Wl,-R$libdir"
139 EXPORT_LDFLAGS="-Wl,-R$libdir"
f301802f 140 fi
141 ;;
3dd9c340
MS
142 Linux | GNU)
143 # Linux, and HURD...
f301802f 144 if test $exec_prefix != /usr; then
ed486911 145 DSOFLAGS="-Wl,-rpath,$libdir $DSOFLAGS"
ed486911 146 LDFLAGS="$LDFLAGS -Wl,-rpath,$libdir"
147 EXPORT_LDFLAGS="-Wl,-rpath,$libdir"
f301802f 148 fi
149 ;;
ef416fc2 150 esac
151else
152 DSOLIBS=""
a4845881 153 IMGLIBS="\$(LIBZ)"
ef416fc2 154fi
155
156AC_SUBST(DSOLIBS)
157AC_SUBST(IMGLIBS)
158AC_SUBST(EXPORT_LDFLAGS)
159
160dnl
5ec1fd3d 161dnl End of "$Id$".
ef416fc2 162dnl