Skip to content

Commit 72e00a6

Browse files
authored
Merge branch 'master' into document-and-refactor-make-inc
2 parents eb73215 + 427a93e commit 72e00a6

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

61 files changed

+3130
-436
lines changed

.travis.yml

Lines changed: 9 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,11 @@ env:
77
- MPICH_URL_HEAD="http://www.mpich.org/static/downloads/$MPICH_VER"
88
- MPICH_URL_TAIL="mpich-${MPICH_VER}.tar.gz"
99
- MPICH_DIR="$HOME/.local/usr/mpich"
10-
- MPICH_BOT_URL_HEAD="https://github.com/sourceryinstitute/opencoarrays/files/303249/"
11-
- MPICH_BOT_URL_TAIL="mpich-3.2_1.yosemite.bottle.1.tar.gz"
10+
- MPICH_BOT_URL_HEAD="https://github.com/sourceryinstitute/opencoarrays/files/452136/"
11+
- MPICH_BOT_URL_TAIL="mpich-3.2_2.yosemite.bottle.1.tar.gz"
12+
- FC=gfortran-6
13+
- CC=gcc-6
14+
- CXX=g++-6
1215

1316
matrix:
1417
include:
@@ -84,9 +87,6 @@ before_install:
8487
[[ -d "$CACHE/bin" ]] || mkdir -p "$CACHE/bin"
8588
[[ -d "$MPICH_DIR" ]] || mkdir -p "$MPICH_DIR"
8689
export PATH="$CACHE/bin:$PATH"
87-
export FC=gfortran-6
88-
export CC=gcc-6
89-
export CXX=g++-6
9090
$FC --version
9191
$CC --version
9292
$CXX --version
@@ -103,8 +103,6 @@ install:
103103
[[ "$(brew ls --versions $pkg)" ]] || brew install --force-bottle $pkg
104104
brew outdated $pkg || brew upgrade --force-bottle $pkg
105105
done
106-
export FC=gfortran-6
107-
export CC=gcc-6
108106
if ! [[ "$(brew ls --versions mpich)" ]] && [[ "X$BUILD_TYPE" != "XInstallScript" ]]; then
109107
wget ${MPICH_BOT_URL_HEAD}${MPICH_BOT_URL_TAIL}
110108
brew install --force-bottle ${MPICH_BOT_URL_TAIL}
@@ -114,8 +112,6 @@ install:
114112
mpif90 --version
115113
mpicc --version
116114
cmake --version
117-
export FC=mpif90
118-
export CC=mpicc
119115
elif [[ "X$BUILD_TYPE" = "XInstallScript" ]]; then # uninstall some stuff if present
120116
[[ "$(brew ls --versions cmake)" ]] && brew rm cmake || true
121117
[[ "$(brew ls --versions mpich)" ]] && brew rm mpich || true
@@ -143,30 +139,29 @@ install:
143139
mpif90 --version
144140
mpicc --version
145141
cmake --version
146-
export FC=mpif90
147-
export CC=mpicc
148142
fi
149143
set +o errexit
150144
151145
script:
152146
- |
153147
set -o errexit
154148
if [[ "X$BUILD_TYPE" = "XInstallScript" ]]; then
155-
export FC=gfortran-6
156-
export CC=gcc-6
157149
[[ -d "$HOME/opt" ]] || mkdir "$HOME/opt"
158150
[[ -d "$HOME/bin" ]] || mkdir "$HOME/bin"
159151
ln -fs "$(which gfortran-6)" "$HOME/bin/gfortran"
160152
ln -fs "$(which gcc-6)" "$HOME/bin/gcc"
161153
ln -fs "$(which g++-6)" "$HOME/bin/g++"
162154
export PATH="$PATH:$HOME/bin"
163155
./install.sh --yes-to-all -i "$HOME/opt/opencoarrays" -j 4 -f "$HOME/bin/gfortran" -c "$HOME/bin/gcc" -C "$HOME/bin/g++"
156+
cd prerequisites/builds/opencoarrays/*
157+
../../../installations/cmake/*/bin/ctest --output-on-failure
158+
cd -
164159
else
165160
mkdir cmake-build
166161
cd cmake-build
167162
cmake -DCMAKE_INSTALL_PREFIX:PATH="$HOME/OpenCoarrays" -DCMAKE_BUILD_TYPE="$BUILD_TYPE" ..
168163
make -j 4
169-
ctest --verbose
164+
ctest --output-on-failure
170165
make install
171166
cd ..
172167
fi

