]> git.ipfire.org Git - thirdparty/cups.git/blame - config-scripts/cups-sharedlibs.m4
Add libcups component name, localization bundle support for iOS.
[thirdparty/cups.git] / config-scripts / cups-sharedlibs.m4
CommitLineData
ef416fc2 1dnl
5a1d7a17 2dnl Shared library support for CUPS.
ef416fc2 3dnl
14435106
MS
4dnl Copyright © 2007-2018 by Apple Inc.
5dnl Copyright © 1997-2005 by Easy Software Products, all rights reserved.
ef416fc2 6dnl
14435106
MS
7dnl Licensed under Apache License v2.0. See the file "LICENSE" for more
8dnl information.
ef416fc2 9dnl
10
11PICFLAG=1
12DSOFLAGS="${DSOFLAGS:=}"
13
bf3816c7 14AC_ARG_ENABLE(shared, [ --disable-shared do not create shared libraries])
ef416fc2 15
f8b3a85b
MS
16cupsbase="cups"
17LIBCUPSBASE="lib$cupsbase"
18LIBCUPSSTATIC="lib$cupsbase.a"
19
ef416fc2 20if test x$enable_shared != xno; then
105922ec
MS
21 case "$host_os_name" in
22 sunos*)
f8b3a85b 23 LIBCUPS="lib$cupsbase.so.2"
dd1abb6b 24 LIBCUPSIMAGE="libcupsimage.so.2"
dd1abb6b
MS
25 DSO="\$(CC)"
26 DSOXX="\$(CXX)"
27 DSOFLAGS="$DSOFLAGS -Wl,-h\`basename \$@\` -G \$(OPTIM)"
28 ;;
827bf9ce 29 linux* | gnu* | *bsd*)
f8b3a85b 30 LIBCUPS="lib$cupsbase.so.2"
ef416fc2 31 LIBCUPSIMAGE="libcupsimage.so.2"
32 DSO="\$(CC)"
50fe7201 33 DSOXX="\$(CXX)"
f301802f 34 DSOFLAGS="$DSOFLAGS -Wl,-soname,\`basename \$@\` -shared \$(OPTIM)"
ef416fc2 35 ;;
105922ec 36 darwin*)
f8b3a85b 37 LIBCUPS="lib$cupsbase.2.dylib"
ef416fc2 38 LIBCUPSIMAGE="libcupsimage.2.dylib"
39 DSO="\$(CC)"
50fe7201 40 DSOXX="\$(CXX)"
f301802f 41 DSOFLAGS="$DSOFLAGS -dynamiclib -single_module -lc"
ef416fc2 42 ;;
ef416fc2 43 *)
44 echo "Warning: shared libraries may not be supported. Trying -shared"
45 echo " option with compiler."
f8b3a85b 46 LIBCUPS="lib$cupsbase.so.2"
ef416fc2 47 LIBCUPSIMAGE="libcupsimage.so.2"
48 DSO="\$(CC)"
50fe7201 49 DSOXX="\$(CXX)"
f301802f 50 DSOFLAGS="$DSOFLAGS -Wl,-soname,\`basename \$@\` -shared \$(OPTIM)"
ef416fc2 51 ;;
52 esac
53else
54 PICFLAG=0
f8b3a85b 55 LIBCUPS="lib$cupsbase.a"
ef416fc2 56 LIBCUPSIMAGE="libcupsimage.a"
57 DSO=":"
50fe7201 58 DSOXX=":"
ef416fc2 59fi
60
61AC_SUBST(DSO)
50fe7201 62AC_SUBST(DSOXX)
ef416fc2 63AC_SUBST(DSOFLAGS)
64AC_SUBST(LIBCUPS)
f8b3a85b 65AC_SUBST(LIBCUPSBASE)
ef416fc2 66AC_SUBST(LIBCUPSIMAGE)
f8b3a85b 67AC_SUBST(LIBCUPSSTATIC)
ef416fc2 68
69if test x$enable_shared = xno; then
f8b3a85b 70 LINKCUPS="../cups/lib$cupsbase.a"
123979a9 71 LINKCUPSIMAGE="../cups/libcupsimage.a"
c7017ecc
MS
72
73 EXTLINKCUPS="-lcups"
c7017ecc 74 EXTLINKCUPSIMAGE="-lcupsimage"
ef416fc2 75else
5a1d7a17
MS
76 LINKCUPS="-l${cupsbase}"
77 LINKCUPSIMAGE="-lcupsimage"
c7017ecc 78
5a1d7a17
MS
79 EXTLINKCUPS="-lcups"
80 EXTLINKCUPSIMAGE="-lcupsimage"
ef416fc2 81fi
82
c7017ecc 83AC_SUBST(EXTLINKCUPS)
c7017ecc 84AC_SUBST(EXTLINKCUPSIMAGE)
ef416fc2 85AC_SUBST(LINKCUPS)
86AC_SUBST(LINKCUPSIMAGE)
87
88dnl Update libraries for DSOs...
89EXPORT_LDFLAGS=""
90
91if test "$DSO" != ":"; then
92 # When using DSOs the image libraries are linked to libcupsimage.so
93 # rather than to the executables. This makes things smaller if you
94 # are using any static libraries, and it also allows us to distribute
95 # a single DSO rather than a bunch...
a4845881 96 DSOLIBS="\$(LIBZ)"
ef416fc2 97 IMGLIBS=""
98
f301802f 99 # Tell the run-time linkers where to find a DSO. Some platforms
100 # need this option, even when the library is installed in a
101 # standard location...
105922ec
MS
102 case $host_os_name in
103 sunos*)
f301802f 104 # Solaris...
105 if test $exec_prefix != /usr; then
ed486911 106 DSOFLAGS="-R$libdir $DSOFLAGS"
ed486911 107 LDFLAGS="$LDFLAGS -R$libdir"
108 EXPORT_LDFLAGS="-R$libdir"
f301802f 109 fi
110 ;;
105922ec 111 *bsd*)
f301802f 112 # *BSD...
113 if test $exec_prefix != /usr; then
ed486911 114 DSOFLAGS="-Wl,-R$libdir $DSOFLAGS"
ed486911 115 LDFLAGS="$LDFLAGS -Wl,-R$libdir"
116 EXPORT_LDFLAGS="-Wl,-R$libdir"
f301802f 117 fi
118 ;;
827bf9ce 119 linux* | gnu*)
3dd9c340 120 # Linux, and HURD...
f301802f 121 if test $exec_prefix != /usr; then
ed486911 122 DSOFLAGS="-Wl,-rpath,$libdir $DSOFLAGS"
ed486911 123 LDFLAGS="$LDFLAGS -Wl,-rpath,$libdir"
124 EXPORT_LDFLAGS="-Wl,-rpath,$libdir"
f301802f 125 fi
126 ;;
ef416fc2 127 esac
128else
129 DSOLIBS=""
a4845881 130 IMGLIBS="\$(LIBZ)"
ef416fc2 131fi
132
133AC_SUBST(DSOLIBS)
134AC_SUBST(IMGLIBS)
135AC_SUBST(EXPORT_LDFLAGS)