-
Notifications
You must be signed in to change notification settings - Fork 89
BLD: Get ESMF compiling on Cygwin #202
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
DWesl
wants to merge
47
commits into
develop
Choose a base branch
from
feature/esmf-cygwin-compile
base: develop
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from 16 commits
Commits
Show all changes
47 commits
Select commit
Hold shift + click to select a range
896f912
CI: Create a Cygwin workflow
DWesl 110c0be
FIX: Set ESMF_DIR to CI exec location.
DWesl 3045b70
FIX: Install Cygwin make.
DWesl fd0e167
FIX: Ensure bash/dash installed, Cygwin make used.
DWesl 839602d
FIX: Check ESMF_DIR setting.
DWesl 438d20c
DBG: Add more information to pwd check
DWesl fdd00b3
DBG: Try to fix newline errors.
DWesl 6d4fece
BLD: Ensure kill, sigset*, M_PI, and friends get defined on Cygwin.
DWesl 9a8dad3
CI: Install liblapack-devel on Cygwin runner.
DWesl 171e8b5
BLD: Fix shared library compile lines for Cygwin
DWesl b8f1537
FIX: Fix syntax in SL linking rule.
DWesl 44c66ba
CI,FIX: Install protex files for doc build.
DWesl 72e2a45
CI: Add Python and tests to Cygwin CI job.
DWesl 9bf40db
CI: Ensure Lapack is in Cygwin path.
DWesl 7689a41
Merge pull request #201 from DWesl/esmf-cygwin-compile
theurich 6ac7f8c
Fix logic syntax, and formatting.
theurich 9afb99d
CI: Update Cygwin CI workflow triggers.
DWesl 8323f76
CI:Cygwin: Remove ESMPy and doc checks.
DWesl f04998c
CI: Drop runs on each CI commit
DWesl 7a4891d
Merge branch 'esmf-org:develop' into esmf-cygwin-compile
DWesl caf1a51
CI: Add CMake for PIO build
DWesl ff0fa78
CI:Cygwin: Run on release-like tags
DWesl a6ce87b
CI:Cygwin: Install CMake for PIO
DWesl 7576ad7
CI:Cygwin: Remove LaTeX packages for skipped doc build
DWesl 9d3af6b
Merge branch 'esmf-org:develop' into esmf-cygwin-compile
DWesl fd49f7f
CI:Cygwin: Define ESMFMKFILE
DWesl 3ed8bf7
CI:Cygwin: Install libyaml-devel and specify ESMFMKFILE for ESMPy
DWesl 4047714
CI:Cygwin: Fix ESMFMKFILE value
DWesl ba9568f
ENH:ESMPy: Add ESMF_OS constant for Cygwin
DWesl 17d4b29
ENH:ESMPy: Tell ESMF loader about Cygwin
DWesl 23eb16e
CI:Cygwin: Check installed files
DWesl e941576
BLD:Cygwin: Ensure DLL gets installed, not just import library
DWesl c1aee18
BLD:Cygwin: List ESMF_LDIR contents after making a shared library
DWesl f9e8875
BLD:Cygwin: List ESMF_LDIR when building a shared library
DWesl ba335a8
BLD:Cygwin: Fix syntax for building shared libraries
DWesl ab311e4
BLD:Cygwin: Link netCDF libraries when linking PIO
DWesl 391f0ae
BLD:Cygwin: Fix syntax for netCDF libraries
DWesl 8e02f25
BLD:Cygwin: Fix syntax for shared library rule
DWesl 0460ac1
BLD:Cygwin: Create binary install directory
DWesl c9878cd
ENH:ESMPy:Cygwin: Separate DLL loading code from other platforms
DWesl 8ede710
DBG:CI:Cygwin: Find variable names in esmf.mk
DWesl 406bc94
FIX:ESMPy:Cygwin: Fix name of APPSDIR
DWesl 69481d8
CI:Cygwin: Install version of pytest compatible with python version
DWesl 1484abf
Merge branch 'feature/esmf-cygwin-compile' into esmf-cygwin-compile
DWesl e0de93b
Merge branch 'esmf-org:develop' into esmf-cygwin-compile
DWesl 640308b
Merge branch 'esmf-org:develop' into esmf-cygwin-compile
DWesl 29ab9b8
Merge pull request #370 from DWesl/esmf-cygwin-compile
DWesl File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,74 @@ | ||
| name: Test on Cygwin | ||
| on: ["push", "pull_request"] | ||
|
|
||
| concurrency: | ||
| group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | ||
| cancel-in-progress: true | ||
|
|
||
| permissions: | ||
| contents: read # to fetch code (actions/checkout) | ||
|
|
||
| env: | ||
| SHELLOPTS: igncr | ||
| CYGWIN_NOWINPATH: 1 | ||
| CHERE_INVOKING: 1 | ||
| ESMF_DIR: /cygdrive/d/a/esmf/esmf | ||
| ESMF_BOPT: O | ||
| ESMF_OPTLEVEL: 2 | ||
| ESMF_COMM: mpiuni | ||
| ESMF_COMPILER: gfortran | ||
| ESMF_TESTSHAREDOBJ: ON | ||
| ESMF_RANLIB: ranlib | ||
| ESMF_LAPACK: system | ||
| ESMF_LAPACK_LIBPATH: /usr/lib | ||
| ESMF_LAPACK_LIBS: -llapack -lblas | ||
| NETCDF: /usr | ||
| ESMF_NETCDF: split | ||
| ESMF_NETCDF_INCLUDE: /usr/include | ||
| ESMF_NETCDF_LIBPATH: /usr/lib | ||
| ESMF_CXX: g++ | ||
| ESMF_CXXCOMPILEOPTS: "-g -O2" | ||
| ESMF_F90: gfortran | ||
| ESMF_F90COMPILEOPTS: "-g -O2" | ||
| ESMF_INSTALL_PREFIX: /tmp/fakeroot/usr | ||
| ESMF_INSTALL_DOCDIR: share/doc/esmf | ||
|
|
||
| jobs: | ||
| cygwin_build_test: | ||
| runs-on: windows-latest | ||
| steps: | ||
| - run: git config --global core.autocrlf input | ||
| - uses: actions/checkout@v3 | ||
| with: | ||
| submodules: recursive | ||
| - uses: cygwin/cygwin-install-action@v4 | ||
| with: | ||
| platform: x86_64 | ||
| install-dir: 'C:\tools\cygwin' | ||
| packages: >- | ||
| openmpi gcc-core gcc-fortran gcc-g++ libnetcdf-devel libnetcdf-fortran-devel | ||
| texlive-collection-latex texlive-collection-latexextra perl make bash dash | ||
| liblapack-devel | ||
| python39-devel python39-pip python39-numpy python39-pytest | ||
| - name: Set Windows PATH | ||
| uses: egor-tensin/cleanup-path@v3 | ||
| with: | ||
| dirs: 'C:\tools\cygwin\bin;C:\tools\cygwin\lib\lapack' | ||
| - name: Check location | ||
| run: | | ||
| C:\tools\cygwin\bin\dash.exe -c "echo PWD; pwd; echo ESMF_DIR=${ESMF_DIR}" | ||
| - name: Build ESMF | ||
| run: | | ||
| C:\tools\cygwin\bin\dash.exe -c "/usr/bin/make all" | ||
| - name: Build ESMPy | ||
| run: | | ||
| C:\tools\cygwin\bin\dash.exe -c "cd src/addon/esmpy; python -m pip install ." | ||
| - name: Check ESMF | ||
| run: | | ||
| C:\tools\cygwin\bin\dash.exe -c "/usr/bin/make check" | ||
| - name: Check ESMPy | ||
| run: | | ||
| C:\tools\cygwin\bin\dash.exe -c "cd src/addon/esmpy; /usr/bin/make download test_all" | ||
| - name: Build ESMF Docs | ||
| run: | | ||
| C:\tools\cygwin\bin\dash.exe -c "/usr/bin/make doc" | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.