AddInstallationScriptTest.cmake

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
macro(add_installation_script_test name path)
2+
3+
# Copy the source to the binary tree
4+
configure_file(
5+
${CMAKE_CURRENT_SOURCE_DIR}/${path}/${name}
6+
${CMAKE_CURRENT_BINARY_DIR}/${path}/${name}
7+
COPYONLY
8+
)
9+
configure_file(
10+
${CMAKE_CURRENT_SOURCE_DIR}/${path}/${name}-usage
11+
${CMAKE_CURRENT_BINARY_DIR}/${path}/${name}-usage
12+
COPYONLY
13+
)
14+
add_test(NAME test-${name} COMMAND "${CMAKE_BINARY_DIR}/${path}/${name}")
15+
set_property(TEST test-${name} PROPERTY WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/${path}")
16+
set_property(TEST test-${name} PROPERTY ENVIRONMENT "OPENCOARRAYS_SRC_DIR=${CMAKE_SOURCE_DIR}")
17+
endmacro(add_installation_script_test)

CMakeLists.txt

Lines changed: 199 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,15 @@ set ( CMAKE_BUILD_TYPE "Release"
77
set_property ( CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS ${CMAKE_CONFIGURATION_TYPES} )
88

99
#Name project and specify source languages
10-
project(opencoarrays VERSION 1.6.3 LANGUAGES C Fortran)
10+
project(opencoarrays VERSION 1.7.5 LANGUAGES C Fortran)
1111

1212
#Print an error message on an attempt to build inside the source directory tree:
1313
if ("${CMAKE_CURRENT_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_BINARY_DIR}")
1414
message(FATAL_ERROR "ERROR! "
1515
"CMAKE_CURRENT_SOURCE_DIR=${CMAKE_CURRENT_SOURCE_DIR}"
1616
" == CMAKE_CURRENT_BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR}"
1717
"\nThis archive does not support in-source builds:\n"
18-
"You must now delete the CMakeCache.txt file and the CMakeFiles/ directory under"
18+
"You must now delete the CMakeCache.txt file and the CMakeFiles/ directory under "
1919
"the 'src' source directory or you will not be able to configure correctly!"
2020
"\nYou must now run something like:\n"
2121
" $ rm -r CMakeCache.txt CMakeFiles/"
@@ -88,6 +88,7 @@ else()
8888
endif()
8989

9090
if(gfortran_compiler)
91+
set(OLD_REQUIRED_FLAGS ${CMAKE_REQUIRED_FLAGS})
9192
set(CMAKE_REQUIRED_FLAGS "-fcoarray=single -ffree-form")
9293
endif()
9394
include(CheckFortranSourceCompiles)
@@ -99,9 +100,180 @@ CHECK_Fortran_SOURCE_COMPILES("
99100
end program
100101
" Check_Simple_Coarray_Fortran_Source_Compiles)
101102
if(gfortran_compiler)
102-
unset(CMAKE_REQUIRED_FLAGS)
103+
set (CMAKE_REQUIRED_FLAGS ${OLD_REQUIRED_FLAGS})
104+
unset(OLD_REQUIRED_FLAGS)
103105
endif()
104106

107+
108+
#----------------------------------------------------------------------------
109+
# Find MPI and set some flags so that FC and CC can point to gfortran and gcc
110+
#----------------------------------------------------------------------------
111+
112+
# If the user passes FC=mpif90 etc. check and prefer that location
113+
get_filename_component( FTN_COMPILER_NAME "${CMAKE_Fortran_COMPILER}"
114+
NAME )
115+
get_filename_component( C_COMPILER_NAME "${CMAKE_C_COMPILER}"
116+
NAME )
117+
get_filename_component( FTN_COMPILER_DIR "${CMAKE_Fortran_COMPILER}"
118+
REALPATH )
119+
get_filename_component( C_COMPILER_DIR "${CMAKE_C_COMPILER}"
120+
REALPATH )
121+
122+
if (FTN_COMPILER_NAME MATCHES '^[mM][pP][iI]')
123+
set (MPI_Fortran_COMPILER "${CMAKE_Fortran_COMPILER}")
124+
endif()
125+
if (C_COMPILER_NAME MATCHES '^[mM][pP][iI]')
126+
set (MPI_C_COMPILER "${CMAKE_C_COMPILER}")
127+
endif()
128+
129+
find_package( MPI )
130+
131+
if ( (NOT MPI_C_FOUND) OR (NOT MPI_Fortran_FOUND) )
132+
find_program (MY_MPI_EXEC NAMES mpirun mpiexec lamexec srun
133+
PATHS "${CMAKE_SOURCE_DIR/prerequisites/installations/mpich/3.1.4}" "${CMAKE_SOURCE_DIR}/prerequisites/installations/mpich/*" ENV PATH
134+
HINTS "${FTN_COMPILER_DIR}" "${C_COMPILER_DIR}"
135+
PATH_SUFFIXES bin)
136+
set ( MPI_HOME "${MPI_HOME}" "${MY_MPI_EXEC}" "${MY_MPI_EXEC}/.." )
137+
find_package( MPI REQUIRED )
138+
endif()
139+
140+
#--------------------------------------------------------
141+
# Make sure a simple "hello world" C mpi program compiles
142+
#--------------------------------------------------------
143+
set(OLD_REQUIRED_FLAGS ${CMAKE_REQUIRED_FLAGS})
144+
set(CMAKE_REQUIRED_FLAGS ${MPI_C_COMPILE_FLAGS} ${MPI_C_LINK_FLAGS})
145+
set(OLD_INCLUDES ${CMAKE_REQUIRED_INCLUDES})
146+
set(CMAKE_REQUIRED_INCLUDES ${MPI_C_INCLUDE_PATH})
147+
set(OLD_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES})
148+
set(CMAKE_REQUIRED_LIBRARIES ${MPI_C_LIBRARIES})
149+
include (CheckCSourceCompiles)
150+
CHECK_C_SOURCE_COMPILES("
151+
#include <mpi.h>
152+
#include <stdio.h>
153+
int main(int argc, char** argv) {
154+
MPI_Init(NULL, NULL);
155+
int world_size;
156+
MPI_Comm_size(MPI_COMM_WORLD, &world_size);
157+
int world_rank;
158+
MPI_Comm_rank(MPI_COMM_WORLD, &world_rank);
159+
char processor_name[MPI_MAX_PROCESSOR_NAME];
160+
int name_len;
161+
MPI_Get_processor_name(processor_name, &name_len);
162+
printf('Hello world from processor %s, rank %d out of %d processors',
163+
processor_name, world_rank, world_size);
164+
MPI_Finalize();
165+
}"
166+
MPI_C_COMPILES)
167+
set(CMAKE_REQUIRED_FLAGS ${OLD_REQUIRED_FLAGS})
168+
set(CMAKE_REQUIRED_INCLUDES ${OLD_INCLUDES})
169+
set(CMAKE_REQUIRED_LIBRARIES ${OLD_LIBRARIES})
170+
unset(OLD_REQUIRED_FLAGS)
171+
unset(OLD_INCLUDES)
172+
unset(OLD_LIBRARIES)
173+
174+
if (NOT MPI_C_COMPILES)
175+
message(FATAL_ERROR "MPI_C is missing! "
176+
"Try setting MPI_C_COMPILER to the appropriate C compiler wrapper script and reconfigure. "
177+
"i.e., `cmake -DMPI_C_COMPILER=/path/to/mpicc ..` or set it by editing the cache using "
178+
"cmake-gui or ccmake."
179+
)
180+
endif()
181+
182+
#--------------------------------------------------------------
183+
# Make sure a simple "hello world" Fortran mpi program compiles
184+
# Try using mpi.mod first then fall back on includ 'mpif.h'
185+
#--------------------------------------------------------------
186+
set(OLD_REQUIRED_FLAGS ${CMAKE_REQUIRED_FLAGS})
187+
set(CMAKE_REQUIRED_FLAGS "-ffree-form" ${MPI_Fortran_COMPILE_FLAGS} ${MPI_Fortran_LINK_FLAGS})
188+
set(OLD_INCLUDES ${CMAKE_REQUIRED_INCLUDES})
189+
set(CMAKE_REQUIRED_INCLUDES ${MPI_Fortran_INCLUDE_PATH})
190+
set(OLD_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES})
191+
set(CMAKE_REQUIRED_LIBRARIES ${MPI_Fortran_LIBRARIES})
192+
include (CheckCSourceCompiles)
193+
CHECK_Fortran_SOURCE_COMPILES("
194+
program mpi_hello
195+
use mpi
196+
implicit none
197+
integer :: ierr, mpi_world_size, mpi_world_rank, res_len
198+
character*(MPI_MAX_PROCESSOR_NAME) :: proc
199+
call mpi_init(ierr)
200+
call mpi_comm_size(MPI_COMM_WORLD,mpi_world_size,ierr)
201+
call mpi_comm_rank(MPI_COMM_WORLD,mpi_world_rank,ierr)
202+
call mpi_get_processor_name(proc,res_len,ierr)
203+
write(*,*) 'Hello from processor ', trim(proc), ' rank ', mpi_world_rank, ' out of ', mpi_world_size, '.'
204+
call mpi_finalize(ierr)
205+
end program
206+
"
207+
MPI_Fortran_MODULE_COMPILES)
208+
set(CMAKE_REQUIRED_FLAGS ${OLD_REQUIRED_FLAGS})
209+
set(CMAKE_REQUIRED_INCLUDES ${OLD_INCLUDES})
210+
set(CMAKE_REQUIRED_LIBRARIES ${OLD_LIBRARIES})
211+
unset(OLD_REQUIRED_FLAGS)
212+
unset(OLD_INCLUDES)
213+
unset(OLD_LIBRARIES)
214+
215+
#--------------------------------
216+
# If that failed try using mpif.h
217+
#--------------------------------
218+
set(OLD_REQUIRED_FLAGS ${CMAKE_REQUIRED_FLAGS})
219+
set(CMAKE_REQUIRED_FLAGS "-ffree-form" ${MPI_Fortran_COMPILE_FLAGS} ${MPI_Fortran_LINK_FLAGS})
220+
set(OLD_INCLUDES ${CMAKE_REQUIRED_INCLUDES})
221+
set(CMAKE_REQUIRED_INCLUDES ${MPI_Fortran_INCLUDE_PATH})
222+
set(OLD_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES})
223+
set(CMAKE_REQUIRED_LIBRARIES ${MPI_Fortran_LIBRARIES})
224+
include (CheckCSourceCompiles)
225+
CHECK_Fortran_SOURCE_COMPILES("
226+
program mpi_hello
227+
implicit none
228+
include 'mpif.h'
229+
integer :: ierr, mpi_world_size, mpi_world_rank, res_len
230+
character*(MPI_MAX_PROCESSOR_NAME) :: proc
231+
call mpi_init(ierr)
232+
call mpi_comm_size(MPI_COMM_WORLD,mpi_world_size,ierr)
233+
call mpi_comm_rank(MPI_COMM_WORLD,mpi_world_rank,ierr)
234+
call mpi_get_processor_name(proc,res_len,ierr)
235+
write(*,*) 'Hello from processor ', trim(proc), ' rank ', mpi_world_rank, ' out of ', mpi_world_size, '.'
236+
call mpi_finalize(ierr)
237+
end program
238+
"
239+
MPI_Fortran_INCLUDE_COMPILES)
240+
set(CMAKE_REQUIRED_FLAGS ${OLD_REQUIRED_FLAGS})
241+
set(CMAKE_REQUIRED_INCLUDES ${OLD_INCLUDES})
242+
set(CMAKE_REQUIRED_LIBRARIES ${OLD_LIBRARIES})
243+
unset(OLD_REQUIRED_FLAGS)
244+
unset(OLD_INCLUDES)
245+
unset(OLD_LIBRARIES)
246+
247+
if ( (NOT MPI_Fortran_MODULE_COMPILES) AND (NOT MPI_Fortran_INCLUDE_COMPILES) )
248+
message ( WARNING "It appears that the Fortran MPI compiler is not working. "
249+
"For OpenCoarrays Aware compilers, this may be irrelavent: "
250+
" The src/extensions/opencoarrays.F90 module will be disabled, but it is "
251+
" possible that the build will succeed, despite this fishy circumstance."
252+
)
253+
endif()
254+
255+
if ( MPI_Fortran_MODULE_COMPILES )
256+
add_definitions(-DMPI_WORKING_MODULE)
257+
else()
258+
message ( WARNING "It appears that MPI was built with a different Fortran compiler. "
259+
"It is possible that this may cause unpredictable behavior. The build will continue "
260+
"using `mpif.h` BUT please report any suspicious behavior to the OpenCoarrays "
261+
"developers."
262+
)
263+
endif()
264+
265+
#----------------
266+
# Setup MPI flags
267+
#----------------
268+
set(CMAKE_C_COMPILE_FLAGS ${CMAKE_C_COMPILE_FLAGS} ${MPI_C_COMPILE_FLAGS})
269+
set(CMAKE_C_LINK_FLAGS ${CMAKE_C_LINK_FLAGS} ${MPI_C_LINK_FLAGS})
270+
set(CMAKE_Fortran_COMPILE_FLAGS ${CMAKE_Fortran_COMPILE_FLAGS} ${MPI_Fortran_COMPILE_FLAGS})
271+
set(CMAKE_Fortran_LINK_FLAGS ${CMAKE_Fortran_LINK_FLAGS} ${MPI_Fortran_LINK_FLAGS})
272+
include_directories(BEFORE ${MPI_C_INCLUDE_PATH} ${MPI_Fortran_INCLUDE_PATH})
273+
274+
#-------------------------------
275+
# Recurse into the src directory
276+
#-------------------------------
105277
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src)
106278

