aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-11-29suggested changesinit current directory[i]
2020-11-29Rewrite README to focus on the Fortran fpm versionSebastian Ehlert
- describe complete bootstapping process in collapsed details section
2020-11-28Changes for reviewLKedward
Lowercase openmp pragmas
2020-11-27Merge pull request #1 from LKedward/compiler-cleanupurbanjost
Remove white-space changes from compiler branch for PR
2020-11-27Remove white-space changes from compiler branch for PRLKedward
2020-11-27The `run`, `test`, and `build` Fortran fpm(1) command has a new switchinit current directory[i]
added called *--fc* that sets the Fortran compiler name. + The default compiler name to use is taken from the value of the environment variable FPM_FC. + If not set, the environment variable FC is used. + If it is not set the name _gfortran_ is used. + The value specified on the command line overrides any default. FC is apparently a commonly used environment variable for the compiler, is short, and allows for specifying compilers for other languages like C (ie. `-cc gcc`) That is part of the reasons to use `--fc` instead of `--compiler`. Since there is a chance the currently set value of FC may be used by other applications being used, and to allow for a temporary change of the default the fpm-specific variable FPM_FC is supported in addition to FC and has higher precedence. However, since the Haskell version has a similar switch called **--compiler** that name is an alias for **-fc**. A skeleton was started for standard debug and release builds that allows for compilers other than **gfortran**. I now have access to **ifort** and **nvfortran** and it works with at least simple cases for those compilers. Looking for someone with access to other compilers to help flesh that out. The list of executables to run with the `run` and `test` subcommands can now be prefixed with **--target**, as with the Haskell version of ffpm(1). So default usage is unchanged from the previous version. By simply setting FC or FPM_FC you can use it like the previous version with other compilers for default debug and release builds. How does that sound? wget http://www.urbanjost.altervista.org/REMOVE/ffpm.f90 gfortran ffpm.f90 -o $HOME/.local/bin/ffpm ``` # get a test package or use your own if [ ! -d M_CLI2 ] then git clone https://github.com/urbanjost/M_CLI2 fi cd M_CLI2 # default build using ifort ffpm build --fc ifort export FPM_FC=ifort ffpm run ffpm test
2020-11-25Merge pull request #246 from LKedward/release_buildsLaurence Kedward
CI: upload binaries when a release is published
2020-11-25Merge pull request #239 from urbanjost/runnerLaurence Kedward
Add --runner option to Fortran fpm to match Haskell fpm
2020-11-25Merge branch 'master' into incremental2Laurence Kedward
2020-11-25Add: testsuite for backend build scheduling routinesLKedward
2020-11-25Merge pull request #247 from awvwgk/manifestLaurence Kedward
Refactoring of manifest types
2020-11-23Minor fix: for link flag concatenationLKedward
2020-11-23Cleanup and refactor for PRLKedward
Move enumeration of link target object dependencies out of backend and into fpm_targets module. Add string_cat function for concatenating arrays of string_t. Add comments and procedure descriptions.
2020-11-22Minor fix: explicitly specify .exe suffix in windows.Laurence Kedward
2020-11-21better examples for --runner and errata per @awvwgkinit current directory[i]
2020-11-21Refactor: backend build schedulingLKedward
Separate build targets into schedule regions for parallel builds.
2020-11-21correct non-standard logical formatinit current directory[i]
2020-11-21Update: run command for incremental rebuildsLKedward
2020-11-21Refactor: backend for incremental rebuildingLKedward
2020-11-21Update: source processing with file hashesLKedward
2020-11-21Add: simple string hashing functionsLKedward
2020-11-21Refactoring of manifest typesSebastian Ehlert
- move defaults from fpm to fpm_manifest - rename all manifest types from *_t to *_config_t - instance names correspond to table names in manifest
2020-11-21Update: README with executable permission text for binariesLKedward
2020-11-21help textinit current directory[i]
2020-11-21add help text for --runner parameterinit current directory[i]
2020-11-20Add: hashes to binary releasesLKedward
2020-11-20Update: naming of bootstrap binary releaseLKedward
2020-11-20Update: naming of binary releasesLKedward
2020-11-19Check release version on all platformsLKedward
2020-11-19Restrict github actions release triggersLKedward
2020-11-19Update: README with binary download link.LKedward
2020-11-19Fix compile flags for release binariesLKedward
2020-11-18minor revision change to version of M_CLI2 that builds with intel ifort compilerinit current directory[i]
2020-11-18remove short argument names and a few errata in documentsinit current directory[i]
2020-11-18Update: binary release CILKedward
2020-11-18Compile release binaries staticallyLKedward
2020-11-18Move release workflow into existing CI to reuse build/test workflowLKedward
2020-11-18Fix: binary_release ciLKedward
2020-11-18Add: CI to upload binaries on releaseLKedward
2020-11-17Merge pull request #241 from 14NGiestas/patch-1Laurence Kedward
Fix docs CI failing #240
2020-11-16Fix docs CI failing #240Ian Giestas Pauli
I didn't found any `set-env` command in the JamesIves repo, so maybe bumping the version fixes the issue.
2020-11-16Merge pull request #221 from everythingfunctional/test_runner_optionBrad Richardson
Test and executable runner options
2020-11-15Merge branch 'runner' of https://github.com/urbanjost/fpm into runnerJohn S. Urban
2020-11-15This option already exists in the Haskell version. It helps reduce the needJohn S. Urban
for the user to interact directly with the build/ directory, which ideally should be a black box as far as the user is concerned. --runner CMD A command to prefix the program execution paths with. For use with utilities like valgrind(1), time(1), and other utilities that launch executables; commands that inspect the files like ldd(1), file(1), and ls(1); and that copy or change the files like strip(1) and install(1). EXAMPLES # install executables in directory (assuming install(1) exists) fpm run -c 'install -b -m 0711 -p -t /usr/local/bin'
2020-11-15This option already exists in the Haskell version. It helps reduce the needJohn S. Urban
for the user to interact directly with the build/ directory, which ideally should be a black box as far as the user is concerned. --runner CMD A command to prefix the program execution paths with. For use with utilities like valgrind(1), time(1), and other utilities that launch executables; commands that inspect the files like ldd(1), file(1), and ls(1); and that copy or change the files like strip(1) and install(1). EXAMPLES # install executables in directory (assuming install(1) exists) fpm run -c 'install -b -m 0711 -p -t /usr/local/bin'
2020-11-14Add workflow to build and deploy documentation (#237)Sebastian Ehlert
2020-11-14Merge pull request https://github.com/fortran-lang/fpm/pull/233 from awvwgk/linkSebastian Ehlert
Allow linking against external libraries
2020-11-13Allow external link dependencies with scope limited to targetsSebastian Ehlert
- move reader for string list to toml-f proxy - allow link entry in executable and test tables - bump toml-f version to v0.2.1 - add example package linking a single executable against gomp
2020-11-13Add link entry also to executable and test sectionsSebastian Ehlert
- allows external library dependencies also for single targets
2020-11-13Add package with external dependencySebastian Ehlert
- BLAS is installed on the OSX and Linux image, but not on Windows