Makefile
changeset 478 740943860879
parent 441 1a49797cea41
child 479 6c408af00436
equal deleted inserted replaced
477:68220a9e1586 478:740943860879
   157 LOGO_NAME := logo
   157 LOGO_NAME := logo
   158 LOGO_SVG := $(LOGO_NAME).svg
   158 LOGO_SVG := $(LOGO_NAME).svg
   159 LOGO_DIM := 32x32 48x48 64x64
   159 LOGO_DIM := 32x32 48x48 64x64
   160 LOGO_PNG_FILES := $(patsubst %,$(LOGO_NAME)-%.png,$(LOGO_DIM))
   160 LOGO_PNG_FILES := $(patsubst %,$(LOGO_NAME)-%.png,$(LOGO_DIM))
   161 
   161 
   162 DIST_DIR = $(fullpkgname)
   162 DISTREL_DIR = dist/$(fullpkgname)
   163 DISTSRC_DIR = $(fullpkgname)_src
   163 DISTSRC_DIR = dist/$(fullpkgname)_src
   164 
   164 
   165 DIST_FILES = $(DICTDZ_FILES) $(INDEX_FILES) $(RST_HTML_FILES) $(RST_FILES)
   165 DIST_FILES = $(DICTDZ_FILES) $(INDEX_FILES) $(RST_HTML_FILES) $(RST_FILES)
   166 
   166 
   167 DISTSRC_HELPER_FILES = Makefile rst.css .dir-locals.el
   167 DISTSRC_HELPER_FILES = Makefile rst.css .dir-locals.el
   168 DISTSRC_FILES = $(C5_FILES) $(RST_FILES) $(DISTSRC_HELPER_FILES)
   168 DISTSRC_FILES = $(C5_FILES) $(RST_FILES) $(DISTSRC_HELPER_FILES)
   169 
   169 
   170 DIST_TARBALLS = $(DIST_DIR).tar.gz $(DIST_DIR).tar.bz2
   170 DISTREL_TARBALLS = dist/$(fullpkgname).tar.gz dist/$(fullpkgname).zip
   171 DISTSRC_TARBALLS = $(DISTSRC_DIR).tar.gz $(DISTSRC_DIR).tar.bz2
   171 DISTSRC_TARBALLS = dist/$(fullpkgname)_src.tar.gz # dist/$(fullpkgname)_src.zip
   172 
   172 
   173 ################################################################
   173 ################################################################
   174 # Deploy/release targets.
   174 # Deploy/release targets.
   175 
   175 
   176 .PHONY: deploy
   176 .PHONY: deploy
   245   echo "chmod 644 voa-special.pdf"; \
   245   echo "chmod 644 voa-special.pdf"; \
   246 echo 'quit'; \
   246 echo 'quit'; \
   247 ) | sftp -b - $(SF_USER),$(pkgname)@web.sourceforge.net
   247 ) | sftp -b - $(SF_USER),$(pkgname)@web.sourceforge.net
   248 
   248 
   249 .PHONY: release2sf
   249 .PHONY: release2sf
   250 deploy2sf-release: validate-release $(DIST_TARBALLS) $(DISTSRC_TARBALLS)
   250 deploy2sf-release: validate-release $(DISTREL_TARBALLS) $(DISTSRC_TARBALLS)
   251 	exit 1
   251 	exit 1
   252 	: TODO broken due to new project hierarchy
   252 	: TODO broken due to new project hierarchy
   253 	( echo 'cd /home/frs/project/$(shell v=$(pkgname); echo $${v:0:1}/$${v:0:2})/$(pkgname)'; \
   253 	( echo 'cd /home/frs/project/$(shell v=$(pkgname); echo $${v:0:1}/$${v:0:2})/$(pkgname)'; \
   254 echo "put  README.rst"; \
   254 echo "put  README.rst"; \
   255 echo "chmod 644 README.rst"; \
   255 echo "chmod 644 README.rst"; \
   256 echo "mkdir v$(vmajor).$(vminor)"; \
   256 echo "mkdir v$(vmajor).$(vminor)"; \
   257 echo "cd v$(vmajor).$(vminor)"; \
   257 echo "cd v$(vmajor).$(vminor)"; \
   258 for f in $(DIST_TARBALLS) $(DISTSRC_TARBALLS); do \
   258 for f in $(DISTREL_TARBALLS) $(DISTSRC_TARBALLS); do \
   259 	echo "put $$f"; \
   259 	echo "put $$f"; \
   260 	echo "chmod 644 $$f"; \
   260 	echo "chmod 644 $$f"; \
   261 done; \
   261 done; \
   262 echo 'quit'; \
   262 echo 'quit'; \
   263 ) | sftp -b - $(SF_USER),$(pkgname)@frs.sourceforge.net
   263 ) | sftp -b - $(SF_USER),$(pkgname)@frs.sourceforge.net
   277 
   277 
   278 ################################################################
   278 ################################################################
   279 # Dist targets.
   279 # Dist targets.
   280 
   280 
   281 .PHONY: dist
   281 .PHONY: dist
   282 dist: dist-dictd dist-src
   282 dist: dist-rel dist-src
   283 
   283 
   284 .PHONY: dist-dictd
   284 .PHONY: dist-rel
   285 dist-dictd: $(DIST_TARBALLS)
   285 dist-rel: $(DISTREL_TARBALLS)
       
   286 
       
   287 DISTREL_DICTDZ_FILES := $(patsubst %,dist/$(fullpkgname)/dictd/%,$(notdir $(DICTDZ_FILES)))
       
   288 DISTREL_INDEX_FILES := $(patsubst %,dist/$(fullpkgname)/dictd/%,$(notdir $(INDEX_FILES)))
       
   289 DISTREL_RST_FILES := $(patsubst %,dist/$(fullpkgname)/doc/txt/%,$(notdir $(RST_FILES)))
       
   290 DISTREL_HTML_FILES := $(patsubst %,dist/$(fullpkgname)/doc/html/%,$(notdir $(RST_HTML_FILES)))
       
   291 
       
   292 dist/$(fullpkgname).tar.gz: $(DISTREL_DICTDZ_FILES) $(DISTREL_INDEX_FILES) $(DISTREL_RST_FILES) $(DISTREL_HTML_FILES) $(BUILD_SCRIPTS)
       
   293 	rm -rf $@
       
   294 	tar zcf $@ -C dist/ $(fullpkgname)
       
   295 
       
   296 dist/$(fullpkgname).zip: $(DISTREL_DICTDZ_FILES) $(DISTREL_INDEX_FILES) $(DISTREL_RST_FILES) $(DISTREL_HTML_FILES) $(BUILD_SCRIPTS)
       
   297 	rm -rf $@
       
   298 	cd $(dir $@) && zip -r $(notdir $@) $(fullpkgname)
       
   299 
       
   300 $(DISTREL_DICTDZ_FILES) $(DISTREL_INDEX_FILES): dist/$(fullpkgname)/dictd/%: dist/dictd/% | dist/$(fullpkgname)/dictd/
       
   301 	cp $< $@
       
   302 
       
   303 $(DISTREL_RST_FILES): dist/$(fullpkgname)/doc/txt/%: www/% | dist/$(fullpkgname)/doc/txt/
       
   304 	cp $< $@
       
   305 
       
   306 $(DISTREL_HTML_FILES): dist/$(fullpkgname)/doc/html/%: dist/www/% | dist/$(fullpkgname)/doc/html/
       
   307 	cp $< $@
       
   308 
       
   309 $(patsubst %,dist/$(fullpkgname)/%, dictd/ doc/txt/ doc/html/):
       
   310 	mkdir -p $@
   286 
   311 
   287 .PHONY: dist-src
   312 .PHONY: dist-src
   288 dist-src: $(DISTSRC_TARBALLS)
   313 dist-src: $(DISTSRC_TARBALLS)
   289 
   314 
   290 %.tar.gz: %
   315 DISTSRC_GADICT_FILES := $(patsubst %,dist/$(fullpkgname)_src/%,$(GADICT_FILES))
   291 	tar zcf $*.tar.gz $*
   316 DISTSRC_PY_FILES := $(patsubst %,dist/$(fullpkgname)_src/py/%,$(notdir $(PY_FILES)))
   292 
   317 DISTSRC_RST_FILES := $(patsubst %,dist/$(fullpkgname)_src/www/%,$(notdir $(RST_FILES)))
   293 %.tar.bz2: %
   318 DISTSRC_MAKEFILE := dist/$(fullpkgname)_src/Makefile
   294 	tar jcf $*.tar.bz2 $*
   319 
   295 
   320 dist/$(fullpkgname)_src.tar.gz: $(DISTSRC_GADICT_FILES) $(DISTSRC_PY_FILES) $(DISTSRC_RST_FILES) $(DISTSRC_MAKEFILE) $(BUILD_SCRIPTS)
   296 $(DIST_DIR): $(DIST_FILES)
       
   297 	rm -rf $@
   321 	rm -rf $@
   298 	mkdir $@
   322 	tar zcf $@ -C dist/ $(fullpkgname)_src
   299 	cp $(DIST_FILES) $@
   323 
   300 
   324 $(DISTSRC_GADICT_FILES): dist/$(fullpkgname)_src/%: % | dist/$(fullpkgname)_src/
   301 $(DISTSRC_DIR): $(DISTSRC_FILES)
   325 	cp $< $@
   302 	rm -rf $@
   326 
   303 	mkdir $@
   327 $(DISTSRC_PY_FILES): dist/$(fullpkgname)_src/py/%: py/% | dist/$(fullpkgname)_src/py/
   304 	cp $(DISTSRC_FILES) $@
   328 	cp $< $@
       
   329 
       
   330 $(DISTSRC_RST_FILES): dist/$(fullpkgname)_src/www/%: www/% | dist/$(fullpkgname)_src/www/
       
   331 	cp $< $@
       
   332 
       
   333 $(DISTSRC_MAKEFILE): Makefile | dist/$(fullpkgname)_src/
       
   334 	cp $< $@
       
   335 
       
   336 dist/$(fullpkgname)_src/ $(patsubst %,dist/$(fullpkgname)_src/%, py/ www/):
       
   337 	mkdir -p $@
   305 
   338 
   306 ################################################################
   339 ################################################################
   307 # Build targets.
   340 # Build targets.
   308 
   341 
   309 .PHONY: all
   342 .PHONY: all