107279
add_subdirectory(src)
@@ -148,9 +320,12 @@ configure_file ( "${CMAKE_SOURCE_DIR}/cmake/uninstall.cmake.in" "${CMAKE_BINARY_
148320
add_custom_target ( uninstall
149321
COMMAND ${CMAKE_COMMAND} -P "${CMAKE_BINARY_DIR}/uninstall.cmake" )
150322

151-
152323
enable_testing()
153324

325+
add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND} --output-on-failure)
326+
# See JSON-Fortran's CMakeLists.txt file to find out how to get the check target to depend
327+
# on the test executables
328+
154329
# Determine if we're using Open MPI
155330
execute_process(COMMAND ${MPIEXEC} --version
156331
OUTPUT_VARIABLE mpi_version_out)
@@ -167,7 +342,7 @@ function(add_mpi_test name num_mpi_proc path)
167342
if ( openmpi )
168343
if ( N LESS 2 )
169344
set( num_mpi_proc 2 )
170-
set (test_parameters --oversubscribed)
345+
set (test_parameters --oversubscribe)
171346
else()
172347
set ( num_mpi_proc ${N} )
173348
endif()
@@ -185,31 +360,44 @@ if(opencoarrays_aware_compiler)
185360
# Unit tests targeting each libcaf_mpi function, argument, and branch of code
186361
add_mpi_test(initialize_mpi 2 ${tests_root}/unit/init_register/initialize_mpi)
187362
add_mpi_test(register 2 ${tests_root}/unit/init_register/register)
188-
add_mpi_test(register_rename_me 2 ${tests_root}/unit/init_register/register_rename_me)
189-
add_mpi_test(register_rename_me_too 2 ${tests_root}/unit/init_register/register_rename_me_too)
363+
add_mpi_test(register_vector 2 ${tests_root}/unit/init_register/register_vector)
364+
add_mpi_test(register_alloc_vector 2 ${tests_root}/unit/init_register/register_alloc_vector)
190365
add_mpi_test(allocate_as_barrier 2 ${tests_root}/unit/init_register/allocate_as_barrier)
191366
add_mpi_test(allocate_as_barrier_proc 32 ${tests_root}/unit/init_register/allocate_as_barrier_proc)
367+
if (gfortran_compiler AND (NOT CMAKE_Fortran_COMPILER_VERSION VERSION_LESS 7))
368+
add_mpi_test(register_alloc_comp_1 2 ${tests_root}/unit/init_register/register_alloc_comp_1)
369+
add_mpi_test(register_alloc_comp_2 2 ${tests_root}/unit/init_register/register_alloc_comp_2)
370+
add_mpi_test(register_alloc_comp_3 2 ${tests_root}/unit/init_register/register_alloc_comp_3)
371+
add_mpi_test(check_remote_alloced_comp_1 6 ${tests_root}/unit/init_register/check_remote_alloced_comp_1)
372+
endif()
192373
add_mpi_test(get_array 2 ${tests_root}/unit/send-get/get_array)
374+
add_mpi_test(get_self 2 ${tests_root}/unit/send-get/get_self)
193375
add_mpi_test(send_array 2 ${tests_root}/unit/send-get/send_array)
194376
add_mpi_test(get_with_offset_1d 2 ${tests_root}/unit/send-get/get_with_offset_1d)
195377
add_mpi_test(whole_get_array 2 ${tests_root}/unit/send-get/whole_get_array)
196378
add_mpi_test(strided_get 2 ${tests_root}/unit/send-get/strided_get)
379+
add_mpi_test(strided_sendget 3 ${tests_root}/unit/send-get/strided_sendget)
197380
add_mpi_test(co_sum 4 ${tests_root}/unit/collectives/co_sum_test)
198381
add_mpi_test(co_broadcast 4 ${tests_root}/unit/collectives/co_broadcast_test)
199382
add_mpi_test(co_min 4 ${tests_root}/unit/collectives/co_min_test)
200383
add_mpi_test(co_max 4 ${tests_root}/unit/collectives/co_max_test)
201384
add_mpi_test(syncall 32 ${tests_root}/unit/sync/syncall)
202385
add_mpi_test(syncimages 32 ${tests_root}/unit/sync/syncimages)
386+
add_mpi_test(syncimages2 32 ${tests_root}/unit/sync/syncimages2)
203387
add_mpi_test(duplicate_syncimages 8 ${tests_root}/unit/sync/duplicate_syncimages)
204388
add_mpi_test(co_reduce 4 ${tests_root}/unit/collectives/co_reduce_test)
205389
add_mpi_test(syncimages_status 32 ${tests_root}/unit/sync/syncimages_status)
390+
add_mpi_test(simpleatomics 32 ${tests_root}/unit/simple/atomics)
391+
# possible logic error in the following test
392+
# add_mpi_test(increment_my_neighbor 32 ${tests_root}/unit/simple/increment_my_neighbor)
206393

