summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makedefs.in1
-rw-r--r--config-scripts/cups-common.m413
-rw-r--r--config-scripts/cups-defaults.m43
-rw-r--r--config-scripts/cups-sharedlibs.m443
-rwxr-xr-xconfigure58
-rw-r--r--cups/Makefile87
6 files changed, 141 insertions, 64 deletions
diff --git a/Makedefs.in b/Makedefs.in
index 8d07dc48b..b50992e1e 100644
--- a/Makedefs.in
+++ b/Makedefs.in
@@ -93,6 +93,7 @@ LOCALTARGET = @LOCALTARGET@
LIBCUPS = @LIBCUPS@
LIBCUPSIMAGE = @LIBCUPSIMAGE@
+LIBCUPSOBJS = @LIBCUPSOBJS@
LIBCUPSSTATIC = @LIBCUPSSTATIC@
LIBGSSAPI = @LIBGSSAPI@
LIBMALLOC = @LIBMALLOC@
diff --git a/config-scripts/cups-common.m4 b/config-scripts/cups-common.m4
index df1b1549a..9ab84cb48 100644
--- a/config-scripts/cups-common.m4
+++ b/config-scripts/cups-common.m4
@@ -434,9 +434,12 @@ COMPONENTS="all"
AC_ARG_WITH(components, [ --with-components set components to build:
- "all" (default) builds everything
- "core" builds libcups and ipptool
- - "libcups" builds just libcups],
+ - "libcups" builds just libcups
+ - "libcupslite" builds just libcups without driver support],
COMPONENTS="$withval")
+cupsimagebase="cupsimage"
+LIBCUPSOBJS="\$(COREOBJS) \$(DRIVEROBJS)"
case "$COMPONENTS" in
all)
BUILDDIRS="test filter backend berkeley cgi-bin monitor notifier ppdc scheduler systemv conf data desktop locale man doc examples templates"
@@ -448,6 +451,13 @@ case "$COMPONENTS" in
libcups)
BUILDDIRS="locale"
+ cupsimagebase=""
+ ;;
+
+ libcupslite)
+ BUILDDIRS="locale"
+ cupsimagebase=""
+ LIBCUPSOBJS="\$(COREOBJS)"
;;
*)
@@ -456,3 +466,4 @@ case "$COMPONENTS" in
esac
AC_SUBST(BUILDDIRS)
+AC_SUBST(LIBCUPSOBJS)
diff --git a/config-scripts/cups-defaults.m4 b/config-scripts/cups-defaults.m4
index 43f034d7b..b3d96ef0a 100644
--- a/config-scripts/cups-defaults.m4
+++ b/config-scripts/cups-defaults.m4
@@ -41,9 +41,6 @@ AC_ARG_WITH(bundlelang, [ --with-bundlelang set localization bundle base
else
cups_bundlelang="English"
fi])
-else
- cups_bundlelang=""
-fi
if test "x$cups_bundlelang" != x -a "x$CUPS_BUNDLEDIR" != x; then
CUPS_RESOURCEDIR="$CUPS_BUNDLEDIR/Resources/$cups_bundlelang.lproj"
diff --git a/config-scripts/cups-sharedlibs.m4 b/config-scripts/cups-sharedlibs.m4
index 690817f0d..80e1ee2f5 100644
--- a/config-scripts/cups-sharedlibs.m4
+++ b/config-scripts/cups-sharedlibs.m4
@@ -15,27 +15,34 @@ AC_ARG_ENABLE(shared, [ --disable-shared do not create shared libraries]
cupsbase="cups"
LIBCUPSBASE="lib$cupsbase"
+LIBCUPSIMAGE=""
LIBCUPSSTATIC="lib$cupsbase.a"
if test x$enable_shared != xno; then
case "$host_os_name" in
sunos*)
LIBCUPS="lib$cupsbase.so.2"
- LIBCUPSIMAGE="libcupsimage.so.2"
+ if test "x$cupsimagebase" != x; then
+ LIBCUPSIMAGE="lib$cupsimagebase.so.2"
+ fi
DSO="\$(CC)"
DSOXX="\$(CXX)"
DSOFLAGS="$DSOFLAGS -Wl,-h\`basename \$@\` -G \$(OPTIM)"
;;
linux* | gnu* | *bsd*)
LIBCUPS="lib$cupsbase.so.2"
- LIBCUPSIMAGE="libcupsimage.so.2"
+ if test "x$cupsimagebase" != x; then
+ LIBCUPSIMAGE="lib$cupsimagebase.so.2"
+ fi
DSO="\$(CC)"
DSOXX="\$(CXX)"
DSOFLAGS="$DSOFLAGS -Wl,-soname,\`basename \$@\` -shared \$(OPTIM)"
;;
darwin*)
LIBCUPS="lib$cupsbase.2.dylib"
- LIBCUPSIMAGE="libcupsimage.2.dylib"
+ if test "x$cupsimagebase" != x; then
+ LIBCUPSIMAGE="lib$cupsimagebase.2.dylib"
+ fi
DSO="\$(CC)"
DSOXX="\$(CXX)"
DSOFLAGS="$DSOFLAGS -dynamiclib -single_module -lc"
@@ -44,7 +51,9 @@ if test x$enable_shared != xno; then
echo "Warning: shared libraries may not be supported. Trying -shared"
echo " option with compiler."
LIBCUPS="lib$cupsbase.so.2"
- LIBCUPSIMAGE="libcupsimage.so.2"
+ if test "x$cupsimagebase" != x; then
+ LIBCUPSIMAGE="lib$cupsimagebase.so.2"
+ fi
DSO="\$(CC)"
DSOXX="\$(CXX)"
DSOFLAGS="$DSOFLAGS -Wl,-soname,\`basename \$@\` -shared \$(OPTIM)"
@@ -53,7 +62,9 @@ if test x$enable_shared != xno; then
else
PICFLAG=0
LIBCUPS="lib$cupsbase.a"
- LIBCUPSIMAGE="libcupsimage.a"
+ if test "x$cupsimagebase" != x; then
+ LIBCUPSIMAGE="lib$cupsimagebase.a"
+ fi
DSO=":"
DSOXX=":"
fi
@@ -68,16 +79,26 @@ AC_SUBST(LIBCUPSSTATIC)
if test x$enable_shared = xno; then
LINKCUPS="../cups/lib$cupsbase.a"
- LINKCUPSIMAGE="../cups/libcupsimage.a"
-
EXTLINKCUPS="-lcups"
- EXTLINKCUPSIMAGE="-lcupsimage"
+
+ if test "x$cupsimagebase" != x; then
+ LINKCUPSIMAGE="../cups/lib$cupsimagebase.a"
+ EXTLINKCUPSIMAGE="-l$cupsimagebase"
+ else
+ LINKCUPSIMAGE=""
+ EXTLINKCUPSIMAGE=""
+ fi
else
LINKCUPS="-l${cupsbase}"
- LINKCUPSIMAGE="-lcupsimage"
-
EXTLINKCUPS="-lcups"
- EXTLINKCUPSIMAGE="-lcupsimage"
+
+ if test "x$cupsimagebase" != x; then
+ LINKCUPSIMAGE="-l$cupsimagebase"
+ EXTLINKCUPSIMAGE="-l$cupsimagebase"
+ else
+ LINKCUPSIMAGE=""
+ EXTLINKCUPSIMAGE=""
+ fi
fi
AC_SUBST(EXTLINKCUPS)
diff --git a/configure b/configure
index e2ae90f87..d4a39916b 100755
--- a/configure
+++ b/configure
@@ -716,6 +716,7 @@ CUPS_DATADIR
CUPS_CACHEDIR
PRIVATEINCLUDE
privateinclude
+LIBCUPSOBJS
BUILDDIRS
INSTALLXPC
CUPS_SYSTEM_AUTHKEY
@@ -1573,6 +1574,7 @@ Optional Packages:
- "all" (default) builds everything
- "core" builds libcups and ipptool
- "libcups" builds just libcups
+ - "libcupslite" builds just libcups without driver support
--with-privateinclude set path for private include files, default=none
--with-lpdconfig set URI for LPD config file
--with-smbconfig set URI for Samba config file
@@ -6105,6 +6107,8 @@ if test "${with_components+set}" = set; then :
fi
+cupsimagebase="cupsimage"
+LIBCUPSOBJS="\$(COREOBJS) \$(DRIVEROBJS)"
case "$COMPONENTS" in
all)
BUILDDIRS="test filter backend berkeley cgi-bin monitor notifier ppdc scheduler systemv conf data desktop locale man doc examples templates"
@@ -6116,6 +6120,13 @@ case "$COMPONENTS" in
libcups)
BUILDDIRS="locale"
+ cupsimagebase=""
+ ;;
+
+ libcupslite)
+ BUILDDIRS="locale"
+ cupsimagebase=""
+ LIBCUPSOBJS="\$(COREOBJS)"
;;
*)
@@ -6128,6 +6139,7 @@ esac
+
if test "$prefix" = "NONE"; then
prefix="/"
fi
@@ -6597,27 +6609,34 @@ fi
cupsbase="cups"
LIBCUPSBASE="lib$cupsbase"
+LIBCUPSIMAGE=""
LIBCUPSSTATIC="lib$cupsbase.a"
if test x$enable_shared != xno; then
case "$host_os_name" in
sunos*)
LIBCUPS="lib$cupsbase.so.2"
- LIBCUPSIMAGE="libcupsimage.so.2"
+ if test "x$cupsimagebase" != x; then
+ LIBCUPSIMAGE="lib$cupsimagebase.so.2"
+ fi
DSO="\$(CC)"
DSOXX="\$(CXX)"
DSOFLAGS="$DSOFLAGS -Wl,-h\`basename \$@\` -G \$(OPTIM)"
;;
linux* | gnu* | *bsd*)
LIBCUPS="lib$cupsbase.so.2"
- LIBCUPSIMAGE="libcupsimage.so.2"
+ if test "x$cupsimagebase" != x; then
+ LIBCUPSIMAGE="lib$cupsimagebase.so.2"
+ fi
DSO="\$(CC)"
DSOXX="\$(CXX)"
DSOFLAGS="$DSOFLAGS -Wl,-soname,\`basename \$@\` -shared \$(OPTIM)"
;;
darwin*)
LIBCUPS="lib$cupsbase.2.dylib"
- LIBCUPSIMAGE="libcupsimage.2.dylib"
+ if test "x$cupsimagebase" != x; then
+ LIBCUPSIMAGE="lib$cupsimagebase.2.dylib"
+ fi
DSO="\$(CC)"
DSOXX="\$(CXX)"
DSOFLAGS="$DSOFLAGS -dynamiclib -single_module -lc"
@@ -6626,7 +6645,9 @@ if test x$enable_shared != xno; then
echo "Warning: shared libraries may not be supported. Trying -shared"
echo " option with compiler."
LIBCUPS="lib$cupsbase.so.2"
- LIBCUPSIMAGE="libcupsimage.so.2"
+ if test "x$cupsimagebase" != x; then
+ LIBCUPSIMAGE="lib$cupsimagebase.so.2"
+ fi
DSO="\$(CC)"
DSOXX="\$(CXX)"
DSOFLAGS="$DSOFLAGS -Wl,-soname,\`basename \$@\` -shared \$(OPTIM)"
@@ -6635,7 +6656,9 @@ if test x$enable_shared != xno; then
else
PICFLAG=0
LIBCUPS="lib$cupsbase.a"
- LIBCUPSIMAGE="libcupsimage.a"
+ if test "x$cupsimagebase" != x; then
+ LIBCUPSIMAGE="lib$cupsimagebase.a"
+ fi
DSO=":"
DSOXX=":"
fi
@@ -6650,16 +6673,26 @@ fi
if test x$enable_shared = xno; then
LINKCUPS="../cups/lib$cupsbase.a"
- LINKCUPSIMAGE="../cups/libcupsimage.a"
-
EXTLINKCUPS="-lcups"
- EXTLINKCUPSIMAGE="-lcupsimage"
+
+ if test "x$cupsimagebase" != x; then
+ LINKCUPSIMAGE="../cups/lib$cupsimagebase.a"
+ EXTLINKCUPSIMAGE="-l$cupsimagebase"
+ else
+ LINKCUPSIMAGE=""
+ EXTLINKCUPSIMAGE=""
+ fi
else
LINKCUPS="-l${cupsbase}"
- LINKCUPSIMAGE="-lcupsimage"
-
EXTLINKCUPS="-lcups"
- EXTLINKCUPSIMAGE="-lcupsimage"
+
+ if test "x$cupsimagebase" != x; then
+ LINKCUPSIMAGE="-l$cupsimagebase"
+ EXTLINKCUPSIMAGE="-l$cupsimagebase"
+ else
+ LINKCUPSIMAGE=""
+ EXTLINKCUPSIMAGE=""
+ fi
fi
@@ -9518,9 +9551,6 @@ else
fi
fi
-else
- cups_bundlelang=""
-fi
if test "x$cups_bundlelang" != x -a "x$CUPS_BUNDLEDIR" != x; then
CUPS_RESOURCEDIR="$CUPS_BUNDLEDIR/Resources/$cups_bundlelang.lproj"
diff --git a/cups/Makefile b/cups/Makefile
index 7c31019e6..19c538e2e 100644
--- a/cups/Makefile
+++ b/cups/Makefile
@@ -15,12 +15,9 @@ include ../Makedefs
# Object files...
#
-LIBOBJS = \
- adminutil.o \
+COREOBJS = \
array.o \
auth.o \
- backchannel.o \
- backend.o \
debug.o \
dest.o \
dest-job.o \
@@ -29,8 +26,6 @@ LIBOBJS = \
dir.o \
encode.o \
file.o \
- getdevices.o \
- getifaddrs.o \
getputfile.o \
globals.o \
hash.o \
@@ -48,23 +43,11 @@ LIBOBJS = \
md5passwd.o \
notify.o \
options.o \
- ppd.o \
- ppd-attr.o \
- ppd-cache.o \
- ppd-conflicts.o \
- ppd-custom.o \
- ppd-emit.o \
- ppd-localize.o \
- ppd-mark.o \
- ppd-page.o \
- ppd-util.o \
pwg-media.o \
raster-error.o \
- raster-interpret.o \
raster-stream.o \
+ raster-stubs.o \
request.o \
- sidechannel.o \
- snmp.o \
snprintf.o \
string.o \
tempfile.o \
@@ -73,9 +56,35 @@ LIBOBJS = \
transcode.o \
usersys.o \
util.o
+
+DRIVEROBJS = \
+ adminutil.o \
+ backchannel.o \
+ backend.o \
+ getdevices.o \
+ getifaddrs.o \
+ ppd.o \
+ ppd-attr.o \
+ ppd-cache.o \
+ ppd-conflicts.o \
+ ppd-custom.o \
+ ppd-emit.o \
+ ppd-localize.o \
+ ppd-mark.o \
+ ppd-page.o \
+ ppd-util.o \
+ raster-interpret.o \
+ raster-interstub.o \
+ sidechannel.o \
+ snmp.o
+
+LIBOBJS = \
+ $(LIBCUPSOBJS)
+
IMAGEOBJS = \
raster-interstub.o \
raster-stubs.o
+
TESTOBJS = \
rasterbench.o \
testadmin.o \
@@ -281,23 +290,25 @@ install-libs: $(LIBTARGETS) $(INSTALLSTATIC)
$(RM) $(LIBDIR)/libcups.dylib; \
$(LN) $(LIBCUPS) $(LIBDIR)/libcups.dylib; \
fi
- $(INSTALL_DIR) -m 755 $(LIBDIR)
- $(INSTALL_LIB) $(LIBCUPSIMAGE) $(LIBDIR)
- -if test $(LIBCUPSIMAGE) = "libcupsimage.so.2" -o $(LIBCUPSIMAGE) = "libcupsimage.sl.2"; then \
+ -if text "x$(LIBCUPSIMAGE)" != x; then
+ $(INSTALL_LIB) $(LIBCUPSIMAGE) $(LIBDIR); \
+ fi
+ -if test "x$(LIBCUPSIMAGE)" = "xlibcupsimage.so.2"; then \
$(RM) $(LIBDIR)/`basename $(LIBCUPSIMAGE) .2`; \
$(LN) $(LIBCUPSIMAGE) $(LIBDIR)/`basename $(LIBCUPSIMAGE) .2`; \
fi
- -if test $(LIBCUPSIMAGE) = "libcupsimage.2.dylib"; then \
+ -if test "x$(LIBCUPSIMAGE)" = "xlibcupsimage.2.dylib"; then \
$(RM) $(LIBDIR)/libcupsimage.dylib; \
$(LN) $(LIBCUPSIMAGE) $(LIBDIR)/libcupsimage.dylib; \
fi
if test "x$(SYMROOT)" != "x"; then \
$(INSTALL_DIR) $(SYMROOT); \
- $(INSTALL_DIR) $(SYMROOT); \
cp $(LIBCUPS) $(SYMROOT); \
dsymutil $(SYMROOT)/$(LIBCUPS); \
- cp $(LIBCUPSIMAGE) $(SYMROOT); \
- dsymutil $(SYMROOT)/$(LIBCUPSIMAGE); \
+ if text "x$(LIBCUPSIMAGE)" != x; then \
+ cp $(LIBCUPSIMAGE) $(SYMROOT); \
+ dsymutil $(SYMROOT)/$(LIBCUPSIMAGE); \
+ fi \
fi
installstatic:
@@ -316,7 +327,7 @@ installstatic:
uninstall:
$(RM) $(LIBDIR)/libcups.2.dylib
- $(RM) $(LIBDIR)/$(LIBCUPSSTATIC)
+ $(RM) $(LIBDIR)/libcups.a
$(RM) $(LIBDIR)/libcups.dylib
$(RM) $(LIBDIR)/libcups.so
$(RM) $(LIBDIR)/libcups.so.2
@@ -330,15 +341,21 @@ uninstall:
$(RM) $(INCLUDEDIR)/cups/$$file; \
done
-$(RMDIR) $(INCLUDEDIR)/cups
+ if test "x$(privateinclude)" != x; then \
+ for file in $(HEADERSPRIV); do \
+ $(RM) $(PRIVATEINCLUDE)/cups/$$file; \
+ done
+ $(RMDIR) $(PRIVATEINCLUDE)/cups; \
+ fi
#
# libcups.so.2
#
-libcups.so.2: $(LIBOBJS) $(IMAGEOBJS)
+libcups.so.2: $(LIBOBJS)
echo Linking $@...
- $(DSO) $(ARCHFLAGS) $(LDFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS) $(IMAGEOBJS) \
+ $(DSO) $(ARCHFLAGS) $(LDFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
$(RM) `basename $@ .2`
$(LN) $@ `basename $@ .2`
@@ -348,13 +365,13 @@ libcups.so.2: $(LIBOBJS) $(IMAGEOBJS)
# libcups.2.dylib
#
-libcups.2.dylib: $(LIBOBJS) $(IMAGEOBJS)
+libcups.2.dylib: $(LIBOBJS)
echo Linking $@...
$(DSO) $(ARCHFLAGS) $(LDFLAGS) $(DSOFLAGS) -o $@ \
-install_name $(libdir)/$@ \
-current_version 2.14.0 \
-compatibility_version 2.0.0 \
- $(LIBOBJS) $(IMAGEOBJS) \
+ $(LIBOBJS) \
$(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
$(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
$(RM) libcups.dylib
@@ -365,10 +382,10 @@ libcups.2.dylib: $(LIBOBJS) $(IMAGEOBJS)
# libcups.la
#
-libcups.la: $(LIBOBJS) $(IMAGEOBJS)
+libcups.la: $(LIBOBJS)
echo Linking $@...
$(LD_CC) $(ARCHFLAGS) $(LDFLAGS) $(DSOFLAGS) -o $@ \
- $(LIBOBJS:.o=.lo) $(IMAGEOBJS:.o=.lo) \
+ $(LIBOBJS:.o=.lo) \
-rpath $(LIBDIR) -version-info 2:14 $(LIBGSSAPI) $(SSLLIBS) \
$(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
@@ -377,10 +394,10 @@ libcups.la: $(LIBOBJS) $(IMAGEOBJS)
# libcups.a
#
-libcups.a: $(LIBOBJS) $(IMAGEOBJS)
+libcups.a: $(LIBOBJS)
echo Archiving $@...
$(RM) $@
- $(AR) $(ARFLAGS) $@ $(LIBOBJS) $(IMAGEOBJS)
+ $(AR) $(ARFLAGS) $@ $(LIBOBJS)
$(RANLIB) $@