1# Copyright (C) 1997-2005 artofcode LLC. All rights reserved. 2# 3# This software is provided AS-IS with no warranty, either express or 4# implied. 5# 6# This software is distributed under license and may not be copied, 7# modified or distributed except as expressly authorized under the terms 8# of the license contained in the file LICENSE in this distribution. 9# 10# For more information about licensing, please refer to 11# http://www.ghostscript.com/licensing/. For information on 12# commercial licensing, go to http://www.artifex.com/licensing/ or 13# contact Artifex Software, Inc., 101 Lucas Valley Road #110, 14# San Rafael, CA 94903, U.S.A., +1(415)492-9861. 15 16# $Id: unixinst.mak,v 1.41 2005/06/29 14:21:27 giles Exp $ 17# Partial makefile common to all Unix and Desqview/X configurations, 18# containing the `install' targets. 19# This is the very last part of the makefile for these configurations. 20 21install: install-exec install-scripts install-data 22 23# The sh -c in the rules below is required because Ultrix's implementation 24# of sh -e terminates execution of a command if any error occurs, even if 25# the command traps the error with ||. 26 27# We include mkdirs for datadir, gsdir, and gsdatadir in all 3 install 28# rules, just in case bindir or scriptdir is a subdirectory of any of these. 29 30install-exec: STDDIRS $(GS_XE) 31 -mkdir -p $(datadir) 32 -mkdir -p $(gsdir) 33 -mkdir -p $(gsdatadir) 34 -mkdir -p $(bindir) 35 $(INSTALL_PROGRAM) $(GS_XE) $(bindir)/$(GS) 36 37install-scripts: $(PSLIBDIR)/gsnd 38 -mkdir -p $(datadir) 39 -mkdir -p $(gsdir) 40 -mkdir -p $(gsdatadir) 41 -mkdir -p $(scriptdir) 42 $(SH) -c 'for f in \ 43gsbj gsdj gsdj500 gslj gslp gsnd \ 44bdftops dumphint dvipdf eps2eps font2c \ 45pdf2dsc pdf2ps pdfopt pf2afm pfbtopfa printafm \ 46ps2ascii ps2epsi ps2pdf ps2pdf12 ps2pdf13 ps2pdf14 ps2pdfwr ps2ps wftopfa \ 47fixmswrd.pl lprsetup.sh pj-gs.sh pv.sh sysvlp.sh unix-lpr.sh ;\ 48 do if ( test -f $(PSLIBDIR)/$$f ); then \ 49 (cat $(PSLIBDIR)/$$f | sed -e "s/GS_EXECUTABLE=[^ \t]*/GS_EXECUTABLE=$(GS)/" > $(PSOBJDIR)/$$f); \ 50 $(INSTALL_PROGRAM) $(PSOBJDIR)/$$f $(scriptdir)/$$f; \ 51 fi;\ 52 done' 53 54PSRESDIR=$(PSLIBDIR)/../Resource 55PSDOCDIR=$(PSLIBDIR)/../doc 56PSEXDIR=$(PSLIBDIR)/../examples 57PSMANDIR=$(PSLIBDIR)/../man 58 59install-data: install-libdata install-resdata install-doc install-man install-examples 60 61# There's no point in providing a complete dependency list: we include 62# one file from each subdirectory just as a sanity check. 63 64install-libdata: 65 -mkdir -p $(datadir) 66 -mkdir -p $(gsdir) 67 -mkdir -p $(gsdatadir) 68 -mkdir -p $(gsdatadir)/lib 69 $(SH) -c 'for f in \ 70Fontmap Fontmap.GS cidfmap \ 71FAPIcidfmap FAPIconfig FAPIfontmap xlatmap \ 72ht_ccsto.ps \ 73acctest.ps addxchar.ps align.ps bdftops.ps \ 74caption.ps cid2code.ps decrypt.ps docie.ps dumphint.ps \ 75errpage.ps font2c.ps font2pcl.ps gslp.ps gsnup.ps image-qa.ps impath.ps \ 76jispaper.ps landscap.ps level1.ps lines.ps markhint.ps markpath.ps \ 77packfile.ps pcharstr.ps pf2afm.ps pfbtopfa.ps ppath.ps prfont.ps printafm.ps \ 78ps2ai.ps ps2ascii.ps ps2epsi.ps quit.ps rollconv.ps \ 79showchar.ps showpage.ps stcinfo.ps stcolor.ps stocht.ps \ 80traceimg.ps traceop.ps type1enc.ps type1ops.ps uninfo.ps unprot.ps \ 81viewcmyk.ps viewgif.ps viewjpeg.ps viewmiff.ps \ 82viewpcx.ps viewpbm.ps viewps2a.ps \ 83winmaps.ps wftopfa.ps wrfont.ps zeroline.ps \ 84pdf2dsc.ps pdfopt.ps ;\ 85 do if ( test -f $(PSLIBDIR)/$$f ); then $(INSTALL_DATA) $(PSLIBDIR)/$$f $(gsdatadir)/lib; fi;\ 86 done' 87 $(SH) -c 'for f in $(PSLIBDIR)/gs_*.ps $(PSLIBDIR)/pdf*.ps;\ 88 do $(INSTALL_DATA) $$f $(gsdatadir)/lib ;\ 89 done' 90 $(SH) -c 'for f in $(PSLIBDIR)/*.ppd $(PSLIBDIR)/*.rpd $(PSLIBDIR)/*.upp $(PSLIBDIR)/*.xbm $(PSLIBDIR)/*.xpm;\ 91 do $(INSTALL_DATA) $$f $(gsdatadir)/lib ;\ 92 done' 93 94# install the default resource files 95# copy in every category (directory) but CVS 96RES_CATEGORIES=`ls $(PSRESDIR) | grep -v CVS` 97install-resdata: $(PSRESDIR)/Decoding/Unicode 98 -mkdir -p $(datadir) 99 -mkdir -p $(gsdir) 100 -mkdir -p $(gsdatadir)/Resource 101 $(SH) -c 'for dir in $(RES_CATEGORIES); do \ 102 rdir=$(gsdatadir)/Resource/$$dir ; \ 103 test -d $$rdir || mkdir -p $$rdir ; \ 104 for file in $(PSRESDIR)/$$dir/*; do \ 105 if test -f $$file; then $(INSTALL_DATA) $$file $$rdir ; fi \ 106 done \ 107 done' 108 109# install html documentation 110DOC_PAGES=PUBLIC README index.html gs.css \ 111 API.htm Bug-form.htm Bug-info.htm \ 112 C-style.htm Changes.htm Commprod.htm Copying.htm \ 113 Current.htm Deprecated.htm \ 114 DLL.htm Deprecated.htm Develop.htm Devices.htm Drivers.htm \ 115 Fonts.htm Helpers.htm Hershey.htm \ 116 History1.htm History2.htm History3.htm History4.htm \ 117 History5.htm History6.htm History7.htm History8.htm \ 118 Details.htm Details8.htm \ 119 Htmstyle.htm Humor.htm Issues.htm Install.htm Language.htm \ 120 Lib.htm Maintain.htm Make.htm New-user.htm \ 121 News.htm Projects.htm Ps-style.htm Ps2epsi.htm Ps2pdf.htm \ 122 Psfiles.htm Public.htm Readme.htm Release.htm \ 123 Source.htm Testing.htm Unix-lpr.htm \ 124 Use.htm Xfonts.htm 125install-doc: $(PSDOCDIR)/News.htm 126 -mkdir -p $(docdir) 127 $(SH) -c 'for f in $(DOC_PAGES) ;\ 128 do if ( test -f $(PSDOCDIR)/$$f ); then $(INSTALL_DATA) $(PSDOCDIR)/$$f $(docdir); fi;\ 129 done' 130 131# install the man pages for each locale 132MAN_LCDIRS=. de 133MAN1_LINKS_PS2PS=eps2eps 134MAN1_LINKS_PS2PDF=ps2pdf12 ps2pdf13 135MAN1_LINKS_GSLP=gsbj gsdj gsdj500 gslj 136install-man: $(PSMANDIR)/gs.1 137 $(SH) -c 'test -d $(mandir) || mkdir -p $(mandir)' 138 $(SH) -c 'for d in $(MAN_LCDIRS) ;\ 139 do man1dir=$(mandir)/$$d/man$(man1ext) ;\ 140 ( test -d $$man1dir || mkdir -p $$man1dir ) ;\ 141 for f in $(PSMANDIR)/$$d/*.1 ;\ 142 do $(INSTALL_DATA) $$f $$man1dir ;\ 143 if ( test -f $$man1dir/ps2ps.$(man1ext) ) ;\ 144 then for f in $(MAN1_LINKS_PS2PS) ;\ 145 do ( cd $$man1dir; rm -f $$f.$(man1ext) ;\ 146 ln -s ps2ps.$(man1ext) $$f.$(man1ext) ) ;\ 147 done ;\ 148 fi ;\ 149 if ( test -f $$man1dir/ps2pdf.$(man1ext) ) ;\ 150 then for f in $(MAN1_LINKS_PS2PDF) ;\ 151 do ( cd $$man1dir; rm -f $$f.$(man1ext) ;\ 152 ln -s ps2pdf.$(man1ext) $$f.$(man1ext) ) ;\ 153 done ;\ 154 fi ;\ 155 if ( test -f $$man1dir/ps2lp.$(man1ext) ) ;\ 156 then for f in $(MAN1_LINKS_GSLP) ;\ 157 do ( cd $$man1dir; rm -f $$f.$(man1ext) ;\ 158 ln -s gslp.$(man1ext) $$f.$(man1ext) ) ;\ 159 done ;\ 160 fi ;\ 161 done ;\ 162 done' 163 164# install the example files 165install-examples: 166 -mkdir -p $(exdir) 167 for f in \ 168alphabet.ps annots.pdf chess.ps colorcir.ps doretree.ps escher.ps \ 169golfer.eps grayalph.ps snowflak.ps tiger.eps vasarely.ps waterfal.ps \ 170ridt91.eps ;\ 171 do $(INSTALL_DATA) $(PSEXDIR)/$$f $(exdir) ;\ 172 done 173