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
|
import Development.Shake.FilePath ( (</>) )
import Fpm ( Arguments(..)
, start
)
import System.Directory ( withCurrentDirectory )
example_path = "test" </> "example_packages"
main :: IO ()
main = do
testHelloWorld
testHelloComplex
testHelloFpm
testCircular
testWithMakefile
testMakefileComplex
testSubmodule
testHelloWorld :: IO ()
testHelloWorld =
withCurrentDirectory (example_path </> "hello_world") $ start $ Run
{ runRelease = False
, runExample = False
, runCompiler = "gfortran"
, runFlags = []
, runRunner = Nothing
, runTarget = Nothing
, runArgs = Nothing
}
testHelloComplex :: IO ()
testHelloComplex =
withCurrentDirectory (example_path </> "hello_complex") $ start $ Test
{ testRelease = False
, testCompiler = "gfortran"
, testFlags = []
, testRunner = Nothing
, testTarget = Nothing
, testArgs = Nothing
}
testHelloFpm :: IO ()
testHelloFpm =
withCurrentDirectory (example_path </> "hello_fpm") $ start $ Run
{ runRelease = False
, runExample = False
, runCompiler = "gfortran"
, runFlags = []
, runRunner = Nothing
, runTarget = Nothing
, runArgs = Nothing
}
testWithExamples :: IO ()
testWithExamples =
withCurrentDirectory (example_path </> "with_examples") $ start $ Run
{ runRelease = False
, runExample = True
, runCompiler = "gfortran"
, runFlags = []
, runRunner = Nothing
, runTarget = Nothing
, runArgs = Nothing
}
testCircular :: IO ()
testCircular =
withCurrentDirectory (example_path </> "circular_example") $ start $ Test
{ testRelease = False
, testCompiler = "gfortran"
, testFlags = []
, testRunner = Nothing
, testTarget = Nothing
, testArgs = Nothing
}
testWithMakefile :: IO ()
testWithMakefile =
withCurrentDirectory (example_path </> "with_makefile") $ start $ Build
{ buildRelease = False
, buildCompiler = "gfortran"
, buildFlags = []
}
testMakefileComplex :: IO ()
testMakefileComplex =
withCurrentDirectory (example_path </> "makefile_complex") $ start $ Run
{ runRelease = False
, runExample = False
, runCompiler = "gfortran"
, runFlags = []
, runRunner = Nothing
, runTarget = Nothing
, runArgs = Nothing
}
testSubmodule :: IO ()
testSubmodule =
withCurrentDirectory (example_path </> "submodules") $ start $ Build
{ buildRelease = False
, buildCompiler = "gfortran"
, buildFlags = []
}
|