RSS Git Download  Clone
Raw Blame History
################################################################################
#	Master Makefile for TMS Sources
#				T.Barnaby,	BEAM Ltd,	2006-12-07
################################################################################
#

TOP	= ${shell pwd}

include ${TOP}/Makefile.config

LDIRS	= beam libTms
SDIRS	= config tmsSigGen tmsStateGen tmsPuServer tmsServer tmsControl
SDIRS	+= tmsExamples tmsDevTest
DDIRS	= datasrc
ADIRS	= $(LDIRS) $(SDIRS) $(DDIRS)

SVNDIRS	= $(LDIRS) $(SDIRS) $(DDIRS)
SVNROOT	= file:///src/cern/SVN/tms

RPMS	= tms-$(VERSION)-$(RELEASE).i386.rpm

.PHONY: all install clean includes depend
.PHONY: fresh checkout commit svnrelease svntag svnimport

.SUFFIXES: .spec -$(VERSION)-$(RELEASE).i386.rpm

.spec-$(VERSION)-$(RELEASE).i386.rpm:
	rpmbuild -bb -D "version $(VERSION)" -D "release $(RELEASE)" $^
	mv /scratch/rpms/RPMS/i386/$*-$(VERSION)-$(RELEASE).i386.rpm packages
	
all:
	@(for f in $(LDIRS); do if !(make -C $$f all); then break; fi; done)
	@(for f in $(SDIRS); do if !(make -C $$f all); then break; fi; done)
	@(for f in $(DDIRS); do if !(make -C $$f all); then break; fi; done)

install:
	@for f in $(ADIRS); do if ! (make -C $$f install); then break; fi; done
	
clean:
	@(for f in $(ADIRS); do (make -C $$f clean); done)

includes:
	@(for f in $(ADIRS); do (make -C $$f includes); done)

depend:
	@(for f in $(ADIRS); do (make -C $$f depend); done)

fresh:
	make clean includes depend all

#rpms:	clean
rpms:
	tar -czC .. -f /scratch/rpms/SOURCES/tms.tar.gz tms
	rpmbuild -ba tms.spec

rpmsInstall:
	cp /scratch/rpms/RPMS/i386/tms-*$(VERSION)-$(RELEASE)*.rpm ../packages

svnSetup:
#	svnadmin create --fs-type fsfs /src/cern/SVN
#	svn mkdir -m "First import." $(SVNROOT) $(SVNROOT)/design $(SVNROOT)/releases

svnImportAll:
#	for f in $(SVNDIRS); do\
#		(echo Dir: $$f;\
#		svn mkdir -m "First import." $(SVNROOT)/$$f $(SVNROOT)/$$f/trunk $(SVNROOT)/$$f/tags $(SVNROOT)/$$f/branches;\
#		svn import -m "First import." $$f $(SVNROOT)/$$f/trunk); done;
		
svnCheckoutAll:
	for f in $(SVNDIRS); do (svn checkout $(SVNROOT)/$$f/trunk $$f); done;

svnList:
	svn list $(SVNROOT)

svnListReleases:
	svn list $(SVNROOT)/releases

svnCommit:
	for f in $(SVNDIRS); do (echo Dir: $$f; cd $$f; svn commit); done;

svnRelease:
	svn mkdir $(SVNROOT)/releases/release-$(VERSION) -m "Release"
	for f in $(SVNDIRS); do (svn copy  -m "Release" $(SVNROOT)/$$f $(SVNROOT)/releases/release-${VERSION}); done;

svnDiff:
	for f in $(SVNDIRS); do (echo Dir: $$f; cd $$f; svn diff); done;