2 # $Id: Makefile,v 1.37 2007/11/19 05:29:25 nakano Exp $
4 # Build macro for JM project. If something don't work well,
5 # please refer the description in admin/JM-CVS/JM-CVS.sgml.
12 MKRWWW=bin/mkmanweb.perl
13 MKPWWW=bin/mkpodweb.perl
14 MKDIST=bin/mkdist.perl
15 MKSPDIST=bin/mksplitdist.perl
17 YAM2H=bin/yaman2html.perl
23 JMRELEASE := $(shell date +"%Y%m%d")
24 DIST := man-pages-ja-$(JMRELEASE)
26 JMRPMDIST := jman_pages-$(JMVER)-$(JMRELEASE)
27 JMRPMSRC := $(TMPDIR)/$(DIST).tar.gz
28 JMRPMSPEC=jman_pages.spec
29 JMRPM_BUILD_ROOT=$(TMPDIR)/man-pages-ja-root
34 periodic: chkcvs roff html web cgi
36 all: periodic archive-install
39 # update check for CVS checkout
44 cvs-release-modified cvs-status-modified: chkcvs
49 roff: www-roff-modified
51 www-roff-modified: cvs-status-modified
53 $(MIRRORDIR) -v --no-netrc --exclude-regexp '*CVS*' \
56 $(MIRRORDIR) -v --no-netrc --exclude-regexp '*CVS*' \
63 html: www-html-modified
65 www-html-modified: cvs-release-modified
68 $(MKRWWW) $(ROFFSRC) $(WWWHTML) $(MAN2HTML) $(YAM2H)
69 $(MKPWWW) $(PODSRC) $(WWWHTML) $(POD2HTML)
77 WWWROOT=$(WWWROOT) CGIROOT=$(CGIROOT)\
81 $(MAKE) -C admin/cgi/\
82 WWWROOT=$(WWWROOT) CGIROOT=$(CGIROOT)\
86 # archive related rules
88 archive-install: latest-archive-modified
89 -$(RM) www/man-pages-ja-*.tar.gz www/per-pkg/*.gz
91 cp $(TMPDIR)/$(DIST).tar.gz www/
93 cp $(TMPDIR)/man-pages-ja-*-$(JMRELEASE).tar.gz www/per-pkg
95 -cp $(RPMROOT)/RPMS/noarch/$(JMRPMDIST).noarch.rpm www/rpm
96 -cp $(RPMROOT)/SRPMS/$(JMRPMDIST).src.rpm www/rpm
98 make -C www/ DATE=$(JMRELEASE)\
99 WWWROOT=$(WWWROOT) CGIROOT=$(CGIROOT)\
100 download.html index.html
102 WWWROOT=$(WWWROOT) CGIROOT=$(CGIROOT)\
105 latest-archive-modified: tarball rpm
110 tarball: $(TMPDIR)/$(DIST).tar.gz
112 $(TMPDIR)/$(DIST).tar.gz:
113 $(MKDIST) . $(TMPDIR)/$(DIST) $(POD2MAN)
114 $(MAKE) -f Makefile.dist install
115 (cd $(TMPDIR); tar czf $(DIST).tar.gz $(DIST))
116 $(MKSPDIST) $(TMPDIR)/$(DIST)
117 touch latest-archive-modified
122 rpm: $(RPMROOT)/RPMS/noarch/$(JMRPMDIST).noarch.rpm
124 $(RPMROOT)/RPMS/noarch/$(JMRPMDIST).noarch.rpm: $(JMRPMSRC)
125 mkdir -p $(RPMROOT)/SOURCES
126 mkdir -p $(RPMROOT)/SPECS
127 mkdir -p $(RPMROOT)/BUILD
128 mkdir -p $(RPMROOT)/RPMS/noarch
129 mkdir -p $(RPMROOT)/SRPMS
130 mkdir -p $(RPMROOT)/db
131 cp $(JMRPMSRC) $(RPMROOT)/SOURCES/
132 sed -e "s/@@version@@/$(JMVER)/" \
133 -e "s/@@release@@/$(JMRELEASE)/" \
134 -e "s%@@buildroot@@%$(JMRPM_BUILD_ROOT)%" \
135 www/rpm/$(JMRPMSPEC) > $(RPMROOT)/SPECS/$(JMRPMSPEC)
136 $(RPM) --dbpath $(RPMROOT)/db --rebuilddb
137 $(RPMB) --define "buildroot $(JMRPM_BUILD_ROOT)" \
138 --dbpath $(RPMROOT)/db \
139 --define "_topdir $(RPMROOT)" \
140 --define "_mandir /usr/share/man" -ba \
141 $(RPMROOT)/SPECS/$(JMRPMSPEC)
142 touch latest-archive-modified
150 $(MAKE) -C admin/cgi/ clean
151 $(MAKE) -C www/ clean
152 $(MAKE) -f Makefile.dist clean
153 rm -rf $(JMRPM_BUILD_ROOT)
154 rm -rf $(RPMROOT)/BUILD/$(DIST)
155 for i in $(JMRPMSRC); do \
156 rm -f $(RPMROOT)/SOURCES/`basename $$i` ; \