Skip to content

Commit

Permalink
OpenCoarrays-2.2.0 (WIP)
Browse files Browse the repository at this point in the history
  • Loading branch information
fd00 committed Aug 12, 2018
1 parent f472190 commit aa1f70d
Show file tree
Hide file tree
Showing 3 changed files with 33 additions and 26 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,10 @@ CYGCMAKE_GENERATOR="Unix Makefiles" # CMake Error: The Ninja generator does not

inherit cmake

CYGCMAKE_ARGS="
-DCAF_ENABLE_ISO_Fortran_BINDING:BOOL=ON

This comment has been minimized.

Copy link
@zbeekman

zbeekman Oct 8, 2019

I think this should be off by default; I think GFortran has started implementing this natively, and our implementation is probably fragile.

"

PKG_NAMES="
OpenCoarrays
libcaf_mpi2
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
--- origsrc/OpenCoarrays-2.1.0/CMakeLists.txt 2018-06-01 00:04:58.000000000 +0900
+++ src/OpenCoarrays-2.1.0/CMakeLists.txt 2018-07-31 12:17:46.008548100 +0900
@@ -479,7 +479,7 @@ function(caf_compile_executable target m
--- origsrc/OpenCoarrays-2.2.0/CMakeLists.txt 2018-08-10 23:01:51.000000000 +0900
+++ src/OpenCoarrays-2.2.0/CMakeLists.txt 2018-08-12 13:02:27.971108000 +0900
@@ -488,7 +488,7 @@ function(caf_compile_executable target m
endforeach()
add_custom_command(OUTPUT "${target}"
COMMAND "${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_BINDIR}/caf" ${includes} ${localDefs} ${config_Fortran_flags} -o "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${target}" "${CMAKE_CURRENT_SOURCE_DIR}/${main_depend}" ${ARGN}
Expand All @@ -9,8 +9,8 @@
VERBATIM
)
add_custom_target("build_${target}" ALL
--- origsrc/OpenCoarrays-2.1.0/src/iso-fortran-binding/CMakeLists.txt 2018-06-01 00:04:58.000000000 +0900
+++ src/OpenCoarrays-2.1.0/src/iso-fortran-binding/CMakeLists.txt 2018-07-31 22:32:21.128527600 +0900
--- origsrc/OpenCoarrays-2.2.0/src/iso-fortran-binding/CMakeLists.txt 2018-08-10 23:01:51.000000000 +0900
+++ src/OpenCoarrays-2.2.0/src/iso-fortran-binding/CMakeLists.txt 2018-08-12 13:02:27.986890400 +0900
@@ -1,7 +1,10 @@
add_library(ISO_Fortran_binding SHARED ISO_Fortran_binding.c)
+
Expand Down Expand Up @@ -54,9 +54,9 @@
PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}"
)
+endif()
--- origsrc/OpenCoarrays-2.1.0/src/mpi/CMakeLists.txt 2018-06-01 00:04:58.000000000 +0900
+++ src/OpenCoarrays-2.1.0/src/mpi/CMakeLists.txt 2018-07-31 12:17:46.024188800 +0900
@@ -151,10 +151,16 @@ set_target_properties(opencoarrays_mod
--- origsrc/OpenCoarrays-2.2.0/src/mpi/CMakeLists.txt 2018-08-10 23:01:51.000000000 +0900
+++ src/OpenCoarrays-2.2.0/src/mpi/CMakeLists.txt 2018-08-12 13:02:28.002349400 +0900
@@ -156,10 +156,16 @@ set_target_properties(opencoarrays_mod
Fortran_MODULE_DIRECTORY "${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_INCLUDEDIR}/${mod_dir_tail}"
POSITION_INDEPENDENT_CODE TRUE)

Expand All @@ -75,7 +75,7 @@

set(CAF_SO_VERSION 0)
if(gfortran_compiler)
@@ -184,25 +190,31 @@ endif()
@@ -189,25 +195,31 @@ endif()
install(DIRECTORY "${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_INCLUDEDIR}/" DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}"
FILES_MATCHING PATTERN "*.mod")

Expand Down Expand Up @@ -113,7 +113,7 @@

##############################################
# Configure `caf` and `cafrun` wrapper scripts
@@ -233,10 +245,16 @@ foreach( fcflag IN LISTS MPI_Fortran_COM
@@ -238,10 +250,16 @@ foreach( fcflag IN LISTS MPI_Fortran_COM
set(CAF_MPI_Fortran_COMPILE_FLAGS "${CAF_MPI_Fortran_COMPILE_FLAGS} ${fcflag}" )
endforeach()
string(STRIP "${CAF_MPI_Fortran_COMPILE_FLAGS}" CAF_MPI_Fortran_COMPILE_FLAGS)
Expand All @@ -133,17 +133,17 @@

configure_file("${CMAKE_SOURCE_DIR}/src/extensions/caf.in" "${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_BINDIR}/caf"
@ONLY)
--- origsrc/OpenCoarrays-2.1.0/src/tests/integration/pde_solvers/coarrayBurgers/CMakeLists.txt 2018-06-01 00:04:58.000000000 +0900
+++ src/OpenCoarrays-2.1.0/src/tests/integration/pde_solvers/coarrayBurgers/CMakeLists.txt 2018-07-31 12:17:46.024188800 +0900
--- origsrc/OpenCoarrays-2.2.0/src/tests/integration/pde_solvers/coarrayBurgers/CMakeLists.txt 2018-08-10 23:01:51.000000000 +0900
+++ src/OpenCoarrays-2.2.0/src/tests/integration/pde_solvers/coarrayBurgers/CMakeLists.txt 2018-08-12 13:02:28.002349400 +0900
@@ -27,5 +27,5 @@ add_executable(coarray_burgers_pde
${library_directory}/object_interface.F90
${library_directory}/co_object_interface.F90
)
-add_dependencies(coarray_burgers_pde caf_mpi_static)
+add_dependencies(coarray_burgers_pde caf_mpi)
target_include_directories(coarray_burgers_pde PRIVATE ${config_directory})
--- origsrc/OpenCoarrays-2.1.0/src/tests/integration/pde_solvers/coarrayHeatSimplified/CMakeLists.txt 2018-06-01 00:04:58.000000000 +0900
+++ src/OpenCoarrays-2.1.0/src/tests/integration/pde_solvers/coarrayHeatSimplified/CMakeLists.txt 2018-07-31 12:17:46.039797800 +0900
--- origsrc/OpenCoarrays-2.2.0/src/tests/integration/pde_solvers/coarrayHeatSimplified/CMakeLists.txt 2018-08-10 23:01:51.000000000 +0900
+++ src/OpenCoarrays-2.2.0/src/tests/integration/pde_solvers/coarrayHeatSimplified/CMakeLists.txt 2018-08-12 13:02:28.017978700 +0900
@@ -1,11 +1,11 @@
set(CMAKE_Fortran_COMPILER "${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_BINDIR}/caf")
add_library(local_field OBJECT local_field.f90)
Expand Down
27 changes: 15 additions & 12 deletions OpenCoarrays/README
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ features of the Fortran 2018 Draft International Standard.
Runtime requirements:
bash-4.4.12-3
cygwin-2.10.0-1
libcaf_mpi2-2.1.0-1bl1
libcaf_mpi2-2.2.0-1bl1
libgfortran4-7.3.0-3
libISO_Fortran_binding0-2.1.0-1bl1
libISO_Fortran_binding0-2.2.0-1bl1
libopenmpi40-3.1.1-2
libopenmpifh40-3.1.1-2

Expand All @@ -28,24 +28,24 @@ Canonical website:
https://github.com/sourceryinstitute/OpenCoarrays

Canonical download:
https://github.com/sourceryinstitute/OpenCoarrays/releases/download/2.1.0/OpenCoarrays-2.1.0.tar.gz
https://github.com/sourceryinstitute/OpenCoarrays/releases/download/2.2.0/OpenCoarrays-2.2.0.tar.gz

-------------------------------------------

Build instructions:
1. unpack OpenCoarrays-2.1.0-X-src.tar.xz
1. unpack OpenCoarrays-2.2.0-X-src.tar.xz
2. if you use setup to install this src package,
it will be unpacked under /usr/src automatically
% cd /usr/src
% cygport ./OpenCoarrays-2.1.0-X.cygport all
% cygport ./OpenCoarrays-2.2.0-X.cygport all

This will create:
/usr/src/OpenCoarrays-2.1.0-X-src.tar.xz
/usr/src/OpenCoarrays-2.1.0-X.tar.xz
/usr/src/libcaf_mpi2-2.1.0-X.tar.xz
/usr/src/libcaf_mpi-devel-2.1.0-X.tar.xz
/usr/src/libISO_Fortran_binding0-2.1.0-X.tar.xz
/usr/src/libISO_Fortran_binding-devel-2.1.0-X.tar.xz
/usr/src/OpenCoarrays-2.2.0-X-src.tar.xz
/usr/src/OpenCoarrays-2.2.0-X.tar.xz
/usr/src/libcaf_mpi2-2.2.0-X.tar.xz
/usr/src/libcaf_mpi-devel-2.2.0-X.tar.xz
/usr/src/libISO_Fortran_binding0-2.2.0-X.tar.xz
/usr/src/libISO_Fortran_binding-devel-2.2.0-X.tar.xz

-------------------------------------------

Expand All @@ -66,7 +66,7 @@ Files included in the binary package:
/usr/bin/cygcaf_mpi-2.dll

(libcaf_mpi-devel)
/usr/include/OpenCoarrays-2.1.0_GNU-7.3.0/opencoarrays.mod
/usr/include/OpenCoarrays-2.2.0_GNU-7.3.0/opencoarrays.mod
/usr/include/libcaf-gfortran-descriptor.h
/usr/include/libcaf.h
/usr/include/opencoarrays.mod
Expand All @@ -87,6 +87,9 @@ Files included in the binary package:

Port Notes:

----- version 2.2.0-1bl1 -----
Version bump.

----- version 2.1.0-1bl1 -----
Version bump.

Expand Down

1 comment on commit aa1f70d

@zbeekman
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks like the patch can be upstreamed. I will probably add the CAF prefix to the ENABLE_STATIC CMake option unless that naming is an agreed upon convention.

Please sign in to comment.