#
-# "$Id: Makefile 5023 2006-01-29 14:39:44Z mike $"
+# "$Id: Makefile 181 2006-06-22 20:01:18Z jlovell $"
#
# API library Makefile for the Common UNIX Printing System (CUPS).
#
#
LIBOBJS = \
+ adminutil.o \
array.o \
attr.o \
auth.o \
emit.o \
encode.o \
file.o \
+ getifaddrs.o \
getputfile.o \
globals.o \
http.o \
mark.o \
md5.o \
md5passwd.o \
- normalize.o \
notify.o \
options.o \
page.o \
ppd.o \
+ request.o \
snprintf.o \
string.o \
tempfile.o \
transcode.o \
usersys.o \
util.o
+LIB32OBJS = $(LIBOBJS:.o=.32.o)
+LIB64OBJS = $(LIBOBJS:.o=.64.o)
OBJS = \
$(LIBOBJS) \
+ $(LIB32OBJS) \
+ $(LIB64OBJS) \
+ testadmin.o \
testarray.o \
testfile.o \
testhttp.o \
#
HEADERS = \
+ adminutil.h \
array.h \
cups.h \
dir.h \
ipp.h \
language.h \
md5.h \
- normalize.h \
ppd.h \
transcode.h
TARGETS = \
$(LIBCUPS) \
+ $(LIB32CUPS) \
+ $(LIB64CUPS) \
libcups.a \
+ testadmin \
testarray \
testfile \
testhttp \
#
clean:
- $(RM) $(OBJS) $(TARGETS) `basename $(LIBCUPS) .2` libcups.dylib
+ $(RM) $(OBJS) $(TARGETS)
+ $(RM) libcups.so libcups.sl libcups.dylib
+ $(RM) -r 32bit 64bit
#
#
depend:
- makedepend -Y -I.. -fDependencies $(OBJS:.o=.c) >/dev/null 2>&1
+ touch Dependencies.tmp
+ makedepend -Y -I.. -fDependencies.tmp $(OBJS:.o=.c) >/dev/null 2>&1
+ $(RM) Dependencies
+ cp Dependencies.tmp Dependencies
+ sed -r -e '1,$$s/^([^.]+)\.o:/\1\.32.o: \1\.c /' Dependencies.tmp >>Dependencies
+ sed -r -e '1,$$s/^([^.]+)\.o:/\1\.64.o: \1\.c /' Dependencies.tmp >>Dependencies
+ $(RM) Dependencies.tmp
#
# Install object and target files...
#
-install: all installhdrs $(INSTALLSTATIC)
- $(INSTALL_DIR) $(LIBDIR)
+install: all installhdrs $(INSTALLSTATIC) $(INSTALL32) $(INSTALL64)
+ $(INSTALL_DIR) -m 755 $(LIBDIR)
$(INSTALL_LIB) $(LIBCUPS) $(LIBDIR)
if test $(LIBCUPS) = "libcups.so.2" -o $(LIBCUPS) = "libcups.sl.2"; then \
$(RM) $(LIBDIR)/`basename $(LIBCUPS) .2`; \
installstatic:
$(INSTALL_DIR) -m 755 $(LIBDIR)
- if test $(LIBCUPS) != "libcups.a"; then \
- $(INSTALL_LIB) libcups.a $(LIBDIR); \
- $(RANLIB) $(LIBDIR)/libcups.a; \
- fi
+ $(INSTALL_LIB) libcups.a $(LIBDIR)
+ $(RANLIB) $(LIBDIR)/libcups.a
installhdrs:
- $(INSTALL_DIR) $(INCLUDEDIR)/cups
+ $(INSTALL_DIR) -m 755 $(INCLUDEDIR)/cups
for file in $(HEADERS); do \
$(INSTALL_DATA) $$file $(INCLUDEDIR)/cups; \
done
+install32bit:
+ $(INSTALL_DIR) -m 755 $(LIB32DIR)
+ $(INSTALL_LIB) 32bit/libcups.so.2 $(LIB32DIR)/libcups.so.2
+ $(LN) libcups.so.2 $(LIB32DIR)/libcups.so
+
+install64bit:
+ $(INSTALL_DIR) -m 755 $(LIB64DIR)
+ $(INSTALL_LIB) 64bit/libcups.so.2 $(LIB64DIR)/libcups.so.2
+ $(LN) libcups.so.2 $(LIB64DIR)/libcups.so
+
+
+#
+# Uninstall object and target files...
+#
+
+uninstall: $(UNINSTALL32) $(UNINSTALL64)
+ $(RM) $(LIBDIR)/libcups.2.dylib
+ $(RM) $(LIBDIR)/libcups.a
+ $(RM) $(LIBDIR)/libcups.dylib
+ $(RM) $(LIBDIR)/libcups_s.a
+ $(RM) $(LIBDIR)/libcups.sl
+ $(RM) $(LIBDIR)/libcups.sl.2
+ $(RM) $(LIBDIR)/libcups.so
+ $(RM) $(LIBDIR)/libcups.so.2
+ -$(RMDIR) $(LIBDIR)
+ for file in $(HEADERS); do \
+ $(RM) $(INCLUDEDIR)/cups/$$file; \
+ done
+ -$(RMDIR) $(INCLUDEDIR)/cups
+
+uninstall32bit:
+ $(RM) $(LIB32DIR)/libcups.so
+ $(RM) $(LIB32DIR)/libcups.so.2
+ -$(RMDIR) $(LIB32DIR)
+
+uninstall64bit:
+ $(RM) $(LIB64DIR)/libcups.so
+ $(RM) $(LIB64DIR)/libcups.so.2
+ -$(RMDIR) $(LIB64DIR)
+
#
# libcups.so.2, libcups.sl.2
libcups.so.2 libcups.sl.2: $(LIBOBJS)
echo Linking $@...
- $(DSO) $(DSOFLAGS) -o $@ $(LIBOBJS) $(SSLLIBS) $(COMMONLIBS) $(LIBZ)
+ $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS) $(SSLLIBS) $(COMMONLIBS) $(LIBZ)
$(RM) `basename $@ .2`
$(LN) $@ `basename $@ .2`
+#
+# 32bit/libcups.so.2
+#
+
+32bit/libcups.so.2: $(LIB32OBJS)
+ echo Linking 32-bit $@...
+ -mkdir 32bit
+ $(DSO) $(ARCH32FLAGS) $(DSO32FLAGS) -o $@ $(LIB32OBJS) $(SSLLIBS) $(COMMONLIBS) $(LIBZ)
+ $(RM) 32bit/libcups.so
+ $(LN) libcups.so.2 32bit/libcups.so
+
+
+#
+# 64bit/libcups.so.2
+#
+
+64bit/libcups.so.2: $(LIB64OBJS)
+ echo Linking 64-bit $@...
+ -mkdir 64bit
+ $(DSO) $(ARCH64FLAGS) $(DSO64FLAGS) -o $@ $(LIB64OBJS) $(SSLLIBS) $(COMMONLIBS) $(LIBZ)
+ $(RM) 64bit/libcups.so
+ $(LN) libcups.so.2 64bit/libcups.so
+
+
#
# libcups.2.dylib
#
libcups.2.dylib: $(LIBOBJS)
echo Linking $@...
- $(DSO) $(DSOFLAGS) -o $@ \
+ $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ \
-install_name $(libdir)/$@ \
-current_version 2.7.0 \
-compatibility_version 2.0.0 \
# libcups_s.a
#
-libcups_s.a: $(LIBOBJS)
+libcups_s.a: $(LIBOBJS) libcups_s.exp
echo Creating $@...
$(DSO) $(DSOFLAGS) -Wl,-bexport:libcups_s.exp -o libcups_s.o $(LIBOBJS) $(SSLLIBS) $(COMMONLIBS) $(LIBZ) -lm
$(RM) $@
libcups.la: $(LIBOBJS)
echo Linking $@...
- $(CC) $(DSOFLAGS) -o $@ $(LIBOBJS:.o=.lo) -rpath $(LIBDIR) \
+ $(CC) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS:.o=.lo) -rpath $(LIBDIR) \
-version-info 2:7 $(SSLLIBS) $(COMMONLIBS) $(LIBZ)
#
# CUPS language bindings for various scripting languages...
#
+# NOTE: Not currently used or functional - see the scripting/php directory
+# for the hand-written bindings...
+#
phpcups.so: $(LIBCUPS) php_cups_wrap.o
echo Linking $@...
swig -php -o $@ -module cups cups.h
+#
+# testadmin (dependency on static CUPS library is intentional)
+#
+
+testadmin: testadmin.o libcups.a
+ echo Linking $@...
+ $(CC) $(LDFLAGS) -o $@ testadmin.o libcups.a \
+ $(SSLLIBS) $(COMMONLIBS) $(LIBZ)
+
+
#
# testarray (dependency on static CUPS library is intentional)
#
array.h array.c >../doc/help/api-array.html
mxmldoc --section "Programming" --title "CUPS API" \
--intro api-cups.shtml \
- cups.h auth.c dest.c encode.c getputfile.c language.c \
+ cups.h dest.c getputfile.c language.c \
options.c tempfile.c usersys.c \
util.c >../doc/help/api-cups.html
mxmldoc --section "Programming" --title "File and Directory APIs" \
file.h file.c dir.h dir.c >../doc/help/api-filedir.html
mxmldoc --section "Programming" --title "PPD API" \
--intro api-ppd.shtml \
- ppd.h attr.c emit.c mark.c page.c \
+ ppd.h attr.c custom.c emit.c localize.c mark.c page.c \
ppd.c >../doc/help/api-ppd.html
mxmldoc --section "Programming" --title "HTTP and IPP APIs" \
--intro api-httpipp.shtml \
- cups.h http.h ipp.h \
- auth.c dest.c encode.c getputfile.c http.c http-addr.c \
- http-support.c ipp.c ipp-support.c md5passwd.c options.c \
- usersys.c util.c >../doc/help/api-httpipp.html
+ http.h ipp.h auth.c encode.c http.c http-addr.c \
+ http-support.c ipp.c ipp-support.c md5passwd.c \
+ request.c >../doc/help/api-httpipp.html
mxmldoc --section "Programming" --title "Filter and Backend APIs" \
--intro api-filter.shtml \
backchannel.c >../doc/help/api-filter.html
#
-# End of "$Id: Makefile 5023 2006-01-29 14:39:44Z mike $".
+# End of "$Id: Makefile 181 2006-06-22 20:01:18Z jlovell $".
#