From Tim Mooney:
[platform/upstream/rpm.git] / Makefile.am
1 # Top level Makefile for rpm
2
3 AUTOMAKE_OPTIONS = 1.4 foreign
4
5 EXTRA_DIST = CHANGES CREDITS GROUPS README.amiga INSTALL RPM-PGP-KEY \
6         autodeps/none autodeps/*.prov autodeps/*.req autogen.sh \
7         docs/[a-z]* gendiff $(man_MANS) po/*.in po/*.po po/rpm.pot \
8         rpm.magic rpmpopt rpm.spec rpm.8ru rpm2cpio.8ru
9
10 EXTRA_PROGRAMS = rpmconvert
11
12 SUBDIRS = popt build lib po intl misc tools scripts tests .
13
14 INCLUDES = -I$(top_srcdir)/build -I$(top_srcdir)/lib -I$(top_srcdir)/intl @INCPATH@
15
16 mylibs= $(top_builddir)/build/librpmbuild.la \
17         $(top_builddir)/lib/librpm.la \
18         $(top_builddir)/popt/libpopt.la
19
20 LDFLAGS = @LDFLAGS_STATIC@
21
22 rpmbindir = $(subst usr/bin,bin,$(bindir))
23 rpmbin_PROGRAMS = rpm
24
25 bin_PROGRAMS =          rpm2cpio
26 bin_SCRIPTS =           gendiff
27
28 noinst_PROGRAMS =       @BUILD_RPMCONVERT@
29
30 man_MANS = rpm.8 rpm2cpio.8     # rpm.8ru rpm2cpio.8ru
31
32 pkglibdir = @RPMCONFIGDIR@
33 pkglib_DATA = rpmrc rpmpopt macros
34 pkglib_SCRIPTS = find-provides find-requires mkinstalldirs \
35         config.guess config.sub
36
37 noinst_HEADERS = \
38         acconfig.h      build.h         checksig.h      ftp.h   \
39         install.h       system.h        url.h           verify.h
40
41 rpm_SOURCES =           build.c checksig.c ftp.c install.c rpm.c url.c verify.c
42 rpm_LDADD =             $(mylibs) @LIBMISC@
43
44 $(PROGRAMS):            $(mylibs) @LIBMISC@
45
46 .PHONY: lclint
47 lclint:
48         lclint ${DEFS} ${INCLUDES} ${rpm_SOURCES}
49
50 CVSTAG = r$(subst .,-,$(VERSION))
51
52 rpm2cpio_SOURCES =      rpm2cpio.c
53 rpm2cpio_LDADD =        $(mylibs)
54
55 rpmconvert_SOURCES =    convertdb.c oldrpmdb.c
56 rpmconvert_LDADD =      $(mylibs) -lgdbm
57
58 install-data-local:
59         @$(mkinstalldirs) $(DESTDIR)/var/lib/rpm
60         @rm -f $(DESTDIR)/$(libdir)/rpmrc
61         @ln -s rpm/rpmrc $(DESTDIR)/$(libdir)/rpmrc
62         @rm -f $(DESTDIR)/$(libdir)/rpmpopt
63         @ln -s rpm/rpmpopt $(DESTDIR)/$(libdir)/rpmpopt
64         @$(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/BUILD
65         @case "@build_cpu@" in \
66         *86) $(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/i386 ;;\
67         alpha*) $(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/alpha ;;\
68         sparc*) $(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/sparc ;;\
69         powerpc*) $(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/ppc ;;\
70         esac
71         @$(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/@build_cpu@
72         @$(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/RPMS/noarch
73         @$(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/SOURCES
74         @$(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/SPECS
75         @$(mkinstalldirs) $(DESTDIR)/$(prefix)/src/redhat/SRPMS
76         @$(mkinstalldirs) $(DESTDIR)/var/lib/rpm
77         @$(mkinstalldirs) $(DESTDIR)/var/tmp
78
79 # FIXME: these should be checked
80 .PHONY:                tar
81 tar:
82         rm -rf /tmp/rpm-$(VERSION)
83         make installprefix=/tmp/rpm-$(VERSION)$(ROOT) install
84         $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/SOURCES
85         $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/SPECS
86         $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/SRPMS
87         $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/RPMS
88         $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/BUILD
89         $(mkinstalldirs) /tmp/rpm-$(VERSION)/var/local/lib/rpm
90         $(mkinstalldirs) /tmp/rpm-$(VERSION)/var/tmp
91 #       Couldn't figure de ARCH value   
92 #       $(mkinstalldirs) /tmp/rpm-$(VERSION)/usr/local/src/redhat/RPMS/i386
93         cd /tmp/rpm-$(VERSION) ; tar cvf /tmp/rpm-$(VERSION).tar .
94
95 .PHONY: noconfig
96 noconfig:
97         find . -name "Makefile" -exec rm {} \; 
98         rm -f *gz *rpm config.*
99
100 .PHONY: archive
101 archive: 
102         @cvs -d `cat CVS/Root` diff 2>&1 > /dev/null || { \
103             echo " " ; \
104             echo "==> Please resolve differences between the repository and" ; \
105             echo "==> your rpm check out before tagging." ; \
106             echo " " ; \
107             cvs -n up ; \
108             echo " " ; \
109             exit 1 ; \
110         }
111         @cvs -d `cat CVS/Root` -Q tag -F $(CVSTAG) .
112         @make dist
113         @echo " "
114         @echo "The final archive is ./rpm-$(VERSION).tar.gz."
115
116 .PHONY: nextsrpm
117 nextsrpm: all archive
118         @sudo ./rpm -ta rpm-$(VERSION).tar.gz