-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathfpm.toml
90 lines (77 loc) · 2.46 KB
/
fpm.toml
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
# Drive fpm with commands like this:
#
# fpm clean --all
#
# # debug is the default profile
# fpm build
# fpm build --profile release
# fpm build --verbose --flag -Wno-tabs
# fpm @build # use options defined in file `build.rsp`
#
# # TODO: incorporate ifx testing into ci/cd. Try ifort too
# fpm build --compiler ifx --flag "-DSYNTRAN_INTEL -fpp"
#
# # `runner` is a prefix to the syntran cmd. anything after `-- ` is a cmd
# # arg passed after `syntran`, e.g. the syntran filename
# fpm run
# fpm run --runner rlwrap
# fpm run -- samples/primes-3.syntran
#
# fpm test # all tests
# fpm test test # "short" tests only
# fpm test long # long tests only
#
# # install to ~/bin/
# fpm install --prefix ~
#
# fpm is smart. If you run `fpm install` or `fpm test` without building first,
# it will automatically build
#
# Binary installers for fpm are available, but I built it from source:
#
# git clone https://github.com/fortran-lang/fpm
# cd fpm/
# ./install.sh -h
# ./install.sh --prefix='$HOME' # '~' doesn't work
# which fpm
# ls ~/bin/
# fpm --version
name = "syntran"
license = "BSD 3-Clause"
author = "Jeff Irwin"
## TODO: best practices for duplicating version here and in src?
#version = "0.0.27"
## Am I prepared to dox myself?
#maintainer = "jane.doe@example.com"
#copyright = "Copyright 2021, Jane Doe"
description = "syntran is an array-oriented language with an interpreter written in Fortran"
categories = ["interpreter"]
homepage = "https://github.com/JeffIrwin/syntran"
# TODO: set compiler flags, like -Wno-tab, etc. Probably best done in a build
# script which sets --flag (or FPM_FFLAGS env var, but that should probably be
# left to other users to override my --flag args)
[build]
auto-executables = true
auto-tests = true
auto-examples = true
#module-naming = true
module-naming = false
[install]
library = true
# To get module usage working with nvim gfortran linting, run
# `fpm install --prefix ./build` with library set to true here to place the .mod
# files somewhere that nvim/gfortran can find them, as opposed to the default
# location build/gfortran_{random-hex-shit}/*.mod
[[executable]]
name = "syntran"
source-dir = "src"
main = "main.f90"
[[test]]
name = "test"
source-dir = "src/tests/"
main = "test.f90"
[[test]]
#[[example]] # example would exclude this when running `fpm test`
name = "long"
source-dir = "src/tests/"
main = "long.f90"