1 # Top level Makefile for rpm
3 AUTOMAKE_OPTIONS = 1.4 foreign
5 EXTRA_DIST = CHANGES CREDITS Doxyheader GROUPS README.amiga INSTALL \
6 RPM-GPG-KEY RPM-PGP-KEY \
7 autodeps/none autodeps/*.prov autodeps/*.req autogen.sh \
8 db db3/configure gendiff installplatform platform* \
9 po/*.in po/*.po po/rpm.pot \
10 rpm.magic rpmpopt-$(VERSION) rpmqv.c
13 SUBDIRS = intl po @WITH_DB_SUBDIR@ popt rpmio rpmdb lib build misc @WITH_PYTHON_SUBDIR@ tools scripts tests doc .
16 -I$(top_srcdir)/build \
18 -I$(top_srcdir)/rpmdb \
19 -I$(top_srcdir)/rpmio \
20 -I$(top_srcdir)/popt \
25 myLDFLAGS = # @LDFLAGS_STATIC@
27 # XXX libtool can/should generate dependent libs.
28 # XXX solaris2.6 cannot use *.la with --all-static (downrev binutils/egcs?)
29 # XXX top_builddir ldpaths are wrong building in tree
31 $(top_builddir)/build/librpmbuild.la \
32 $(top_builddir)/lib/librpm.la \
33 $(top_builddir)/rpmdb/librpmdb.la \
34 $(top_builddir)/rpmio/librpmio.la \
35 $(top_builddir)/popt/libpopt.la \
38 rpmbindir = `echo $(bindir) | sed -e s,usr/bin,bin,`
41 bin_PROGRAMS = rpm2cpio
44 pkglibdir = @RPMCONFIGDIR@
45 pkglib_PROGRAMS = rpmb rpmd rpmi rpmk rpmq
46 pkglib_DATA = rpmrc rpmpopt-$(VERSION) macros
47 pkglib_SCRIPTS = find-provides find-requires mkinstalldirs \
48 config.guess config.sub
50 rpmpopt-$(VERSION): rpmpopt
54 acconfig.h build.h debug.h system.h
57 #rpm_LDFLAGS = @LDFLAGS_STATIC@ $(myLDFLAGS)
58 #rpm_LDADD = rpm.o $(myLDADD)
60 # $(COMPILE) -DIAM_RPMDB -DIAM_RPMEIU -DIAM_RPMK -DIAM_RPMQV -o $@ -c rpmqv.c
63 rpm_LDFLAGS = @LDFLAGS_STATIC@ $(myLDFLAGS)
64 rpm_LDADD = $(myLDADD)
66 rpmb_SOURCES = build.c
67 rpmb_LDFLAGS = $(myLDFLAGS)
68 rpmb_LDADD = rpmb.o $(myLDADD)
70 $(COMPILE) -DIAM_RPMBT -o $@ -c rpmqv.c
73 rpmd_LDFLAGS = @LDFLAGS_STATIC@ $(myLDFLAGS)
74 rpmd_LDADD = rpmd.o $(myLDADD)
76 $(COMPILE) -DIAM_RPMDB -o $@ -c rpmqv.c
79 rpmi_LDFLAGS = @LDFLAGS_STATIC@ $(myLDFLAGS)
80 rpmi_LDADD = rpmi.o $(myLDADD)
82 $(COMPILE) -DIAM_RPMEIU -o $@ -c rpmqv.c
85 rpmk_LDFLAGS = @LDFLAGS_STATIC@ $(myLDFLAGS)
86 rpmk_LDADD = rpmk.o $(myLDADD)
88 $(COMPILE) -DIAM_RPMK -o $@ -c rpmqv.c
91 rpmq_LDFLAGS = @LDFLAGS_STATIC@ $(myLDFLAGS)
92 rpmq_LDADD = rpmq.o $(myLDADD)
94 $(COMPILE) -DIAM_RPMQV -o $@ -c rpmqv.c
96 rpm2cpio_SOURCES = rpm2cpio.c
97 rpm2cpio_LDFLAGS = @LDFLAGS_STATIC@ $(myLDFLAGS)
98 rpm2cpio_LDADD = $(myLDADD)
100 $(PROGRAMS): $(myLDADD) @WITH_APIDOCS_TARGET@
104 lclint $(DEFS) $(INCLUDES) rpmqv.c $(rpmb_SOURCES) \
105 `make -s sources -C build` \
106 `make -s sources -C lib` \
107 `make -s sources -C rpmdb` \
108 `make -s sources -C rpmio` \
109 `make -s sources -C popt`
111 CVSTAG = r$(subst .,-,$(VERSION))
113 pkgsrcdir = $(prefix)/src/$(RPMCANONVENDOR)
116 @$(mkinstalldirs) $(DESTDIR)$(varprefix)/lib/rpm
117 @rm -f $(DESTDIR)$(libdir)/rpmrc
118 @@LN_S@ rpm/rpmrc $(DESTDIR)$(libdir)/rpmrc
119 @rm -f $(DESTDIR)$(libdir)/rpmpopt
120 @@LN_S@ rpm/rpmpopt $(DESTDIR)$(libdir)/rpmpopt
121 @rm -f $(DESTDIR)$(libdir)/rpm/rpmt
122 @@LN_S@ rpmb $(DESTDIR)$(libdir)/rpm/rpmt
123 @rm -f $(DESTDIR)$(libdir)/rpm/rpme
124 @@LN_S@ rpmi $(DESTDIR)$(libdir)/rpm/rpme
125 @rm -f $(DESTDIR)$(libdir)/rpm/rpmu
126 @@LN_S@ rpmi $(DESTDIR)$(libdir)/rpm/rpmu
127 @rm -f $(DESTDIR)$(libdir)/rpm/rpmv
128 @@LN_S@ rpmq $(DESTDIR)$(libdir)/rpm/rpmv
129 rm -f $(DESTDIR)$(bindir)/rpmbuild
130 @LN_S@ ../lib/rpm/rpmb $(DESTDIR)$(bindir)/rpmbuild
131 rm -f $(DESTDIR)$(bindir)/rpmquery
132 @LN_S@ ../lib/rpm/rpmq $(DESTDIR)$(bindir)/rpmquery
133 rm -f $(DESTDIR)$(bindir)/rpmverify
134 @LN_S@ ../lib/rpm/rpmv $(DESTDIR)$(bindir)/rpmverify
135 rm -f $(DESTDIR)$(bindir)/rpmsign
136 @LN_S@ ../lib/rpm/rpmk $(DESTDIR)$(bindir)/rpmsign
137 rm -f $(DESTDIR)$(bindir)/rpmdb ; \
138 @LN_S@ ../lib/rpm/rpmd $(DESTDIR)$(bindir)/rpmdb ; \
139 for bf in e i u ; do \
140 rm -f $(DESTDIR)$(bindir)/rpm$$bf ; \
141 @LN_S@ ../lib/rpm/rpm$$bf $(DESTDIR)$(bindir)/rpm$$bf ; \
143 @for dir in BUILD RPMS SOURCES SPECS SRPMS ; do\
144 $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/$$dir;\
146 @case "@build_cpu@" in \
147 *86) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/i386 ;\
148 $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/i486 ;\
149 $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/i586 ;\
150 $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/i686 ;\
151 $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/athlon ;;\
152 alpha*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/alpha ;\
153 $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/alphaev6 ;;\
154 sparc*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/sparc ;\
155 $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/sparcv9 ;\
156 $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/sparc64 ;;\
157 ia64*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/ia64 ;;\
158 s390*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/s390 ;;\
159 powerpc*) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/ppc ;;\
160 *) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/@build_cpu@ ;;\
162 $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/noarch
163 @case "@build_os@" in \
164 mint) $(mkinstalldirs) $(DESTDIR)$(pkgsrcdir)/RPMS/m68kmint ;;\
166 chmod u+x ./installplatform; DESTDIR="$(DESTDIR)" pkglibdir="$(pkglibdir)" ./installplatform rpmrc macros platform ;; \
168 @$(mkinstalldirs) $(DESTDIR)/var/tmp
172 @for f in $(rpmbin_PROGRAMS) ; do\
173 $(__CHOWN) ${RPMUSER}.${RPMGROUP} $(DESTDIR)$(rpmbindir)/$$f ;\
174 $(__CHMOD) g+s $(DESTDIR)$(rpmbindir)/$$f ;\
176 @for f in $(bin_PROGRAMS) ; do\
177 $(__CHOWN) ${RPMUSER}.${RPMGROUP} $(DESTDIR)$(bindir)/$$f ;\
179 @for f in $(pkglib_PROGRAMS) ; do\
180 $(__CHOWN) ${RPMUSER}.${RPMGROUP} $(DESTDIR)$(pkglibdir)/$$f ;\
181 $(__CHMOD) g+s $(DESTDIR)$(pkglibdir)/$$f ;\
183 @for f in $(pkglib_SCRIPTS) ; do\
184 $(__CHOWN) ${RPMUSER}.${RPMGROUP} $(DESTDIR)$(pkglibdir)/$$f ;\
186 @$(__CHOWN) ${RPMUSER}.${RPMGROUP} $(DESTDIR)$(pkglibdir)
187 @$(__CHOWN) -R ${RPMUSER}.${RPMGROUP} $(DESTDIR)$(varprefix)/lib/rpm
188 -@$(__CHMOD) 0664 $(DESTDIR)$(varprefix)/lib/rpm/[A-Z]*
189 -@$(__CHMOD) 0775 $(DESTDIR)$(varprefix)/lib/rpm
190 -@$(__CHMOD) 0755 $(DESTDIR)$(varprefix)/lib/rpm/Desktop
191 -@$(__CHMOD) 0664 $(DESTDIR)$(varprefix)/lib/rpm/__db.*
195 @for f in $(rpmbin_PROGRAMS) ; do\
196 $(__CHMOD) g-s $(DESTDIR)$(rpmbindir)/$$f ;\
198 @for f in $(pkglib_PROGRAMS) ; do\
199 $(__CHMOD) g-s $(DESTDIR)$(pkglibdir)/$$f ;\
204 rm -rf /tmp/rpm-$(VERSION)
205 $(MAKE) DESTDIR=/tmp/rpm-$(VERSION) install
206 cd /tmp/rpm-$(VERSION) ; tar cvf /tmp/rpm-$(VERSION).tar .
210 find . -name "Makefile" -exec rm {} \;
211 rm -f *gz *rpm config.*
215 @cvs -d `cat CVS/Root` diff 2>&1 > /dev/null || { \
217 echo "==> Please resolve differences between the repository and" ; \
218 echo "==> your rpm check out before tagging." ; \
224 @cvs -d `cat CVS/Root` -Q tag -F $(CVSTAG) .
227 @echo "The final archive is ./rpm-$(VERSION).tar.gz."
230 nextsrpm: all archive
231 @sudo ./rpm -ta rpm-$(VERSION).tar.gz
234 doxygen @WITH_APIDOCS_TARGET@: Doxyfile
237 - [ X"@__DOXYGEN@" != Xno ] && @__DOXYGEN@
240 find . -type f -name "*.[ch]*" | xargs @CTAGS@