aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLKedward <laurence.kedward@bristol.ac.uk>2020-09-19 11:28:45 +0100
committerLKedward <laurence.kedward@bristol.ac.uk>2020-09-19 11:28:45 +0100
commitf2a51196aa33fca3ae19a02a601dfa190fe14d80 (patch)
treed7b89a7a7edf0dbdc86666f9987e2f145f55b7e5
parent5f7e4e5ec4fe10b7cca8aeaadb98ab376cdedfaf (diff)
downloadfpm-f2a51196aa33fca3ae19a02a601dfa190fe14d80.tar.gz
fpm-f2a51196aa33fca3ae19a02a601dfa190fe14d80.zip
Add: example package with single source program and module
-rwxr-xr-xci/run_tests.bat10
-rwxr-xr-xci/run_tests.sh6
-rw-r--r--test/example_packages/README.md23
-rw-r--r--test/example_packages/program_with_module/app/main.f9010
-rw-r--r--test/example_packages/program_with_module/fpm.toml1
5 files changed, 38 insertions, 12 deletions
diff --git a/ci/run_tests.bat b/ci/run_tests.bat
index 5a4d624..92b3cd6 100755
--- a/ci/run_tests.bat
+++ b/ci/run_tests.bat
@@ -58,4 +58,14 @@ cd ..\submodules
if errorlevel 1 exit 1
..\..\..\fpm\build\gfortran_debug\app\fpm build
+if errorlevel 1 exit 1
+
+
+cd ..\program_with_module
+if errorlevel 1 exit 1
+
+..\..\..\fpm\build\gfortran_debug\app\fpm build
+if errorlevel 1 exit 1
+
+.\build\gfortran_debug\app\Program_with_module
if errorlevel 1 exit 1 \ No newline at end of file
diff --git a/ci/run_tests.sh b/ci/run_tests.sh
index 1f6d867..418fcf2 100755
--- a/ci/run_tests.sh
+++ b/ci/run_tests.sh
@@ -24,4 +24,8 @@ cd ../with_c
./build/gfortran_debug/app/with_c
cd ../submodules
-../../../fpm/build/gfortran_debug/app/fpm build \ No newline at end of file
+../../../fpm/build/gfortran_debug/app/fpm build
+
+cd ../program_with_module
+../../../fpm/build/gfortran_debug/app/fpm build
+./build/gfortran_debug/app/Program_with_module \ No newline at end of file
diff --git a/test/example_packages/README.md b/test/example_packages/README.md
index 086b967..06de927 100644
--- a/test/example_packages/README.md
+++ b/test/example_packages/README.md
@@ -4,14 +4,15 @@ See the table below for a list of the example packages provided in this director
the features demonstrated in each package and which versions of fpm are supported.
-| Name | Features | Bootstrap (Haskell) fpm | fpm |
-|------------------|---------------------------------------------------------------|:-----------------------:|:---:|
-| circular_example | Local path dependency; circular dependency | Y | N |
-| circular_test | Local path dependency; circular dependency | Y | N |
-| hello_complex | Non-standard directory layout; multiple tests and executables | Y | Y |
-| hello_fpm | App-only; local path dependency | Y | N |
-| hello_world | App-only | Y | Y |
-| makefile_complex | External build command (makefile); local path dependency | Y | N |
-| submodules | Lib-only; submodules (3 levels) | N | Y |
-| with_c | Compile with `c` source files | N | Y |
-| with_makefile | External build command (makefile) | Y | N | \ No newline at end of file
+| Name | Features | Bootstrap (Haskell) fpm | fpm |
+|---------------------|---------------------------------------------------------------|:-----------------------:|:---:|
+| circular_example | Local path dependency; circular dependency | Y | N |
+| circular_test | Local path dependency; circular dependency | Y | N |
+| hello_complex | Non-standard directory layout; multiple tests and executables | Y | Y |
+| hello_fpm | App-only; local path dependency | Y | N |
+| hello_world | App-only | Y | Y |
+| makefile_complex | External build command (makefile); local path dependency | Y | N |
+| program_with_module | App-only; module+program in single source file | Y | Y |
+| submodules | Lib-only; submodules (3 levels) | N | Y |
+| with_c | Compile with `c` source files | N | Y |
+| with_makefile | External build command (makefile) | Y | N | \ No newline at end of file
diff --git a/test/example_packages/program_with_module/app/main.f90 b/test/example_packages/program_with_module/app/main.f90
new file mode 100644
index 0000000..59441f0
--- /dev/null
+++ b/test/example_packages/program_with_module/app/main.f90
@@ -0,0 +1,10 @@
+module greet_m
+ implicit none
+ character(*), parameter :: greeting = 'Hello, fpm!'
+end module greet_m
+
+program program_with_module
+ use greet_m, only: greeting
+ implicit none
+ print *, greeting
+end program program_with_module
diff --git a/test/example_packages/program_with_module/fpm.toml b/test/example_packages/program_with_module/fpm.toml
new file mode 100644
index 0000000..bce6aa2
--- /dev/null
+++ b/test/example_packages/program_with_module/fpm.toml
@@ -0,0 +1 @@
+name = "Program_with_module"