]> git.ipfire.org Git - thirdparty/cups.git/blame - config-scripts/cups-sharedlibs.m4
Don't generate certificates that expire on Feb 29th (Issue #5643)
[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"
58b64dbb 18LIBCUPSIMAGE=""
f8b3a85b
MS
19LIBCUPSSTATIC="lib$cupsbase.a"
20
ef416fc2 21if test x$enable_shared != xno; then
105922ec
MS
22 case "$host_os_name" in
23 sunos*)
f8b3a85b 24 LIBCUPS="lib$cupsbase.so.2"
58b64dbb
MS
25 if test "x$cupsimagebase" != x; then
26 LIBCUPSIMAGE="lib$cupsimagebase.so.2"
27 fi
dd1abb6b
MS
28 DSO="\$(CC)"
29 DSOXX="\$(CXX)"
f518bf7e 30 DSOFLAGS="$DSOFLAGS -Wl,-h\`basename \$@\` -G"
dd1abb6b 31 ;;
827bf9ce 32 linux* | gnu* | *bsd*)
f8b3a85b 33 LIBCUPS="lib$cupsbase.so.2"
58b64dbb
MS
34 if test "x$cupsimagebase" != x; then
35 LIBCUPSIMAGE="lib$cupsimagebase.so.2"
36 fi
ef416fc2 37 DSO="\$(CC)"
50fe7201 38 DSOXX="\$(CXX)"
f518bf7e 39 DSOFLAGS="$DSOFLAGS -Wl,-soname,\`basename \$@\` -shared"
ef416fc2 40 ;;
105922ec 41 darwin*)
f8b3a85b 42 LIBCUPS="lib$cupsbase.2.dylib"
58b64dbb
MS
43 if test "x$cupsimagebase" != x; then
44 LIBCUPSIMAGE="lib$cupsimagebase.2.dylib"
45 fi
ef416fc2 46 DSO="\$(CC)"
50fe7201 47 DSOXX="\$(CXX)"
f518bf7e 48 DSOFLAGS="$DSOFLAGS -Wl,-no_warn_inits -dynamiclib -single_module -lc"
ef416fc2 49 ;;
ef416fc2 50 *)
51 echo "Warning: shared libraries may not be supported. Trying -shared"
52 echo " option with compiler."
f8b3a85b 53 LIBCUPS="lib$cupsbase.so.2"
58b64dbb
MS
54 if test "x$cupsimagebase" != x; then
55 LIBCUPSIMAGE="lib$cupsimagebase.so.2"
56 fi
ef416fc2 57 DSO="\$(CC)"
50fe7201 58 DSOXX="\$(CXX)"
f518bf7e 59 DSOFLAGS="$DSOFLAGS -Wl,-soname,\`basename \$@\` -shared"
ef416fc2 60 ;;
61 esac
62else
63 PICFLAG=0
f8b3a85b 64 LIBCUPS="lib$cupsbase.a"
58b64dbb
MS
65 if test "x$cupsimagebase" != x; then
66 LIBCUPSIMAGE="lib$cupsimagebase.a"
67 fi
ef416fc2 68 DSO=":"
50fe7201 69 DSOXX=":"
ef416fc2 70fi
71
72AC_SUBST(DSO)
50fe7201 73AC_SUBST(DSOXX)
ef416fc2 74AC_SUBST(DSOFLAGS)
75AC_SUBST(LIBCUPS)
f8b3a85b 76AC_SUBST(LIBCUPSBASE)
ef416fc2 77AC_SUBST(LIBCUPSIMAGE)
f8b3a85b 78AC_SUBST(LIBCUPSSTATIC)
ef416fc2 79
80if test x$enable_shared = xno; then
3e391a8e
MS
81 LINKCUPS="../cups/lib$cupsbase.a \$(LIBS)"
82 EXTLINKCUPS="-lcups \$LIBS"
ef416fc2 83else
3e391a8e 84 LINKCUPS="-L../cups -l${cupsbase}"
5a1d7a17 85 EXTLINKCUPS="-lcups"
ef416fc2 86fi
87
c7017ecc 88AC_SUBST(EXTLINKCUPS)
ef416fc2 89AC_SUBST(LINKCUPS)
ef416fc2 90
91dnl Update libraries for DSOs...
92EXPORT_LDFLAGS=""
93
94if test "$DSO" != ":"; then
f301802f 95 # Tell the run-time linkers where to find a DSO. Some platforms
96 # need this option, even when the library is installed in a
97 # standard location...
105922ec
MS
98 case $host_os_name in
99 sunos*)
f301802f 100 # Solaris...
101 if test $exec_prefix != /usr; then
ed486911 102 DSOFLAGS="-R$libdir $DSOFLAGS"
ed486911 103 LDFLAGS="$LDFLAGS -R$libdir"
104 EXPORT_LDFLAGS="-R$libdir"
f301802f 105 fi
106 ;;
105922ec 107 *bsd*)
f301802f 108 # *BSD...
109 if test $exec_prefix != /usr; then
ed486911 110 DSOFLAGS="-Wl,-R$libdir $DSOFLAGS"
ed486911 111 LDFLAGS="$LDFLAGS -Wl,-R$libdir"
112 EXPORT_LDFLAGS="-Wl,-R$libdir"
f301802f 113 fi
114 ;;
827bf9ce 115 linux* | gnu*)
3dd9c340 116 # Linux, and HURD...
f301802f 117 if test $exec_prefix != /usr; then
ed486911 118 DSOFLAGS="-Wl,-rpath,$libdir $DSOFLAGS"
ed486911 119 LDFLAGS="$LDFLAGS -Wl,-rpath,$libdir"
120 EXPORT_LDFLAGS="-Wl,-rpath,$libdir"
f301802f 121 fi
122 ;;
ef416fc2 123 esac
ef416fc2 124fi
125
ef416fc2 126AC_SUBST(EXPORT_LDFLAGS)