tools: makefile updates for hledger-lib
This commit is contained in:
		
							parent
							
								
									e40a190908
								
							
						
					
					
						commit
						8b2600984c
					
				
							
								
								
									
										29
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										29
									
								
								Makefile
									
									
									
									
									
								
							| @ -32,13 +32,13 @@ SOURCEFILES:= \ | |||||||
| 	$(MAIN) \
 | 	$(MAIN) \
 | ||||||
| 	[A-Z]*hs \
 | 	[A-Z]*hs \
 | ||||||
| 	Commands/[A-Z]*hs \
 | 	Commands/[A-Z]*hs \
 | ||||||
| 	Ledger/[A-Z]*hs | 	hledger-lib/Ledger/[A-Z]*hs | ||||||
| DOCFILES:=README README2 MANUAL NEWS CONTRIBUTORS SCREENSHOTS | DOCFILES:=README README2 MANUAL NEWS CONTRIBUTORS SCREENSHOTS | ||||||
| BINARYFILENAME=`runhaskell ./hledger.hs --binary-filename` | BINARYFILENAME=`runhaskell ./hledger.hs --binary-filename` | ||||||
| PATCHLEVEL:=$(shell expr `darcs changes --count --from-tag=\\\\\.` - 1) | PATCHLEVEL:=$(shell expr `darcs changes --count --from-tag=\\\\\.` - 1) | ||||||
| WARNINGS:=-W -fwarn-tabs #-fwarn-orphans -fwarn-simple-patterns -fwarn-monomorphism-restriction -fwarn-name-shadowing | WARNINGS:=-W -fwarn-tabs #-fwarn-orphans -fwarn-simple-patterns -fwarn-monomorphism-restriction -fwarn-name-shadowing | ||||||
| DEFINEFLAGS:=-DMAKE -DPATCHLEVEL=$(PATCHLEVEL) $(OPTFLAGS) | DEFINEFLAGS:=-DMAKE -DPATCHLEVEL=$(PATCHLEVEL) $(OPTFLAGS) | ||||||
| BUILDFLAGS:=$(DEFINEFLAGS) $(WARNINGS) | BUILDFLAGS:=$(DEFINEFLAGS) $(WARNINGS) -ihledger-lib | ||||||
| TIME:=$(shell date +"%Y%m%d%H%M") | TIME:=$(shell date +"%Y%m%d%H%M") | ||||||
| 
 | 
 | ||||||
| default: tag hledger | default: tag hledger | ||||||
| @ -445,35 +445,38 @@ upload: hackageupload updatesite | |||||||
| 
 | 
 | ||||||
| releaseandupload: release upload | releaseandupload: release upload | ||||||
| 
 | 
 | ||||||
| # file where the current release version is defined
 | # file defining the current release version
 | ||||||
| VERSIONFILE=VERSION | VERSIONFILE=VERSION | ||||||
| 
 |  | ||||||
| # two or three-part version string
 | # two or three-part version string
 | ||||||
| VERSION:=`grep -v '^--' $(VERSIONFILE)` | VERSION:=`grep -v '^--' $(VERSIONFILE)` | ||||||
| 
 |  | ||||||
| # three-part version string
 | # three-part version string
 | ||||||
| ifeq ($(shell ghc -e "length (filter (=='.') \"$(VERSION)\")"), 1) | ifeq ($(shell ghc -e "length (filter (=='.') \"$(VERSION)\")"), 1) | ||||||
| VERSION3:=$(VERSION).0 | VERSION3:=$(VERSION).0 | ||||||
| else | else | ||||||
| VERSION3:=$(VERSION) | VERSION3:=$(VERSION) | ||||||
| endif | endif | ||||||
| 
 | # files which should be updated when the version changes
 | ||||||
| # other files containing the version string
 | VERSIONSENSITIVEFILES=\
 | ||||||
| VERSIONFILES=hledger.cabal Version.hs | 	Version.hs \
 | ||||||
| 
 | 	hledger.cabal \
 | ||||||
| hledger.cabal: $(VERSIONFILE) | 	hledger-lib/hledger-lib.cabal \
 | ||||||
| 	perl -p -e "s/(^version: *) .*/\1 $(VERSION)/" -i $@ |  | ||||||
| 
 | 
 | ||||||
| Version.hs: $(VERSIONFILE) | Version.hs: $(VERSIONFILE) | ||||||
| 	perl -p -e "s/(^version *= *)\".*?\"/\1\"$(VERSION3)\"/" -i $@ | 	perl -p -e "s/(^version *= *)\".*?\"/\1\"$(VERSION3)\"/" -i $@ | ||||||
| 
 | 
 | ||||||
|  | hledger.cabal: $(VERSIONFILE) | ||||||
|  | 	perl -p -e "s/(^version: *) .*/\1 $(VERSION)/" -i $@ | ||||||
|  | 
 | ||||||
|  | hledger-lib/hledger-lib.cabal: $(VERSIONFILE) | ||||||
|  | 	perl -p -e "s/(^version: *) .*/\1 $(VERSION)/" -i $@ | ||||||
|  | 
 | ||||||
| # update the version string in local files. Triggered by "make".
 | # update the version string in local files. Triggered by "make".
 | ||||||
| setversion: $(VERSIONFILES) | setversion: $(VERSIONSENSITIVEFILES) | ||||||
| 
 | 
 | ||||||
| # update the version number in local files, and prompt to record changes
 | # update the version number in local files, and prompt to record changes
 | ||||||
| # in these files. Triggered by "make release".
 | # in these files. Triggered by "make release".
 | ||||||
| setandrecordversion: setversion | setandrecordversion: setversion | ||||||
| 	darcs record -m "update version" $(VERSIONFILE) $(VERSIONFILES) | 	darcs record -m "update version" $(VERSIONFILE) $(VERSIONSENSITIVEFILES) | ||||||
| 
 | 
 | ||||||
| tagrelease: | tagrelease: | ||||||
| 	darcs tag $(VERSION3) | 	darcs tag $(VERSION3) | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user