207394
# Integration tests verifying the use of libcaf_mpi in applications
208395
add_mpi_test(hello_multiverse 2 ${tests_root}/integration/coarrayHelloWorld/hello_multiverse)
209396
add_mpi_test(coarray_burgers_pde 2 ${tests_root}/integration/pde_solvers/coarrayBurgers/coarray_burgers_pde)
210397
add_mpi_test(co_heat 2 ${tests_root}/integration/pde_solvers/coarrayHeatSimplified/co_heat)
398+
add_mpi_test(asynchronous_hello_world 2 ${tests_root}/integration/events/asynchronous_hello_world)
211399
if ( ("${CMAKE_SYSTEM_PROCESSOR}" MATCHES "x86_64") AND ("${CMAKE_SYSTEM_NAME}" MATCHES "Linux") )
212-
if ( NOT (DEFINED ENV{TRAVIS}))
400+
if ( (NOT (DEFINED ENV{TRAVIS})) AND (NOT SKIP_ASSEMBLY_DEPS) )
213401
add_mpi_test(coarray_navier_stokes 2 ${tests_root}/integration/pde_solvers/navier-stokes/coarray_navier_stokes)
214402
set_property(TEST coarray_navier_stokes PROPERTY PASS_REGULAR_EXPRESSION "Test passed.")
215403
endif()
@@ -230,3 +418,6 @@ else()
230418
add_test(co_reduce_extension ${tests_root}/unit/extensions/test-co_reduce-extension.sh)
231419
set_property(TEST co_reduce_extension PROPERTY PASS_REGULAR_EXPRESSION "Test passed.")
232420
endif()
421+
422+
include(AddInstallationScriptTest.cmake )
423+
add_installation_script_test(installation-scripts.sh src/tests/installation/)

0 commit comments

Comments
 (0)