# Makefile for PS utilities release 1 patchlevel 17 # # Copyright (C) Angus J. C. Duggan 1991-1996 # See file LICENSE for details. # # updated AJCD 3/1/96 # # Multiple makefiles for different OSes are generated from a single master # now. # # There are so many incompatible makes around that putting all of the # non-standard targets explicitly seems to be the only way of ensuring # portability. # epsffit fits an epsf file to a given bounding box # psbook rearranges pages into signatures # psselect selects page ranges # pstops performs general page rearrangement and merging # psnup puts multiple logical pages on one physical page # psresize scales and moves pages to fit on different paper sizes PAPER=a4 # Makefile for PSUtils under OS/2, GCC C Compiler OS = OS2 BINDIR = \psutils SCRIPTDIR = $(BINDIR) INCLUDEDIR = /lib/psutils PERL = perl5 BINMODE = 0755 MANMODE = 0644 CHMOD = chmod INSTALL = install -c -m $(BINMODE) INSTALLMAN = install -c -m $(MANMODE) MANEXT = 1 MANDIR = /man/man$(MANEXT) CC = gcc CFLAGS = -DPAPER=\"$(PAPER)\" -DOS2 -Wall -O2 -Zomf -Zmtd -s -Zlinker /PM:VIO .c.obj: $(CC) -o $*.obj $(CFLAGS) -c $< BIN = psbook.exe psselect.exe pstops.exe epsffit.exe psnup.exe \ psresize.exe SHELLSCRIPTS = getafm.cmd showchar.cmd PERLSCRIPTS = fixfmps.cmd fixmacps.cmd fixpsditps.cmd fixpspps.cmd \ fixtpps.cmd fixwfwps.cmd fixwpps.cmd fixscribeps.cmd fixwwps.cmd \ fixdlsrps.cmd extractres.cmd includeres.cmd psmerge.cmd MANPAGES = psbook.$(MANEXT) psselect.$(MANEXT) pstops.$(MANEXT) epsffit.$(MANEXT) psnup.$(MANEXT) \ psresize.$(MANEXT) psmerge.$(MANEXT) fixscribeps.$(MANEXT) getafm.$(MANEXT) \ fixdlsrps.$(MANEXT) fixfmps.$(MANEXT) fixmacps.$(MANEXT) fixpsditps.$(MANEXT) \ fixpspps.$(MANEXT) fixtpps.$(MANEXT) fixwfwps.$(MANEXT) fixwpps.$(MANEXT) \ fixwwps.$(MANEXT) extractres.$(MANEXT) includeres.$(MANEXT) INCLUDES = md68_0.ps md71_0.ps all: $(BIN) $(PERLSCRIPTS) $(MANPAGES) $(SHELLSCRIPTS) psutil.obj: psutil.h patchlev.h pserror.h psutil.c psspec.obj: psutil.h patchlev.h psspec.h pserror.h psspec.c pserror.obj: psutil.h patchlev.h pserror.h pserror.c epsffit.obj: epsffit.c pserror.h patchlev.h epsffit.exe: epsffit.obj pserror.obj $(CC) $(CFLAGS) -o epsffit pserror.obj epsffit.obj psnup.exe: psnup.obj psutil.obj psspec.obj pserror.obj $(CC) $(CFLAGS) -o psnup psutil.obj psspec.obj pserror.obj psnup.obj psnup.obj: psutil.h patchlev.h psspec.h pserror.h psnup.c psresize.exe: psresize.obj psutil.obj pserror.obj psspec.obj $(CC) $(CFLAGS) -o psresize psutil.obj psspec.obj pserror.obj psresize.obj psresize.obj: psutil.h patchlev.h psspec.h pserror.h psresize.c psbook.exe: psbook.obj psutil.obj pserror.obj $(CC) $(CFLAGS) -o psbook psutil.obj pserror.obj psbook.obj psbook.obj: psutil.h patchlev.h pserror.h psbook.c psselect.exe: psselect.obj psutil.obj pserror.obj $(CC) $(CFLAGS) -o psselect psutil.obj pserror.obj psselect.obj psselect.obj: psutil.h patchlev.h pserror.h psselect.c pstops.exe: pstops.obj psutil.obj psspec.obj pserror.obj $(CC) $(CFLAGS) -o pstops psutil.obj psspec.obj pserror.obj pstops.obj pstops.obj: psutil.h patchlev.h psspec.h pserror.h pstops.c getafm.cmd: getafm.sh echo extproc sh $(BINDIR)/$@ >$@ head -n 2 $? >>$@ echo shift >>$@ tail -n +2 $? >>$@ showchar.cmd: showchar.sh echo extproc sh $(BINDIR)/$@ >$@ head -n 5 $? >>$@ echo shift >>$@ tail -n +5 $? >>$@ psmerge.cmd: psmerge.pl $(PERL) maketext OS=$(OS) PERL=$(PERL) $? > $@ $(CHMOD) $(BINMODE) $@ fixfmps.cmd: fixfmps.pl $(PERL) maketext OS=$(OS) PERL=$(PERL) $? > $@ $(CHMOD) $(BINMODE) $@ fixmacps.cmd: fixmacps.pl $(PERL) maketext OS=$(OS) PERL=$(PERL) INCLUDE=$(INCLUDEDIR) $? > $@ $(CHMOD) $(BINMODE) $@ fixpsditps.cmd: fixpsditps.pl $(PERL) maketext OS=$(OS) PERL=$(PERL) $? > $@ $(CHMOD) $(BINMODE) $@ fixpspps.cmd: fixpspps.pl $(PERL) maketext OS=$(OS) PERL=$(PERL) $? > $@ $(CHMOD) $(BINMODE) $@ fixscribeps.cmd: fixscribeps.pl $(PERL) maketext OS=$(OS) PERL=$(PERL) $? > $@ $(CHMOD) $(BINMODE) $@ fixtpps.cmd: fixtpps.pl $(PERL) maketext OS=$(OS) PERL=$(PERL) $? > $@ $(CHMOD) $(BINMODE) $@ fixwfwps.cmd: fixwfwps.pl $(PERL) maketext OS=$(OS) PERL=$(PERL) $? > $@ $(CHMOD) $(BINMODE) $@ fixwpps.cmd: fixwpps.pl $(PERL) maketext OS=$(OS) PERL=$(PERL) $? > $@ $(CHMOD) $(BINMODE) $@ fixwwps.cmd: fixwwps.pl $(PERL) maketext OS=$(OS) PERL=$(PERL) $? > $@ $(CHMOD) $(BINMODE) $@ fixdlsrps.cmd: fixdlsrps.pl $(PERL) maketext OS=$(OS) PERL=$(PERL) $? > $@ $(CHMOD) $(BINMODE) $@ extractres.cmd: extractres.pl $(PERL) maketext OS=$(OS) PERL=$(PERL) $? > $@ $(CHMOD) $(BINMODE) $@ includeres.cmd: includeres.pl $(PERL) maketext OS=$(OS) PERL=$(PERL) INCLUDE=$(INCLUDEDIR) $? > $@ $(CHMOD) $(BINMODE) $@ epsffit.$(MANEXT): epsffit.man $(PERL) maketext MAN="$(MANPAGES)" $? > $@ psnup.$(MANEXT): psnup.man $(PERL) maketext MAN="$(MANPAGES)" PAPER=$(PAPER) $? > $@ psresize.$(MANEXT): psresize.man $(PERL) maketext MAN="$(MANPAGES)" PAPER=$(PAPER) $? > $@ psbook.$(MANEXT): psbook.man $(PERL) maketext "MAN=$(MANPAGES)" $? > $@ psselect.$(MANEXT): psselect.man $(PERL) maketext "MAN=$(MANPAGES)" $? > $@ pstops.$(MANEXT): pstops.man $(PERL) maketext "MAN=$(MANPAGES)" PAPER=$(PAPER) $? > $@ psmerge.$(MANEXT): psmerge.man $(PERL) maketext "MAN=$(MANPAGES)" $? > $@ fixfmps.$(MANEXT): fixfmps.man $(PERL) maketext "MAN=$(MANPAGES)" $? > $@ fixmacps.$(MANEXT): fixmacps.man $(PERL) maketext "MAN=$(MANPAGES)" INCLUDE=$(INCLUDEDIR) $? > $@ fixpsditps.$(MANEXT): fixpsditps.man $(PERL) maketext "MAN=$(MANPAGES)" $? > $@ fixpspps.$(MANEXT): fixpspps.man $(PERL) maketext "MAN=$(MANPAGES)" $? > $@ fixscribeps.$(MANEXT): fixscribeps.man $(PERL) maketext "MAN=$(MANPAGES)" $? > $@ fixtpps.$(MANEXT): fixtpps.man $(PERL) maketext "MAN=$(MANPAGES)" $? > $@ fixwfwps.$(MANEXT): fixwfwps.man $(PERL) maketext "MAN=$(MANPAGES)" $? > $@ fixwpps.$(MANEXT): fixwpps.man $(PERL) maketext "MAN=$(MANPAGES)" $? > $@ fixwwps.$(MANEXT): fixwwps.man $(PERL) maketext "MAN=$(MANPAGES)" $? > $@ fixdlsrps.$(MANEXT): fixdlsrps.man $(PERL) maketext "MAN=$(MANPAGES)" $? > $@ extractres.$(MANEXT): extractres.man $(PERL) maketext "MAN=$(MANPAGES)" $? > $@ includeres.$(MANEXT): includeres.man $(PERL) maketext "MAN=$(MANPAGES)" INCLUDE=$(INCLUDEDIR) $? > $@ getafm.$(MANEXT): getafm.man $(PERL) maketext "MAN=$(MANPAGES)" $? > $@ clean: RM *.obj veryclean realclean: clean RM $(BIN) $(PERLSCRIPTS) $(MANPAGES) install: install.bin install.script install.include install.man install.bin: $(BIN) -mkdir $(BINDIR) @for %1 in ( $(BIN) ) do copy %1 $(BINDIR) install.script: $(PERLSCRIPTS) -mkdir $(SCRIPTDIR) @for %1 in ( $(PERLSCRIPTS) ) do copy %1 $(SCRIPTDIR) install.include: $(INCLUDES) -mkdir $(INCLUDEDIR) @for %1 in ( $(INCLUDES) ) do copy %1 $(INCLUDEDIR) install.man: $(MANPAGES) -mkdir $(MANDIR) @for %1 in ( $(MANPAGES) ); do copy %1 $(MANDIR)