aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorOndřej Čertík <ondrej@certik.us>2020-01-12 22:45:33 +0000
committerOndřej Čertík <ondrej@certik.us>2020-01-12 22:45:33 +0000
commit88101d7128d80a929ab526058a5ef784e567d33a (patch)
tree9422ca334f8822d17f205f4e0b8ecb34883874d7 /src
parentee89a3e3dfeae3881065a81646c43d8ac07824a5 (diff)
parent8547d5b5c31d9b2f5bde16965027c2feffa01f9c (diff)
downloadfpm-88101d7128d80a929ab526058a5ef784e567d33a.tar.gz
fpm-88101d7128d80a929ab526058a5ef784e567d33a.zip
Merge branch 'cmake2' into 'master'
Generate CMakeLists.txt from a template See merge request certik/fpm!6
Diffstat (limited to 'src')
-rw-r--r--src/main.rs17
1 files changed, 9 insertions, 8 deletions
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", "."])