From 79b29a17c50d27bb089747a0b1ac23cf62db24c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20=C4=8Cert=C3=ADk?= Date: Thu, 20 Feb 2020 15:02:34 -0700 Subject: [PATCH 1/3] Reuse the FC env variable if present --- src/main.rs | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/main.rs b/src/main.rs index be715988f6..b3195c7dfa 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,6 +1,7 @@ use structopt::StructOpt; use toml::Value; use std::path::{Path, PathBuf}; +use std::env; #[derive(Debug, StructOpt)] struct Cli { @@ -67,10 +68,16 @@ add_executable(p1 ../main.f90 {}) }; args.extend(vec!["-B", "build", "."]); println!("[+] cmake {:?}", args); + let env_fc = env::var("FC"); + let fc : String = if env_fc.is_err() { + "gfortran".to_string() + } else { + env_fc.unwrap() + }; let output = std::process::Command::new("cmake") .args(&args) .current_dir(target_dir) - .env("FC", "gfortran") + .env("FC", fc) .output().unwrap(); println!("status: {}", output.status); println!("stdout: {}", String::from_utf8_lossy(&output.stdout)); From 8281c302054e479ba4d938971a426721f409ca23 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20=C4=8Cert=C3=ADk?= Date: Thu, 20 Feb 2020 15:08:14 -0700 Subject: [PATCH 2/3] Simplify the code --- src/main.rs | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/main.rs b/src/main.rs index b3195c7dfa..340c1d39f3 100644 --- a/src/main.rs +++ b/src/main.rs @@ -68,11 +68,9 @@ add_executable(p1 ../main.f90 {}) }; args.extend(vec!["-B", "build", "."]); println!("[+] cmake {:?}", args); - let env_fc = env::var("FC"); - let fc : String = if env_fc.is_err() { - "gfortran".to_string() - } else { - env_fc.unwrap() + let fc : String = match env::var("FC") { + Ok(val) => val, + Err(_) => "gfortran".to_string(), }; let output = std::process::Command::new("cmake") .args(&args) From 1dd8df9120fd6d7b4381b8dbc63acc4325450ad7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20=C4=8Cert=C3=ADk?= Date: Thu, 20 Feb 2020 14:36:27 -0700 Subject: [PATCH 3/3] CI: Do not install GFortran (already present) --- .github/workflows/CI.yml | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index fce83bb5f8..fcc50b6f0a 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -24,7 +24,7 @@ jobs: gcc_v: [9] # Version of GFortran we want to use. rust: [stable] env: - FC: gfortran-${{ matrix.gcc_v }} + FC: gfortran GCC_V: ${{ matrix.gcc_v }} steps: @@ -38,16 +38,10 @@ jobs: - name: Install GFortran Linux if: contains(matrix.os, 'ubuntu') run: | - sudo add-apt-repository ppa:ubuntu-toolchain-r/test - sudo apt-get update - sudo apt-get install -y gcc-${GCC_V} gfortran-${GCC_V} sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-${GCC_V} 100 \ --slave /usr/bin/gfortran gfortran /usr/bin/gfortran-${GCC_V} \ --slave /usr/bingcov gcov /usr/bin/gcov-${GCC_V} - - name: Install GFortran macOS - if: contains(matrix.os, 'macos') - run: brew install gcc@${GCC_V} || brew upgrade gcc@${GCC_V} || true - name: Install Rust uses: hecrj/setup-rust-action@v1