https://gitorious.org/ocamlp3l/ocamlp3l_cvs.git
Revision 8db31d67cf10a11daf8cd4efeea13f20da3643a0 authored by weis on 11 January 2007, 11:45:16 UTC, committed by weis on 11 January 2007, 11:45:16 UTC
1 parent 9fdaa50
Raw File
Tip revision: 8db31d67cf10a11daf8cd4efeea13f20da3643a0 authored by weis on 11 January 2007, 11:45:16 UTC
The indexx files to access the sub directories where papers are.
Tip revision: 8db31d6
Makefile.distrib
#*********************************************************************#
#                                                                     #
#                             Active-DVI                              #
#                                                                     #
#                   Projet Cristal, INRIA Rocquencourt                #
#                                                                     #
#  Copyright 2002-2004,                                               #
#  Institut National de Recherche en Informatique et en Automatique.  #
#  All rights reserved. This file is distributed under the terms of   #
#  the GNU Lesser General Public License.                             #
#                                                                     #
#  Jun Furuse, Didier Rémy and Pierre Weis.                           #
#  Contributions by Roberto Di Cosmo, Didier Le Botlan,               #
#  Xavier Leroy, and Alan Schmitt.                                    #
#                                                                     #
#  Based on Mldvi by Alexandre Miquel.                                #
#*********************************************************************#

# $Id: Makefile.distrib,v 1.1 2006-12-08 18:33:08 fclement Exp $

include makefile

# Just for $(PACKAGE) maintainers, distribution of the software.
# Usage:
# make -f Makefile.distrib distribute

# Need an INSTALL and README file in the main directory.

# Need a doc directory where the documentation has been written,
# presumably in HTML with an index.html file. This directory is copied
# onto the WEB site directory of the package, as mentioned in
# $(WEBSITEDIR). Presumably the doc directory contains 2 files named
# eng.htm and fra.htm that respectively contain the English and French
# documentation.

# A tar ball file with the source files is also constructed and moved
# into the $(FTPDIR) directory.

PACKAGEROOT = bazar-ocaml/$(PACKAGE)

WEBSITEDIR = /net/yquem/infosystems/www/$(PACKAGE)
FTPSITEDIR = /net/yquem/infosystems/ftp/$(PACKAGE)

YEAR = 2006
OLDYEAR = 2005
MAINVERSION = 2
SUBVERSION = 03
PATCHLEVEL = 0
VERSION = $(MAINVERSION).$(SUBVERSION)
FULLVERSION = $(VERSION).$(PATCHLEVEL)
OLDVERSION = 2.02

PACKAGEFULLNAME = $(PACKAGE)-$(FULLVERSION)

CVSRELEASETAG = $(PACKAGE)-$(MAINVERSION)_$(SUBVERSION)_$(PATCHLEVEL)
ANNOUNCEFILE = Announce-$(FULLVERSION)

PACKAGEVERSIONFILES = config.ml
DOCVERSIONFILES = tex/advi.sty tex/advi.hva \
doc_src/Includes/advi-version.html doc_src/Includes/env \
doc_src/advi.man

MANFILES = doc/advi.1

HELPFILES = doc/splash.dvi \
    doc/scratch_write_splash.dvi doc/scratch_draw_splash.dvi

.PHONY: fake distribute package website ftp announce tag untag version \
	documentation

fake:
	echo '\n\nThis Makefile is used to distribute the software,\n\
Read it to understand how to use it!'

distribute: package website ftp announce tag version

package: clean-all all documentation

documentation:
	# Make documentation and test before release
	$(MAKE) -f Makefile documentation
	(cd doc; $(MAKE) distribute)
	# Then clean the old stuff
	$(RM) release
	$(MKDIR) release
	# And check out a brand new version,
	# clean it
	# copy the documentation in it
	# then copy the images
	cd release; cvs co $(PACKAGEROOT); \
	$(CP) ../doc $(PACKAGEROOT)/; \
	$(RM) $(PACKAGEROOT)/Makefile.distrib; \
	find . -name '.cvsignore' -print | xargs $(RM); \
	find . -name 'CVS' -print | xargs $(RM); \
	$(CP) $(PACKAGEROOT)/README $(PACKAGEROOT)/doc/; \
	$(CP) $(PACKAGEROOT)/LICENSE $(PACKAGEROOT)/doc/; \
	$(CP) $(PACKAGEROOT)/INSTALL $(PACKAGEROOT)/doc/; \
	$(CP) ../doc/*.dvi $(PACKAGEROOT)/doc/; \
	$(CP) ../doc/*.ps $(PACKAGEROOT)/doc/; \
	$(CP) ../doc/*.pdf $(PACKAGEROOT)/doc/; \
	$(CP) ../doc/*.gif $(PACKAGEROOT)/doc/; \
	$(CP) ../doc/*.jpg $(PACKAGEROOT)/doc/; \
	$(CP) ../doc/*.$(MANEXT) $(PACKAGEROOT)/doc/; \
	$(CP) ../doc/*.html $(PACKAGEROOT)/doc/; \
	$(CP) ../doc/*.htm $(PACKAGEROOT)/doc/; \
	$(CP) ../doc/style.css $(PACKAGEROOT)/doc/
#	$(CP) ../doc/pngs $(PACKAGEROOT)/doc/

website:
	# Build the Web site
	$(RM) $(WEBSITEDIR)/*
	- $(MKDIR) $(WEBSITEDIR)
	$(CP) release/$(PACKAGEROOT)/doc/* $(WEBSITEDIR)/;
	- chgrp -R caml $(WEBSITEDIR)
	- chmod -R ug+w $(WEBSITEDIR)
	$(LN) $(WEBSITEDIR)/eng.htm $(WEBSITEDIR)/index.html

ftp:
	# Build the FTP site
	# Copy the legalease to $(FTPSITEDIR)
	$(MKDIR) $(FTPSITEDIR)
	$(CP) release/$(PACKAGEROOT)/LGPL \
		release/$(PACKAGEROOT)/README \
		release/$(PACKAGEROOT)/INDEX $(FTPSITEDIR)
	# Give the release its versioning name
	cd release; mv $(PACKAGEROOT) bazar-ocaml/$(PACKAGEFULLNAME); \
	# Build the archive and move it in the proper ftp site
	cd release/bazar-ocaml; \
	tar zcvf $(PACKAGEFULLNAME).tgz $(PACKAGEFULLNAME); \
	$(MV) $(PACKAGEFULLNAME).tgz $(FTPSITEDIR)
	$(RM) release

announce:
        mail -n -s "New release of $(PACKAGE)" \
                caml-announce@inria.fr < $(ANNOUNCEFILE)

tag:
        cvs rtag -R $(CVSRELEASETAG) bazar-ocaml/$(PACKAGE)

untag:
        $(RM) ./release
        cvs rtag -R -d $(CVSRELEASETAG) bazar-ocaml/$(PACKAGE)

# Automatic handling of versionning
version:
        for i in $(PACKAGEVERSIONFILES) $(DOCVERSIONFILES); do \
        echo $$i; \
        $(MV) $$i $$i~; \
        sed -e '/ersion/s/$(OLDVERSION)/$(VERSION)/' $$i~ | \
        sed -e '/year/s/$(OLDYEAR)/$(YEAR)/' > $$i; \
        done

back to top