Home | History | Annotate | Download | only in ghostscript
      1 #
      2 #
      3 # CDDL HEADER START
      4 #
      5 # The contents of this file are subject to the terms of the
      6 # Common Development and Distribution License (the "License").
      7 # You may not use this file except in compliance with the License.
      8 #
      9 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
     10 # or http://www.opensolaris.org/os/licensing.
     11 # See the License for the specific language governing permissions
     12 # and limitations under the License.
     13 #
     14 # When distributing Covered Code, include this CDDL HEADER in each
     15 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
     16 # If applicable, add the following below this CDDL HEADER, with the
     17 # fields enclosed by brackets "[]" replaced with your own identifying
     18 # information: Portions Copyright [yyyy] [name of copyright owner]
     19 #
     20 # CDDL HEADER END
     21 #
     22 # Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
     23 # Use is subject to license terms.
     24 #
     25 #ident	"@(#)Makefile.sfw	1.16	09/09/09 SMI"
     26 #
     27 
     28 include ../Makefile.cmd
     29 
     30 
     31 VER =		$(COMPONENT_NAME:sh)-$(COMPONENT_VERSION:sh)
     32 TARBALL =	$(VER).tar.bz2
     33 PATCHES:sh =	echo Patches/[0-9]*.patch
     34 
     35 #	configure(1) options to use
     36 # a default --prefix and --mandir are set in Makefile.master
     37 CONFIGURE_OPTIONS +=	--with-drivers=ALL
     38 CONFIGURE_OPTIONS +=	--with-ijs
     39 CONFIGURE_OPTIONS +=	--without-omni
     40 CONFIGURE_OPTIONS +=	--with-jbig2dec
     41 CONFIGURE_OPTIONS +=	--with-jasper
     42 CONFIGURE_OPTIONS +=	--enable-cups
     43 CONFIGURE_OPTIONS +=	--enable-dynamic
     44 CONFIGURE_OPTIONS +=	--disable-compile-inits
     45 CONFIGURE_OPTIONS +=	--with-fontpath=/usr/share/ghostscript/$(COMPONENT_VERSION:sh)/Resource:/usr/share/ghostscript/$(COMPONENT_VERSION:sh)/Resource/Font:/usr/share/ghostscript/fonts:/usr/openwin/lib/X11/fonts/Type1:/usr/openwin/lib/X11/fonts/TrueType:/usr/openwin/lib/X11/fonts/Type3:/usr/X11/lib/X11/fonts/Type1:/usr/X11/lib/fonts/TrueType:/usr/X11/lib/X11/fonts/Type3:/usr/X11/lib/X11/fonts/Resource:/usr/X11/lib/X11/Resource/Font
     46 
     47 TARGET_ENV +=	CC="$(CC)"
     48 TARGET_ENV += 	CXX="$(CCC)"
     49 TARGET_ENV += 	CPPFLAGS="$(CPPFLAGS)"
     50 TARGET_ENV += 	LDFLAGS="$(LDLIBS)"
     51 TARGET_ENV += 	LDFLAGS_SO="-G"
     52 TARGET_ENV +=	LD_LIBRARY_PATH=$(ROOTLIB):$(ROOTSFWLIB):/usr/sfw/lib
     53 TARGET_ENV +=	CUPSCONFIG=$(ROOTBIN)/cups-config
     54 TARGET_ENV += 	PATH="$(SFW_PATH)"
     55 TARGET_ENV += 	MAKE="$(CCSMAKE)"
     56 
     57 TARGET_COMENV +=	ROOT="$(ROOT)"
     58 TARGET_COMENV +=	DESTDIR="$(ROOT)"
     59 TARGET_COMENV +=	install_prefix="$(ROOT)"
     60 TARGET_COMENV +=	INSTALL="$(INSTALL_PROTO)"
     61 TARGET_COMENV +=	MANSCRIPT="$(COMPONENT_TOP)/sunman-stability"
     62 TARGET_COMENV +=	PATH="$(SRC)/tools:$(SFW_PATH)"
     63 TARGET_COMENV +=	MAKE="$(CCSMAKE)"
     64 
     65 
     66 all:=			TARGET =
     67 install:=		TARGET_ENV += $(TARGET_COMENV)
     68 install:= 		TARGET = install-exec install-so install-scripts install-data
     69 install:= 		TARGET += install-contrib-extras
     70 install-target-ijs:=	TARGET_ENV += $(TARGET_COMENV)
     71 install-target-ijs:=	TARGET = install
     72 install-target-cups:=	TARGET_ENV += INSTALL_PROGRAM="$(INSTALL_PROTO)"
     73 install-target-cups:=	TARGET_ENV += INSTALL_DATA="$(INSTALL_PROTO)"
     74 install-target-cups:=	TARGET_ENV += $(TARGET_COMENV)
     75 install-target-cups:=	TARGET_ENV += CUPSCFLAGS="$(CFLAGS)"
     76 install-target-cups:=	TARGET_ENV += CUPSSERVERBIN="$(CFGLIB)/cups"
     77 install-target-cups:=	TARGET_ENV += CUPSSERVERROOT="$(CFGETC)/cups"
     78 install-target-cups:=	TARGET_ENV += CUPSDATA="$(CFGPREFIX)/share/cups"
     79 install-target-cups:=	TARGET = install-cups
     80 
     81 #
     82 #  Hopefully you will not need to make changes below this point
     83 #
     84 
     85 all:	all-ijs all-gs
     86 
     87 all-gs:	$(VER)/config.status $(VER)/jasper/src/libjasper/jpc/jpc_qmfb.c.dos
     88 	(cd $(VER) ; env - $(TARGET_ENV) $(CCSMAKE))
     89 
     90 all-ijs:	$(VER)/ijs/config.status
     91 	(cd $(VER)/ijs ; env - $(TARGET_ENV) $(CCSMAKE) $(TARGET))
     92 
     93 install:	install-protofix
     94 
     95 install-target-gs:	all-gs
     96 	# install the gs bits in the proto area
     97 	(cd $(VER) ; env - $(TARGET_ENV) $(CCSMAKE) $(TARGET))
     98 
     99 install-target-ijs:	$(VER)/ijs/config.status
    100 	# install the ijs bits in the proto area
    101 	(cd $(VER)/ijs ; env - $(TARGET_ENV) $(CCSMAKE) $(TARGET))
    102 
    103 install-target-cups:	$(VER)/config.status
    104 	# install the cups bits in the proto area
    105 	(cd $(VER) ; \
    106 	$(MKDIR) -p bin ;\
    107 	env - $(TARGET_ENV) $(CCSMAKE) $(TARGET))
    108 
    109 $(VER)/jasper/src/libjasper/jpc/jpc_qmfb.c.dos: $(VER)/jasper/src/libjasper/jpc/jpc_qmfb.c
    110 	mv $(VER)/jasper/src/libjasper/jpc/jpc_qmfb.c $@
    111 	dos2unix $@ >$(VER)/jasper/src/libjasper/jpc/jpc_qmfb.c
    112 
    113 MAN1PAGES:sh =	echo Solaris/*.1
    114 ROOTGSDATADIR=$(ROOT)/usr/share/ghostscript
    115 
    116 LINKS =  gs gsbj gsdj gsnd gslj gslp pv.sh ps2ps pf2afm gsdj500 font2c pdf2ps
    117 LINKS += ps2pdf dvipdf pdfopt pdf2dsc ps2pdf12 ps2pdf13 ps2pdf14 eps2eps
    118 LINKS += ps2epsi bdftops wftopfa ps2ascii ps2pdfwr pfbtopfa printafm dumphint
    119 LINKS += unix-lpr.sh fixmswrd.pl lprsetup.sh
    120 SFWLINKS = $(LINKS:%=$(ROOTSFWBIN)/%)
    121 
    122 $(SFWLINKS):
    123 	$(RM) $@ ; $(SYMLINK) ../../bin/$(@F) $@
    124 
    125 install-target-solaris:	$(ROOTMAN1DIR)	$(ROOTMAN1) $(ROOTSFWBIN) $(SFWLINKS)
    126 	$(RM) $(ROOTLIB)/libijs.la
    127 	$(RM) $(ROOTBIN)/ijs_client_example
    128 	$(RM) $(ROOTBIN)/ijs_server_example
    129 	$(RM) $(ROOTBIN)/pj-gs.sh
    130 	$(RM) -r $(ROOT)/$(CFGMAN)/de
    131 	for man1page in $(MAN1PAGES) ; do \
    132 		$(INSTALL_PROTO) $$man1page $(ROOTMAN1) ; \
    133 	done
    134 	$(MKDIR) -p $(ROOTGSDATADIR)/interfaces
    135 	$(INSTALL_PROTO) Solaris/GSinterface $(ROOTGSDATADIR)/interfaces
    136 
    137 install-protofix:	install-target-cups install-target-ijs \
    138 			install-target-gs install-target-solaris
    139 	# apply the file attributes from the packaging
    140 	for pkg in $(COMPONENT_PACKAGES:sh) ; do \
    141 		$(SRC)/tools/protofix --pkg $$pkg --perm ; \
    142 	done
    143 
    144 $(VER)/config.status:	$(VER)/configure
    145 	(cd $(VER) ; env - $(TARGET_ENV) ./configure $(CONFIGURE_OPTIONS))
    146 
    147 $(VER)/configure:	$(VER)/configure.in
    148 	(cd $(VER) ; env - $(TARGET_ENV) autoconf)
    149 
    150 $(VER)/configure.in:	$(VER)/.patched
    151 	touch $@
    152 
    153 $(VER)/ijs/config.status:	$(VER)/ijs/configure
    154 	(cd $(VER)/ijs ; env - $(TARGET_ENV) ./configure $(CONFIGURE_OPTIONS))
    155 
    156 $(VER)/ijs/configure:	$(VER)/configure.in
    157 	(cd $(VER)/ijs ; env - $(TARGET_ENV) autogen.sh)
    158 
    159 clean:
    160 	-rm -rf $(VER)
    161 
    162 include ../Makefile.targ
    163 
    164 FRC:
    165