1 # Top level Makefile for rpm
3 AUTOMAKE_OPTIONS = 1.4 foreign
7 EXTRA_DIST = CHANGES CREDITS Doxyheader GROUPS README.amiga INSTALL \
8 RPM-GPG-KEY RPM-PGP-KEY BETA-GPG-KEY \
9 autodeps/none autodeps/*.prov autodeps/*.req autogen.sh \
10 config.site db db3/configure gendiff installplatform platform* \
11 xmlspec/Makefile xmlspec/*.c xmlspec/*.h \
12 xmlspec/examples/*.sh xmlspec/examples/*.lst \
13 xmlspec/examples/*.xmlspec \
14 po/*.in po/*.po po/rpm.pot \
15 rpm.magic rpmpopt-$(VERSION) rpmqv.c rpm.c
17 SUBDIRS = intl po @WITH_ZLIB_SUBDIR@ @WITH_ELFUTILS_SUBDIR@ file @WITH_DB_SUBDIR@ popt @WITH_BEECRYPT_SUBDIR@ rpmio rpmdb lib build misc @WITH_PYTHON_SUBDIR@ tools scripts tests doc .
20 -I$(top_srcdir)/build \
22 -I$(top_srcdir)/rpmdb \
23 -I$(top_srcdir)/rpmio \
24 @WITH_BEECRYPT_INCLUDE@ \
25 -I$(top_srcdir)/popt \
26 @WITH_LIBELF_INCLUDE@ \
29 staticLDFLAGS = @LDFLAGS_STATIC@ @LDFLAGS_NPTL@
31 myLDFLAGS = @WITH_LIBELF_LIB@ @WITH_BEECRYPT_LIB@
34 $(top_builddir)/lib/librpm.la \
35 $(top_builddir)/rpmdb/librpmdb.la \
36 $(top_builddir)/rpmio/librpmio.la \
37 $(top_builddir)/popt/libpopt.la \
42 rpmbindir = `echo $(bindir) | sed -e s,usr/bin,bin,`
45 bin_PROGRAMS = rpm2cpio
48 pkglibdir = @RPMCONFIGDIR@
49 pkglib_PROGRAMS = rpmb rpmd rpmi rpmk rpmq
50 pkglib_DATA = rpmrc rpmpopt-$(VERSION) macros
51 pkglib_SCRIPTS = find-provides find-requires mkinstalldirs \
52 config.guess config.sub config.site
54 rpmpopt-$(VERSION): rpmpopt
57 noinst_HEADERS = build.h debug.h system.h
60 rpm_LDFLAGS = $(myLDFLAGS)
61 rpm_LDADD = rpm.o $(top_builddir)/build/.libs/librpmbuild.a $(myLDADD)
62 rpm.o: $(top_srcdir)/rpmqv.c
63 $(COMPILE) -DIAM_RPMDB -DIAM_RPMEIU -DIAM_RPMK -DIAM_RPMQV -o $@ -c rpmqv.c
65 rpmb_SOURCES = build.c
66 rpmb_LDFLAGS = $(myLDFLAGS)
67 rpmb_LDADD = rpmb.o $(top_builddir)/build/librpmbuild.la $(myLDADD)
68 rpmb.o: $(top_srcdir)/rpmqv.c
69 $(COMPILE) -DIAM_RPMBT -o $@ -c rpmqv.c
72 rpmd_LDFLAGS = $(myLDFLAGS)
73 rpmd_LDADD = rpmd.o $(myLDADD)
74 rpmd.o: $(top_srcdir)/rpmqv.c
75 $(COMPILE) -DIAM_RPMDB -o $@ -c rpmqv.c
78 #rpmi_LDFLAGS = $(myLDFLAGS) $(staticLDFLAGS)
79 #rpmi_LDADD = rpmi.o $(myLDADD) @WITH_LIBELF_LIB@ @WITH_BEECRYPT_LIB@
80 rpmi_LDFLAGS = $(myLDFLAGS)
81 rpmi_LDADD = rpmi.o $(myLDADD)
82 rpmi.o: $(top_srcdir)/rpmqv.c
83 $(COMPILE) -DIAM_RPMEIU -o $@ -c rpmqv.c
86 rpmk_LDFLAGS = $(myLDFLAGS)
87 rpmk_LDADD = rpmk.o $(myLDADD)
88 rpmk.o: $(top_srcdir)/rpmqv.c
89 $(COMPILE) -DIAM_RPMK -o $@ -c rpmqv.c
92 rpmq_LDFLAGS = $(myLDFLAGS)
93 rpmq_LDADD = rpmq.o $(top_builddir)/build/librpmbuild.la $(myLDADD)
94 rpmq.o: $(top_srcdir)/rpmqv.c
95 $(COMPILE) -DIAM_RPMQV -o $@ -c rpmqv.c
97 rpm2cpio_SOURCES = $(top_srcdir)/rpm2cpio.c
98 rpm2cpio_LDFLAGS = $(myLDFLAGS)
99 rpm2cpio_LDADD = $(myLDADD) @LIBMISC@
101 $(PROGRAMS): $(myLDADD) @WITH_APIDOCS_TARGET@
106 -load build/rpmbuild.lcd \
107 -load lib/rpmlib.lcd \
108 -load rpmdb/rpmdb.lcd \
109 -load rpmio/rpmio.lcd \
110 -load popt/popt.lcd \
111 $(DEFS) $(INCLUDES) rpmqv.c $(rpmb_SOURCES)
115 $(LINT) -Dlint $(DEFS) $(INCLUDES) rpmqv.c $(rpmb_SOURCES) \
116 `make -s sources -C build` \
117 `make -s sources -C lib` \
118 `make -s sources -C rpmdb` \
119 `make -s sources -C rpmio` \
120 `make -s sources -C beecrypt` \
121 `make -s sources -C file/src` \
122 `make -s sources -C popt`
124 CVSTAG = r$(subst .,-,$(VERSION))
126 pkgsrcdir = $(prefix)/src/$(RPMCANONVENDOR)
129 @$(mkinstalldirs) $(DESTDIR)$(varprefix)/lib/rpm
130 @rm -f $(DESTDIR)$(libdir)/rpmrc
131 @@LN_S@ rpm/rpmrc $(DESTDIR)$(libdir)/rpmrc
132 @rm -f $(DESTDIR)$(libdir)/rpmpopt
133 @@LN_S@ rpm/rpmpopt $(DESTDIR)$(libdir)/rpmpopt
134 @rm -f $(DESTDIR)$(libdir)/rpm/rpmt
135 @@LN_S@ rpmb $(DESTDIR)$(libdir)/rpm/rpmt
136 @rm -f $(DESTDIR)$(libdir)/rpm/rpme
137 @@LN_S@ rpmi $(DESTDIR)$(libdir)/rpm/rpme
138 @rm -f $(DESTDIR)$(libdir)/rpm/rpmu
139 @@LN_S@ rpmi $(DESTDIR)$(libdir)/rpm/rpmu
140 @rm -f $(DESTDIR)$(libdir)/rpm/rpmv
141 @@LN_S@ rpmq $(DESTDIR)$(libdir)/rpm/rpmv
142 rm -f $(DESTDIR)$(bindir)/rpmbuild
143 @LN_S@ ../lib/rpm/rpmb $(DESTDIR)$(bindir)/rpmbuild
144 rm -f $(DESTDIR)$(bindir)/rpmquery
145 @LN_S@ ../lib/rpm/rpmq $(DESTDIR)$(bindir)/rpmquery
146 rm -f $(DESTDIR)$(bindir)/rpmverify
147 @LN_S@ ../lib/rpm/rpmv $(DESTDIR)$(bindir)/rpmverify
148 rm -f $(DESTDIR)$(bindir)/rpmsign
149 @LN_S@ ../lib/rpm/rpmk $(DESTDIR)$(bindir)/rpmsign
150 rm -f $(DESTDIR)$(bindir)/rpmdb ; \
151 @LN_S@ ../lib/rpm/rpmd $(DESTDIR)$(bindir)/rpmdb ; \
152 for bf in e i u ; do \
153 rm -f $(DESTDIR)$(bindir)/rpm$$bf ; \
154 @LN_S@ ../lib/rpm/rpm$$bf $(DESTDIR)$(bindir)/rpm$$bf ; \
156 @for dir in BUILD RPMS SOURCES SPECS SRPMS ; do\
157 $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/$$dir;\
159 @case "@host_cpu@" in \
160 *86) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/i386 ;\
161 $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/i486 ;\
162 $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/i586 ;\
163 $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/i686 ;\
164 $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/athlon ;;\
165 alpha*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/alpha ;\
166 $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/alphaev6 ;;\
167 sparc*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/sparc ;\
168 $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/sparcv9 ;\
169 $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/sparc64 ;;\
170 ia64*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/ia64 ;;\
171 s390*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/s390 ;;\
172 mipsel*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/mipsel ;;\
173 mips*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/mips ;;\
174 powerpc*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/ppc ;\
175 $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/ppc64 ;;\
176 *) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/@host_cpu@ ;;\
178 $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/noarch
179 @case "@host_os@" in \
180 mint) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/m68kmint ;;\
182 chmod u+x $(top_srcdir)/installplatform; DESTDIR="$(DESTDIR)" pkglibdir="$(pkglibdir)" $(top_srcdir)/installplatform rpmrc macros platform ;; \
184 @$(mkinstalldirs) $(DESTDIR)/var/tmp
188 @for f in $(rpmbin_PROGRAMS) ; do\
189 $(__CHOWN) ${RPMUSER}.${RPMGROUP} $(DESTDIR)$(rpmbindir)/$$f ;\
190 $(__CHMOD) g+s $(DESTDIR)$(rpmbindir)/$$f ;\
192 @for f in $(bin_PROGRAMS) ; do\
193 $(__CHOWN) ${RPMUSER}.${RPMGROUP} $(DESTDIR)$(bindir)/$$f ;\
195 @for f in $(pkglib_PROGRAMS) ; do\
196 $(__CHOWN) ${RPMUSER}.${RPMGROUP} $(DESTDIR)$(pkglibdir)/$$f ;\
197 $(__CHMOD) g+s $(DESTDIR)$(pkglibdir)/$$f ;\
199 @for f in $(pkglib_SCRIPTS) ; do\
200 $(__CHOWN) ${RPMUSER}.${RPMGROUP} $(DESTDIR)$(pkglibdir)/$$f ;\
202 @$(__CHOWN) ${RPMUSER}.${RPMGROUP} $(DESTDIR)$(pkglibdir)
203 @$(__CHOWN) -R ${RPMUSER}.${RPMGROUP} $(DESTDIR)$(varprefix)/lib/rpm
204 -@$(__CHMOD) 0664 $(DESTDIR)$(varprefix)/lib/rpm/[A-Z]*
205 -@$(__CHMOD) 0775 $(DESTDIR)$(varprefix)/lib/rpm
206 -@$(__CHMOD) 0664 $(DESTDIR)$(varprefix)/lib/rpm/__db.*
210 @for f in $(rpmbin_PROGRAMS) ; do\
211 $(__CHMOD) g-s $(DESTDIR)$(rpmbindir)/$$f ;\
213 @for f in $(pkglib_PROGRAMS) ; do\
214 $(__CHMOD) g-s $(DESTDIR)$(pkglibdir)/$$f ;\
219 rm -rf /tmp/rpm-$(VERSION)
220 $(MAKE) DESTDIR=/tmp/rpm-$(VERSION) install
221 cd /tmp/rpm-$(VERSION) ; tar cvf /tmp/rpm-$(VERSION).tar .
225 find . -name "Makefile" -exec rm {} \;
226 rm -f *gz *rpm config.*
230 @cvs -d `cat CVS/Root` diff 2>&1 > /dev/null || { \
232 echo "==> Please resolve differences between the repository and" ; \
233 echo "==> your rpm check out before tagging." ; \
239 @cvs -d `cat CVS/Root` -Q tag -F $(CVSTAG) .
242 @echo "The final archive is ./rpm-$(VERSION).tar.gz."
245 nextsrpm: all archive
246 @sudo ./rpm -ta rpm-$(VERSION).tar.gz
249 doxygen @WITH_APIDOCS_TARGET@: Doxyfile rpmpopt-@VERSION@
252 - [ X"@__DOXYGEN@" != Xno ] && @__DOXYGEN@
255 find . -type f -name "*.[ch]*" | xargs @CTAGS@