1 # Top level Makefile for rpm
3 AUTOMAKE_OPTIONS = 1.4 foreign
5 EXTRA_DIST = CHANGES CREDITS GROUPS README.amiga INSTALL \
6 RPM-GPG-KEY RPM-PGP-KEY \
7 autodeps/none autodeps/*.prov autodeps/*.req autogen.sh \
8 gendiff installplatform platform* \
9 po/*.in po/*.po po/rpm.pot \
10 python/*.am python/*.in python/*.c python/*.h python/testit \
11 rpm.magic rpmpopt-$(VERSION) rpmqv.c rpm.spec
13 EXTRA_PROGRAMS = rpmconvert
15 # XXX TODO: python perl
16 SUBDIRS = intl po popt rpmio lib build misc tools scripts tests doc .
18 INCLUDES = -I$(top_srcdir)/build -I$(top_srcdir)/lib -I$(top_srcdir)/rpmio \
19 -I$(top_srcdir)/popt @INCPATH@
23 myLDFLAGS = # -L$(top_builddir)/build/.libs -L$(top_builddir)/lib/.libs \
24 -L$(top_builddir)/rpmio/.libs -L$(top_builddir)/popt/.libs
26 # XXX libtool can/should generate dependent libs.
27 # XXX solaris2.6 cannot use *.la with --all-static (downrev binutils/egcs?)
28 # XXX top_builddir ldpaths are wrong building in tree
29 myLDADD = $(top_builddir)/build/librpmbuild.la $(top_builddir)/lib/librpm.la \
30 $(top_builddir)/rpmio/librpmio.la $(top_builddir)/popt/libpopt.la \
33 rpmbindir = `echo $(bindir) | sed -e s,usr/bin,bin,`
36 bin_PROGRAMS = rpm2cpio
39 noinst_PROGRAMS = @BUILD_RPMCONVERT@
41 pkglibdir = @RPMCONFIGDIR@
42 pkglib_PROGRAMS = rpmb rpmdb rpmi rpmk rpmq
43 pkglib_DATA = rpmrc rpmpopt-$(VERSION) macros
44 pkglib_SCRIPTS = find-provides find-requires mkinstalldirs \
45 config.guess config.sub
47 rpmpopt-$(VERSION): rpmpopt
51 acconfig.h build.h system.h
54 rpm_LDFLAGS = @LDFLAGS_STATIC@ $(myLDFLAGS)
55 rpm_LDADD = $(myLDADD) @LIBMISC@
57 rpmb_SOURCES = build.c
58 rpmb_LDFLAGS = $(myLDFLAGS)
59 rpmb_LDADD = rpmb.o $(myLDADD)
61 $(COMPILE) -DIAM_RPMBT -o $@ -c $<
64 rpmdb_LDFLAGS = $(myLDFLAGS)
65 rpmdb_LDADD = rpmdb.o $(myLDADD)
67 $(COMPILE) -DIAM_RPMDB -o $@ -c $<
70 rpmi_LDFLAGS = $(myLDFLAGS)
71 rpmi_LDADD = rpmi.o $(myLDADD)
73 $(COMPILE) -DIAM_RPMEIU -o $@ -c $<
76 rpmk_LDFLAGS = $(myLDFLAGS)
77 rpmk_LDADD = rpmk.o $(myLDADD)
79 $(COMPILE) -DIAM_RPMK -o $@ -c $<
82 rpmq_LDFLAGS = $(myLDFLAGS)
83 rpmq_LDADD = rpmq.o $(myLDADD)
85 $(COMPILE) -DIAM_RPMQV -o $@ -c $<
87 rpm2cpio_SOURCES = rpm2cpio.c
88 rpm2cpio_LDFLAGS = @LDFLAGS_STATIC@ $(myLDFLAGS)
89 rpm2cpio_LDADD = $(myLDADD) @LIBMISC@
91 rpmconvert_SOURCES = convertdb.c oldrpmdb.c
92 ## Libmisc.a is required for rpmconvert.
93 rpmconvert_LDFLAGS = $(myLDFLAGS)
94 rpmconvert_LDADD = $(myLDADD) -lgdbm
96 $(PROGRAMS): $(myLDADD)
100 lclint $(DEFS) $(INCLUDES) $(rpm_SOURCES) $(rpmb_SOURCES) rpmqv.c
102 CVSTAG = r$(subst .,-,$(VERSION))
105 @$(mkinstalldirs) $(DESTDIR)$(varprefix)/lib/rpm
106 @rm -f $(DESTDIR)/$(libdir)/rpmrc
107 @@LN_S@ rpm/rpmrc $(DESTDIR)/$(libdir)/rpmrc
108 @rm -f $(DESTDIR)/$(libdir)/rpmpopt
109 @@LN_S@ rpm/rpmpopt $(DESTDIR)/$(libdir)/rpmpopt
110 @rm -f $(DESTDIR)/$(libdir)/rpm/rpmt
111 @@LN_S@ rpmb $(DESTDIR)/$(libdir)/rpm/rpmt
112 @rm -f $(DESTDIR)/$(libdir)/rpm/rpme
113 @@LN_S@ rpmi $(DESTDIR)/$(libdir)/rpm/rpme
114 @rm -f $(DESTDIR)/$(libdir)/rpm/rpmu
115 @@LN_S@ rpmi $(DESTDIR)/$(libdir)/rpm/rpmu
116 @rm -f $(DESTDIR)/$(libdir)/rpm/rpmv
117 @@LN_S@ rpmq $(DESTDIR)/$(libdir)/rpm/rpmv
118 for bf in b db e i k q t u v ; do \
119 rm -f $(DESTDIR)/$(bindir)/rpm$$bf ; \
120 @LN_S@ ../lib/rpm/rpm$$bf $(DESTDIR)/$(bindir)/rpm$$bf ; \
122 @$(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/BUILD
123 @case "@build_cpu@" in \
124 *86) $(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/i386;\
125 $(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/i486;\
126 $(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/i586;\
127 $(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/i686;\
128 $(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/athlon ;;\
129 alpha*) $(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/alpha ;;\
130 sparc*) $(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/sparc;\
131 $(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/sparcv9;\
132 $(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/sparc64 ;;\
133 powerpc*) $(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/ppc ;;\
135 @case "@build_os@" in \
136 mint) $(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/m68kmint ;;\
138 chmod u+x ./installplatform; DESTDIR="$(DESTDIR)" pkglibdir="$(pkglibdir)" ./installplatform rpmrc macros platform ; \
139 $(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/@build_cpu@ ;;\
140 *) $(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/@build_cpu@ ;;\
142 @$(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/noarch
143 @$(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/SOURCES
144 @$(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/SPECS
145 @$(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/SRPMS
146 @$(mkinstalldirs) $(DESTDIR)/var/tmp
150 rm -rf /tmp/rpm-$(VERSION)
151 $(MAKE) DESTDIR=/tmp/rpm-$(VERSION) install
152 cd /tmp/rpm-$(VERSION) ; tar cvf /tmp/rpm-$(VERSION).tar .
156 find . -name "Makefile" -exec rm {} \;
157 rm -f *gz *rpm config.*
161 @cvs -d `cat CVS/Root` diff 2>&1 > /dev/null || { \
163 echo "==> Please resolve differences between the repository and" ; \
164 echo "==> your rpm check out before tagging." ; \
170 @cvs -d `cat CVS/Root` -Q tag -F $(CVSTAG) .
173 @echo "The final archive is ./rpm-$(VERSION).tar.gz."
176 nextsrpm: all archive
177 @sudo ./rpm -ta rpm-$(VERSION).tar.gz