include Makefile.inc srcdir= @srcdir@ VPATH = @srcdir@ top_srcdir= @top_srcdir@ INSTALL= @INSTALL@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ #LIBEFENCE = -lefence #DEBUG = -g installprefix=$(ROOT) #LIBEFENCE = -lefence CVSTAG = r$(subst .,-,$(VERSION)) ################################### Leave this stuff alone ### These are variables meant to be exported BINDIR=$(prefix)/bin RPMBINDIR=$(subst usr/bin,bin,$(BINDIR)) MANDIR=$(prefix)/man/man8 LIBDIR=$(libdir) INCDIR=$(prefix)/include/rpm ETCDIR=$(ROOT)/etc # ----------------------------------------------------------------------- SUBDIRS = popt @MISCDIR@ lib build tools @PO@ ALLSUBDIRS = popt misc lib build tools po INSTSUBDIRS = lib @PO@ OTHERSUBDIRS = docs autodeps OBJS = rpm.o query.o install.o verify.o checksig.o ftp.o url.o build.o \ @GETTEXTSTUB@ PROGS = @RPM@ rpm2cpio LIBS = @LIBS@ @LIBINTL@ @LIBDL@ LOADLIBES = -lrpmbuild -lpopt -lrpm @LIBMISC@ LDFLAGS_STATIC = @LDFLAGS_STATIC@ SOURCES = $(subst .o,.c,$(OBJS)) ifeq (.depend-done,$(wildcard .depend-done)) TARGET=everything else TARGET=@TARGET@ endif all: $(TARGET) rpm: lib/librpm.a build/librpmbuild.a @MISCPATH@ $(OBJS) $(CC) -o rpm $(LDFLAGS_STATIC) $(OBJS) $(LDFLAGS) $(LOADLIBES) $(LIBS) \ $(LIBEFENCE) rpm.shared: lib/librpm.a build/librpmbuild.a $(OBJS) $(CC) -o rpm.shared $(LDFLAGS) $(OBJS) $(LOADLIBES) $(LIBS) \ $(LIBEFENCE) # we don't normally build this, so ./configure doesn't try very hard # to make it work rpmconvert: lib/librpm.a convertdb.o oldrpmdb.o $(CC) -o rpmconvert $(LDFLAGS) convertdb.o oldrpmdb.o -lgdbm \ $(LOADLIBES) $(LIBS) rpm2cpio: lib/librpm.a rpm2cpio.o $(CC) -o rpm2cpio $(LDFLAGS) rpm2cpio.o $(LOADLIBES) $(LIBS) rpm.o: rpm.c query.h install.h lib/rpmlib.h Makefile $(CC) $(CFLAGS) -DRPMNLSPACKAGE=\"$(RPMNLSPACKAGE)\" \ -DRPMNLSDIR=\"$(RPMNLSDIR)\" \ -DVERSION=\"$(VERSION)\" \ -DLIBRPMALIAS_FILENAME="\"$(LIBRPMALIAS_FILENAME)"\" \ -c $(srcdir)/rpm.c # these rules should be in here, but they drive me batty #Makefile: Makefile.in misc/Makefile.in lib/Makefile.in build/Makefile.in \ #tools/Makefile.in po/Makefile.in config.status #sh ./config.status #config.status: configure #sh ./config.status --recheck #configure: configure.in #cd $(srcdir); autoconf everything: make-subdirs $(PROGS) make-subdirs: for d in $(SUBDIRS); do \ (cd $$d; $(MAKE)) \ || case "$(MFLAGS)" in *k*) fail=yes;; *) exit 1;; esac;\ done && test -z "$$fail" newtree: rm -f RCS ln -sf /usr/rhs/RCS/rpm-2.0 RCS for d in $(SUBDIRS) $(OTHERSUBDIRS); do \ mkdir -p $$d ;\ (cd $$d; rm -f RCS; ln -sf /usr/rhs/RCS/rpm-2.0/$$d RCS) \ || case "$(MFLAGS)" in *k*) fail=yes;; *) exit 1;; esac;\ done && test -z "$$fail" $(PROGS): $(OBJS) install: all [ -d $(installprefix)/$(RPMBINDIR) ] || \ mkdir -p $(installprefix)/$(RPMBINDIR) [ -d $(installprefix)/$(RPMNLSDIR) ] || \ mkdir -p $(installprefix)/$(RPMNLSDIR) [ -d $(installprefix)/$(BINDIR) ] || mkdir -p $(installprefix)/$(BINDIR) [ -d $(installprefix)/$(MANDIR) ] || mkdir -p $(installprefix)/$(MANDIR) [ -d $(installprefix)/$(ETCDIR) ] || mkdir -p $(installprefix)/$(ETCDIR) [ -d $(installprefix)/$(LIBDIR) ] || mkdir -p $(installprefix)/$(LIBDIR) [ -d $(installprefix)/$(INCDIR) ] || mkdir -p $(installprefix)/$(INCDIR) [ -d $(installprefix)/$(RPMCONFIGDIR) ] || \ mkdir -p $(installprefix)/$(INCDIR) if [ -x ./rpm ]; then \ $(INSTALL_PROGRAM) -s -m 755 rpm $(installprefix)/$(RPMBINDIR); \ else \ $(INSTALL_PROGRAM) -s -m 755 rpm.shared $(installprefix)/$(RPMBINDIR)/rpm; \ fi $(INSTALL_PROGRAM) -m 755 $(srcdir)/gendiff $(installprefix)/$(BINDIR) $(INSTALL_PROGRAM) -m 755 $(topdir)/find-provides.sh $(installprefix)/$(BINDIR)/find-provides $(INSTALL_PROGRAM) -m 755 $(topdir)/find-requires.sh $(installprefix)/$(BINDIR)/find-requires $(INSTALL_PROGRAM) -s -m 755 rpm2cpio $(installprefix)/$(BINDIR) $(INSTALL_DATA) -m 644 $(srcdir)/rpm.8 $(installprefix)/$(MANDIR) $(INSTALL_DATA) -m 644 $(srcdir)/rpm2cpio.8 $(installprefix)/$(MANDIR) $(INSTALL_DATA) -m 644 $(topdir)/lib-rpmrc $(installprefix)/$(LIBDIR)/rpmrc $(INSTALL_DATA) -m 644 $(srcdir)/rpmpopt $(installprefix)/$(LIBDIR)/rpmpopt (cd lib; $(MAKE) LIBDIR=$(installprefix)/$(LIBDIR) INCDIR=$(installprefix)/$(INCDIR) install) for d in $(INSTSUBDIRS); do \ (cd $$d; $(MAKE) installprefix=$(installprefix) LIBDIR=$(installprefix)/$(LIBDIR) INCDIR=$(installprefix)/$(INCDIR) install) ;\ done .PHONY: tar tar: rm -rf /tmp/rpm-$(VERSION) make installprefix=/tmp/rpm-$(VERSION)$(ROOT) install mkdir -p /tmp/rpm-$(VERSION)@prefix@/src/redhat/SOURCES mkdir -p /tmp/rpm-$(VERSION)@prefix@/src/redhat/SPECS mkdir -p /tmp/rpm-$(VERSION)@prefix@/src/redhat/SRPMS mkdir -p /tmp/rpm-$(VERSION)@prefix@/src/redhat/RPMS mkdir -p /tmp/rpm-$(VERSION)@prefix@/src/redhat/BUILD mkdir -p /tmp/rpm-$(VERSION)@varprefix@/lib/rpm mkdir -p /tmp/rpm-$(VERSION)/var/tmp # Couldn't figure de ARCH value # mkdir -p /tmp/rpm-$(VERSION)/usr/local/src/redhat/RPMS/i386 cd /tmp/rpm-$(VERSION) ; tar cvf /tmp/rpm-$(VERSION).tar . .PHONY: clean clean: for d in $(ALLSUBDIRS); do \ (cd $$d; $(MAKE) $@) ;\ done rm -f *.a *.o core *~ $(PROGS) rpm.shared find . -name "*.orig" -exec rm {} \; find . -name core -exec rm {} \; .PHONY: distclean distclean: for d in $(ALLSUBDIRS); do \ (cd $$d; $(MAKE) $@) ;\ done rm -f *.a *.o core *~ $(PROGS) rpm.shared librpmrc find-provides.sh find-requires.sh rm -f .depend-done Makefile Makefile.inc config.h config.cache rm -f config.status config.log lib-rpmrc .PHONY: depend depend: topdir_path=`( cd $(top_srcdir) && pwd )` ; \ $(CPP) -MM $(CFLAGS) $(srcdir)/$(SOURCES) | \ sed s+$$topdir_path+$(top_srcdir)+g > .depend ; \ for d in $(ALLSUBDIRS); do \ (cd $$d; $(MAKE) $@) ;\ done echo > .depend-done .PHONY: noconfig noconfig: find . -name "Makefile" -exec rm {} \; rm -f *gz *rpm config.* .PHONY: archive archive: @echo " " @echo "I hope you checked everything out and made sure it builds" @echo "maybe someday Erik will get around to making that automatic." @echo @echo "This is version $(VERSION)." @sleep 5 cvs tag -F $(CVSTAG) . @rm -rf /tmp/rpm-$(VERSION) /tmp/rpm @cd /tmp; cvs export -r$(CVSTAG) rpm @mv /tmp/rpm /tmp/rpm-$(VERSION) @rm /tmp/rpm-$(VERSION)/popt/popt.spec @cd /tmp/rpm-$(VERSION); ./autogen.sh ; make depend; make distclean @cd /tmp/rpm-$(VERSION); ./autogen.sh --noconfigure @cd /tmp; tar czSpf rpm-$(VERSION).tar.gz rpm-$(VERSION) @rm -rf /tmp/rpm-$(VERSION) @cp /tmp/rpm-$(VERSION).tar.gz . @rm -f /tmp/rpm-$(VERSION).tar.gz @echo " " @echo "The final archive is ./rpm-$(VERSION).tar.gz." ifeq (.depend,$(wildcard .depend)) include .depend endif