summaryrefslogtreecommitdiff
path: root/xmds2/realistic_Rb/Makefile
blob: 1f5c4fd0e2b8e4109ee508065a207a94b664d446 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
###  -*- make -*-
### This file is part of the Debian xmds package
### Copyright (C) 2006 Rafael Laboissiere
### This file is released under the GNU General Public License
### NO WARRANTIES!

INSTALL = install --mode=664 -D 

### This makefile can be used to build and run the XMDS examples

XMDS_FILES = $(shell ls *.xmds)
RUN_FILES = $(patsubst %.xmds,%.run,$(XMDS_FILES))
CC_FILES = $(patsubst %.xmds,%.cc,$(XMDS_FILES))
XSIL_FILES = $(patsubst %.xmds,%.xsil,$(XMDS_FILES))
M_FILES = $(patsubst %.xmds,%.m,$(XMDS_FILES))

test_dir = tests
test_result_dir = $(test_dir)/testsuite_results
XMDS_INCLUDES_misc  = RbChosenRho.txt RbInits.cdata RbEquations.cdata \
		      RbAtomConstants.cdata RbPropEquations.cdata
XMDS_INCLUDES_xmds_in_target_dir = $(XMDS_INCLUDES_misc:%=$(test_dir)/%)
XMDS_INCLUDES_cdata_in_target_dir = $(XMDS_INCLUDES_misc:%=$(test_result_dir)/%)

XMDS = xmds2
XSIL2GRAPHICS = xsil2graphics

all: $(RUN_FILES) 

%.run: %.xmds
	$(XMDS) $<
	mv $(patsubst %.xmds,%,$<) $@

%.xsil: %.run
	./$<  --E1o=0 --E3o=0

%.m: %.xsil
	$(XSIL2GRAPHICS) $<

plot: $(M_FILES)
	octave pp.m

clean:
	rm -f $(CC_FILES) $(RUN_FILES) $(M_FILES) $(XSIL_FILES) *.wisdom.fftw3 *.dat octave-core *.wisdom *.pdf 
	rm -f $(png_targets)
	rm -f $(eps_targets)

eps_targets  = $(wildcard *.eps)
pdf_targets  = $(eps_targets:%.eps=%.pdf)	
png_targets  = $(pdf_targets:%.pdf=%.png)

png: pdf $(png_targets) 

$(png_targets): %.png : %.pdf
	convert -density 300 $< $@

pdf: $(pdf_targets) 

$(XMDS_INCLUDES_cdata_in_target_dir): $(test_result_dir)/% : %
	$(INSTALL) $< $@

$(XMDS_INCLUDES_xmds_in_target_dir): $(test_dir)/% : %
	$(INSTALL) $< $@

test: $(XMDS_INCLUDES_cdata_in_target_dir) $(XMDS_INCLUDES_xmds_in_target_dir)
	$(INSTALL) $(XMDS_FILES) tests/testsuite/
	cd tests; ./run_tests.py

test_from_scratch:
	rm -r tests/testsuite_results


$(pdf_targets): %.pdf : %.eps
	cat $< | ps2eps -B > __tt.eps
	epspdf __tt.eps $@
	rm -f __tt.eps
	#ps2eps -B $< | epspdf $< $@
.PRECIOUS: %.run %.xsil %.m
.PHONY: all clean