--- /dev/null
+#
+# This Makefile should run fine with both pmake and gmake
+#
+
+CC = @CC@
+CFLAGS = @CFLAGS@ @DEFS@ @NO_GETOPT@ @NO_LIBPAPER@ @NO_STRERROR@
+RANLIB = @RANLIB@
+
+INSTALL = @INSTALL@
+
+LDFLAGS = -L. -l$(TARGET) @LIBPAPER@
+
+prefix = @prefix@
+BINDIR = $(prefix)/bin
+LIBDIR = $(prefix)/lib
+INCDIR = $(prefix)/include
+MAN1DIR = $(prefix)/man/man1
+MAN3DIR = $(prefix)/man/man3
+INFODIR = $(prefix)/info
+
+# getopt may be installed or not, if not take our copy
+GETOPT_O = @GETOPT_O@
+
+TARGET = barcode
+LIBRARY = lib$(TARGET).a
+MAN1 = $(TARGET).1
+MAN3 = $(TARGET).3
+INFO = doc/$(TARGET).info
+HEADER = $(TARGET).h
+
+LIBOBJECTS = library.o ean.o code128.o code39.o code93.o i25.o \
+ msi.o plessey.o codabar.o \
+ ps.o pcl.o
+EXEOBJECTS = main.o cmdline.o $(GETOPT_O)
+ALLSOURCES = $(LIBOBJECTS:.o=.c) $(EXEOBJECT:.o=.c)
+
+
+#Hmm... "RM" is undefined in pmake
+RM = rm
+
+all: $(TARGET) $(LIBRARY) $(MAN1) $(MAN3) $(INFO) sample
+
+$(TARGET): $(LIBRARY) $(EXEOBJECTS)
+ $(CC) $(CFLAGS) $(EXEOBJECTS) $(LDFLAGS) -o $(TARGET)
+
+sample: sample.o $(LIBRARY)
+ $(CC) $(CFLAGS) sample.o $(LDFLAGS) -o $@
+
+# Avoid the standard CFLAGS, to avoid -Wall and -DNO_GETOPT
+compat/getopt.o: compat/getopt.c
+ $(CC) -O -c compat/getopt.c -o $@
+
+$(LIBRARY): $(LIBOBJECTS)
+ $(AR) r $(LIBRARY) $(LIBOBJECTS)
+ $(RANLIB) $(LIBRARY)
+
+$(MAN1) $(MAN3): doc/doc.$(TARGET)
+ awk -f doc/manpager doc/doc.$(TARGET)
+
+
+# Unfortunately, pmake has no "-C". Also, "pmake -n" doesn't follow the cd.
+$(INFO): doc/doc.$(TARGET)
+ cd doc && $(MAKE)
+
+install:
+ $(INSTALL) -d $(BINDIR) $(INCDIR) $(LIBDIR) $(MAN1DIR) \
+ $(MAN3DIR) $(INFODIR)
+ $(INSTALL) -c $(TARGET) $(BINDIR)
+ $(INSTALL) -c -m 0644 $(HEADER) $(INCDIR)
+ $(INSTALL) -c -m 0644 $(LIBRARY) $(LIBDIR)
+ $(INSTALL) -c -m 0644 $(MAN1) $(MAN1DIR)
+ $(INSTALL) -c -m 0644 $(MAN3) $(MAN3DIR)
+ $(INSTALL) -c -m 0644 $(INFO) $(INFODIR)
+
+uninstall:
+ $(RM) -f $(BINDIR)/$(TARGET)
+ $(RM) -f $(INCDIR)/$(HEADER)
+ $(RM) -f $(LIBDIR)/$(LIBRARY)
+ $(RM) -f $(MAN1DIR)/$(MAN1)
+ $(RM) -f $(MAN3DIR)/$(MAN3)
+ $(RM) -f $(INDODIR)/$(INFO)
+
+#Make clean keeps the compiled documents
+clean:
+ $(RM) -f *.o */*.o *~ */*~ $(TARGET) $(LIBRARY)
+ $(RM) -f $(MAN1) $(MAN3) core sample
+ cd doc && $(MAKE) terse
+ $(RM) -f .depend
+
+distclean: clean
+ if [ -f build ]; then debian/rules clean; fi
+ # remove the configure stuff as well
+ $(RM) -f Makefile config.h config.log config.status config.cache \
+ doc/Makefile
+
+cleanest: clean
+ cd doc && $(MAKE) clean
+
+Makefile: Makefile.in configure
+ ./configure
+
+configure: configure.in
+ autoconf
+
+.depend: $(ALLSOURCES)
+ $(CC) $(CFLAGS) -MM $(ALLSOURCES) > $@
+
+depend: .depend
+
+tar:
+ @if [ "x" = "x$(RELEASE)" ]; then \
+ n=`basename \`pwd\``; cd ..; tar cvf - $$n | gzip > $$n.tar.gz; \
+ echo 'you can set a numeric $$(RELEASE) to make a named tar'; \
+ else \
+ if [ -d ../$(TARGET)-$(RELEASE) ]; then \
+ rm -rf ../$(TARGET)-$(RELEASE); \
+ fi; \
+ mkdir ../$(TARGET)-$(RELEASE) || exit 1; \
+ cp -a . ../$(TARGET)-$(RELEASE) && cd .. && \
+ tar --exclude '*/CVS*' \
+ -cvzf $(TARGET)-$(RELEASE).tar.gz $(TARGET)-$(RELEASE); \
+ fi
+
+# print the version, as I usually forget to update it when distributing
+printv:
+ @grep -n VERSION $(HEADER) /dev/null
+ @grep -n set.version doc/doc.$(TARGET) /dev/null
+ @grep -n dpkg.-i INSTALL /dev/null
+
+# and this is how I make the distribution
+distrib: $(INFO) distclean tar printv
+
+
+.PHONY: all install uninstall mostlyclean clean disclean depend \
+ tar printv distrib
+
+# Only if make is gmake, have a rule to conditionally include .depend
+@GMAKEDEPEND0@
+@GMAKEDEPEND1@
+@GMAKEDEPEND2@
+