Automake fiddles.
[platform/upstream/rpm.git] / Makefile.am
1 # Top level Makefile for rpm
2
3 AUTOMAKE_OPTIONS = 1.3 foreign
4
5 SUBDIRS = popt build lib po intl misc tools scripts tests
6
7 INCLUDES = -I$(top_srcdir)/build -I$(top_srcdir)/lib -I$(top_srcdir)/intl @INCPATH@
8
9 LDFLAGS = @LDFLAGS_STATIC@ -L$(top_builddir)/build -L$(top_builddir)/lib -L$(top_builddir)/popt -L$(top_builddir)/misc
10
11 rpmbindir = $(subst usr/bin,bin,$(bindir))
12 rpmbin_PROGRAMS = rpm
13
14 bin_PROGRAMS =          rpm2cpio
15 bin_SCRIPTS =           gendiff
16 noinst_PROGRAMS =       rpmconvert
17
18 man_MANS = rpm.8 rpm2cpio.8
19
20 configdir = @RPMCONFIGDIR@
21 config_DATA = rpmrc rpmpopt macros
22 config_SCRIPTS = find-provides find-requires mkinstalldirs
23
24 noinst_HEADERS = \
25         acconfig.h      build.h         checksig.h      ftp.h   \
26         install.h       system.h        url.h   \
27         verify.h
28
29 rpm_SOURCES =           build.c checksig.c ftp.c install.c rpm.c url.c \
30                         verify.c
31 rpm_LDADD =             -lrpmbuild -lrpm -lpopt @LIBMISC@
32
33 $(PROGRAMS): ./build/librpmbuild.a ./lib/librpm.a ./popt/libpopt.a
34
35 include ./Makefile.inc
36
37 .PHONY: lclint
38 lclint:
39         lclint ${DEFS} ${INCLUDES} ${rpm_SOURCES}
40
41 CVSTAG = r$(subst .,-,$(VERSION))
42
43 rpm2cpio_SOURCES =      rpm2cpio.c
44 rpm2cpio_LDADD =        -lrpmbuild -lrpm -lpopt
45
46 rpmconvert_SOURCES =    convertdb.c oldrpmdb.c
47 rpmconvert_LDADD =      -lrpmbuild -lrpm -lpopt -lgdbm
48
49 install-data-local:
50         @$(mkinstalldirs) $(DESTDIR)/var/lib/rpm
51         @rm -f $(DESTDIR)/$(libdir)/rpmrc
52         @ln -s rpm/rpmrc $(DESTDIR)/$(libdir)/rpmrc
53         @rm -f $(DESTDIR)/$(libdir)/rpmpopt
54         @ln -s rpm/rpmpopt $(DESTDIR)/$(libdir)/rpmpopt
55         @$(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/BUILD
56         @$(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/noarch
57         @$(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/@build_cpu@
58         @$(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/SOURCES
59         @$(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/SPECS
60         @$(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/SRPMS
61         @$(mkinstalldirs) $(DESTDIR)/var/lib/rpm
62         @$(mkinstalldirs) $(DESTDIR)/var/tmp
63
64 # FIXME: these should be generated in configure.in
65 find-requires: find-requires.sh
66         cp $< $@
67 find-provides: find-provides.sh
68         cp $< $@
69 rpmrc: lib-rpmrc
70         cp $< $@
71
72 # FIXME: these should be checked
73 .PHONY:                tar
74 tar:
75         rm -rf /tmp/rpm-$(VERSION)
76         make installprefix=/tmp/rpm-$(VERSION)$(ROOT) install
77         $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/SOURCES
78         $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/SPECS
79         $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/SRPMS
80         $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/RPMS
81         $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/BUILD
82         $(mkinstalldirs) /tmp/rpm-$(VERSION)/var/local/lib/rpm
83         $(mkinstalldirs) /tmp/rpm-$(VERSION)/var/tmp
84 #       Couldn't figure de ARCH value   
85 #       $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/RPMS/i386
86         cd /tmp/rpm-$(VERSION) ; tar cvf /tmp/rpm-$(VERSION).tar .
87
88 .PHONY: noconfig
89 noconfig:
90         find . -name "Makefile" -exec rm {} \; 
91         rm -f *gz *rpm config.*
92
93 .PHONY: archive
94 archive: 
95         @echo " "
96         @echo "I hope you checked everything out and made sure it builds"
97         @echo "maybe someday Erik will get around to making that automatic."
98         @echo
99         @echo "This is version $(VERSION)."
100         @sleep 5
101         @cvs -Q tag -F $(CVSTAG) .
102         @rm -rf /tmp/rpm-$(VERSION) /tmp/rpm
103         @cd /tmp; cvs -Q -d $(CVSROOT) export -r$(CVSTAG) rpm || :
104         @mv /tmp/rpm /tmp/rpm-$(VERSION)
105         @rm /tmp/rpm-$(VERSION)/popt/popt.spec
106         @cd /tmp/rpm-$(VERSION); ./autogen.sh ; make depend; make distclean
107         @make -C /tmp/rpm-$(VERSION) depend distclean
108         @cd /tmp/rpm-$(VERSION); ./autogen.sh --noconfigure
109         @cd /tmp; tar czSpf rpm-$(VERSION).tar.gz rpm-$(VERSION)
110         @rm -rf /tmp/rpm-$(VERSION)
111         @cp /tmp/rpm-$(VERSION).tar.gz .
112         @rm -f /tmp/rpm-$(VERSION).tar.gz 
113         @echo " "
114         @echo "The final archive is ./rpm-$(VERSION).tar.gz."