diff options
author | Ondřej Čertík <ondrej@certik.us> | 2020-01-12 22:45:33 +0000 |
---|---|---|
committer | Ondřej Čertík <ondrej@certik.us> | 2020-01-12 22:45:33 +0000 |
commit | 88101d7128d80a929ab526058a5ef784e567d33a (patch) | |
tree | 9422ca334f8822d17f205f4e0b8ecb34883874d7 | |
parent | ee89a3e3dfeae3881065a81646c43d8ac07824a5 (diff) | |
parent | 8547d5b5c31d9b2f5bde16965027c2feffa01f9c (diff) | |
download | fpm-88101d7128d80a929ab526058a5ef784e567d33a.tar.gz fpm-88101d7128d80a929ab526058a5ef784e567d33a.zip |
Merge branch 'cmake2' into 'master'
Generate CMakeLists.txt from a template
See merge request certik/fpm!6
-rwxr-xr-x | run_tests.sh | 6 | ||||
-rw-r--r-- | src/main.rs | 17 | ||||
-rw-r--r-- | tests/2/main.f90 | 5 |
3 files changed, 20 insertions, 8 deletions
diff --git a/run_tests.sh b/run_tests.sh index d47133b..8a517cc 100755 --- a/run_tests.sh +++ b/run_tests.sh @@ -7,3 +7,9 @@ fpm=$(pwd)/target/debug/fpm cd tests/1 ${fpm} build ${fpm} run +cd ../.. + +cd tests/2 +${fpm} build +${fpm} run +cd ../.. diff --git a/src/main.rs b/src/main.rs index ddcb335..9252c56 100644 --- a/src/main.rs +++ b/src/main.rs @@ -26,24 +26,25 @@ fn collect_source_files() -> Vec<std::path::PathBuf> { fn build() { let files = collect_source_files(); + let mut files2: String = String::new(); for file in &files { println!("File: {}", file.to_str().unwrap()); + if !file.to_str().unwrap().ends_with("main.f90") { + let s1:String = files2.to_string(); + let s2:String = file.to_str().unwrap().to_string(); + files2 = s1 + " " + &s2; + } } println!("Files: {:?}", files); - let s = "\ + let s = format!("\ cmake_minimum_required(VERSION 3.5.0 FATAL_ERROR) enable_language(Fortran) project(p1) -set(SRC - a.f90 - b.f90 -) - -add_executable(p1 main.f90 ${SRC}) -"; +add_executable(p1 main.f90 {}) +", files2); std::fs::write("CMakeLists.txt", s).unwrap(); let output = std::process::Command::new("cmake") .args(&["-B", "build", "."]) diff --git a/tests/2/main.f90 b/tests/2/main.f90 new file mode 100644 index 0000000..580da98 --- /dev/null +++ b/tests/2/main.f90 @@ -0,0 +1,5 @@ +program test2 +implicit none + +print *, "OK" +end |