ifeq ($(SRCDIR)x,x) SRCDIR = $(CURDIR)/.. BUILDDIR = $(SRCDIR) endif SUBDIR = analyzer VPATH=.:$(SRCDIR)/$(SUBDIR) include $(BUILDDIR)/config.mk # We tend to separate out the build targets so that we don't have # any more dependencies for a given target than it really needs. # That way, if there is a problem with a dependency, we can still # successfully build all the stuff that doesn't depend upon it. # This package is so big, it's useful even when some parts won't # build. PORTBINARIES = \ pamfind \ pamgetcolor \ pamfile \ pammosaicknit \ pamslice \ pamsumm \ pamtable \ pamtilt \ pbmminkowski \ pgmhist \ pnmhistmap \ ppmhist \ pgmminkowski \ MATHBINARIES = \ pamsharpmap \ pamsharpness \ pgmtexture \ pnmpsnr \ BINARIES = $(PORTBINARIES) $(MATHBINARIES) SCRIPT = OBJECTS = $(BINARIES:%=%.o) # We don't include programs that have special library dependencies in the # merge scheme, because we don't want those dependencies to prevent us # from building all the other programs. MERGEBINARIES = $(BINARIES) MERGE_OBJECTS = $(MERGEBINARIES:%=%.o2) HAVE_MERGE_COMPAT=YES .PHONY: all all: $(BINARIES) include $(SRCDIR)/common.mk install.bin install.merge: install.bin.local .PHONY: install.bin.local install.bin.local: $(PKGDIR)/bin # Remember that $(SYMLINK) might just be a copy command. cd $(PKGDIR)/bin ; \ $(SYMLINK) pamslice$(EXE) pgmslice$(EXE) cd $(PKGDIR)/bin ; \ $(SYMLINK) pamfile$(EXE) pnmfile$(EXE) mergecomptrylist: cat /dev/null >$@ echo "TRY(\"pgmslice\", main_pamslice);" >>$@ echo "TRY(\"pnmfile\", main_pamfile);" >>$@ FORCE: