-
Notifications
You must be signed in to change notification settings - Fork 2
/
Makefile
120 lines (104 loc) · 3.38 KB
/
Makefile
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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
.PHONY: help all download install clean docs pypi pypi-test
debug = false
linux = false
FC = gfortran
DBG = -Wall -Wextra -pedantic -fimplicit-none -fcheck=all -fdump-core -fbacktrace -finit-real=nan -fbounds-check -Wline-truncation -Wcharacter-truncation
DBG += -Wsurprising -Waliasing -Wunused-parameter -fall-intrinsics -ffree-form -fdump-fortran-optimized -ffpe-trap=invalid,zero
PAR = -fopenmp -fallow-argument-mismatch -w
ifeq ($(debug),true)
FLAGS = -O0 $(PAR) $(DBG)
else
FLAGS = -O3 $(PAR)
endif
ifeq ($(linux),true)
LIBS = -L lib -l cfitsio
else
LIBS = -L lib -l cfitsio.5
endif
help:
@echo "all - download and install"
@echo "download - download required files"
@echo "install - install ARTES"
@echo "clean - remove artifacts"
@echo "docs - generate documentation"
@echo "pypi - submit package to the PyPI server"
@echo "pypi-test - submit package to the TestPyPI server"
start:
@echo \####################################################
@echo \ \ \ \ \ \ \ \ \ \ \ _ \ \ ___ \ _____ \ \ ___ \ \ ___
@echo \ \ \ \ \ \ \ \ \ \ \/_\\ \ \| _ \\ \|_ \ _\| \| __\| \/ __\|
@echo \ \ \ \ \ \ \ \ \ \/ _ \\ \ \| \ \/ \ \| \| \ \| _\| \ \\__ \\
@echo \ \ \ \ \ \ \ \ \ \/_\/ \\_\\ \|_\|_\\ \ \|_\| \ \|___\| \|___\/
@echo
@echo Atmospheric Radiative Transfer for Exoplanet Science
@echo
@echo ----------------------------------------------------
@echo
@echo Creating folders...
@echo
mkdir -p bin/
mkdir -p lib/
mkdir -p dat/molecules/
@echo
@echo ----------------------------------------------------
data:
@echo
@echo Downloading data...
@echo
wget -q --show-progress -O lib/libcfitsio.5.dylib https://home.strw.leidenuniv.nl/~stolker/artes/libcfitsio.5.dylib
wget -q --show-progress -O lib/libcfitsio.so.3 https://home.strw.leidenuniv.nl/~stolker/artes/libcfitsio.so.3
wget -q --show-progress -O dat/molecules/molecules.tar.gz https://home.strw.leidenuniv.nl/~stolker/artes/molecules.tar.gz
wget -q --show-progress -O bin/computepart_mac https://home.strw.leidenuniv.nl/~stolker/artes/computepart_mac
wget -q --show-progress -O bin/computepart_linux https://home.strw.leidenuniv.nl/~stolker/artes/computepart_linux
@echo
@echo ----------------------------------------------------
@echo
@echo Unpacking data...
@echo
tar zxf dat/molecules/molecules.tar.gz -C dat/molecules/
rm -f dat/molecules/molecules.tar.gz
@echo
@echo ----------------------------------------------------
@echo
@echo Setting permissions...
@echo
chmod 700 bin/computepart_mac
chmod 700 bin/computepart_linux
@echo
@echo ----------------------------------------------------
compile:
@echo
@echo Compiling...
@echo
$(FC) $(FLAGS) -c src/artes.f90
$(FC) $(FLAGS) -o bin/artes artes.o $(LIBS)
@echo
@echo ----------------------------------------------------
end:
@echo
@echo Finished!
@echo
@echo \####################################################
all: start data compile end
download: start data end
install: start compile end
clean:
rm -f artes.o
rm -f src/artes.*.so
rm -rf docs/_build
find . -name '*.pyc' -exec rm -f {} +
find . -name '__pycache__' -exec rm -rf {} +
rm -rf build/
rm -rf dist/
rm -rf artes.egg-info/
docs:
sphinx-apidoc -o docs src
cd docs/
$(MAKE) -C docs clean
$(MAKE) -C docs html
pypi:
python setup.py sdist bdist_wheel
twine upload dist/*
pypi-test:
python setup.py sdist bdist_wheel
twine upload --repository-url https://test.pypi.org/legacy/ dist/*