Skip to content

Commit 669d5f6

Browse files
Merge pull request #52 from Baljak/mingw-fixes
Fix Mingw compilation
2 parents 2d756c8 + 9e24b48 commit 669d5f6

File tree

3 files changed

+17
-242
lines changed

3 files changed

+17
-242
lines changed

CMAKE/FortranMangling.cmake

+8-4
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,16 @@
1313
FUNCTION(COMPILE RESULT)
1414
MESSAGE(STATUS "=========")
1515
MESSAGE(STATUS "Compiling and Building BLACS INSTALL Testing to set correct variables")
16-
16+
17+
if(CMAKE_BUILD_TYPE)
18+
SET(BUILD_TYPE -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE})
19+
endif()
20+
1721
# Configure:
1822
EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND}
19-
"-DCMAKE_Fortran_COMPILER=${CMAKE_Fortran_COMPILER}"
20-
"-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}" "${PROJECT_SOURCE_DIR}//BLACS/INSTALL"
21-
WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/BLACS/INSTALL/
23+
"${PROJECT_SOURCE_DIR}/BLACS/INSTALL"
24+
-G ${CMAKE_GENERATOR} ${BUILD_TYPE}
25+
WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/BLACS/INSTALL/
2226
RESULT_VARIABLE RESVAR OUTPUT_VARIABLE LOG1_OUT ERROR_VARIABLE LOG1_ERR
2327
)
2428
if(RESVAR EQUAL 0)

CMakeLists.txt

+9-14
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,7 @@ endif ()
2121
#
2222
# MPI
2323
#
24-
#set(MPI_BASE_DIR "/Users/julie/opt/openmpi/" CACHE PATH "MPI Path")
25-
#set(MPI_BASE_DIR "/Users/julie/opt/mpich2/" CACHE PATH "MPI Path")
2624
set(CMAKE_PREFIX_PATH "${MPI_BASE_DIR};${CMAKE_PREFIX_PATH}")
27-
#set(MPI_COMPILER ${MPI_BASE_DIR}/bin/mpicc)
2825

2926
find_package(MPI)
3027
if (MPI_FOUND)
@@ -51,8 +48,6 @@ if (MPI_FOUND)
5148
DOC "MPI Fortran compiler.")
5249
MARK_AS_ADVANCED(MPI_Fortran_COMPILER)
5350

54-
55-
5651
if ("${MPI_Fortran_COMPILER}" STREQUAL "MPI_Fortran_COMPILER-NOTFOUND")
5752
message(ERROR "--> MPI Fortran Compiler NOT FOUND (please set MPI_BASE_DIR accordingly")
5853
else()
@@ -161,18 +156,18 @@ else(LAPACK_FOUND)
161156
message(STATUS "--> LAPACK and BLAS were not found. Reference LAPACK and BLAS will be downloaded and installed")
162157
include(ExternalProject)
163158
ExternalProject_Add(
164-
lapack
165-
URL http://www.netlib.org/lapack/lapack.tgz
166-
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=${SCALAPACK_BINARY_DIR}
159+
lapack
160+
URL http://www.netlib.org/lapack/lapack.tgz
161+
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=${SCALAPACK_BINARY_DIR}
167162
PREFIX ${SCALAPACK_BINARY_DIR}/dependencies
168163
)
169-
if (UNIX)
164+
if (NOT MSVC)
170165
SET(LAPACK_LIBRARIES ${SCALAPACK_BINARY_DIR}/lib/liblapack.a CACHE STRING "LAPACK library" FORCE)
171166
SET(BLAS_LIBRARIES ${SCALAPACK_BINARY_DIR}/lib/libblas.a CACHE STRING "BLAS library" FORCE)
172-
else (UNIX) # On Windows
167+
else () # MSVC
173168
SET(LAPACK_LIBRARIES ${SCALAPACK_BINARY_DIR}/lib/liblapack.lib CACHE STRING "LAPACK library" FORCE)
174169
SET(BLAS_LIBRARIES ${SCALAPACK_BINARY_DIR}/lib/libblas.lib CACHE STRING "BLAS library" FORCE)
175-
endif (UNIX)
170+
endif ()
176171
ENDIF()
177172
ENDIF()
178173

@@ -234,14 +229,14 @@ add_subdirectory(SRC)
234229
append_subdir_files(src "SRC")
235230
append_subdir_files(src-C "SRC")
236231

237-
if (UNIX)
232+
if (NOT MSVC)
238233
add_library(scalapack ${blacs} ${tools} ${tools-C} ${extra_lapack} ${pblas} ${pblas-F} ${ptzblas} ${ptools} ${pbblas} ${redist} ${src} ${src-C})
239234
set_target_properties(scalapack PROPERTIES
240235
VERSION ${SCALAPACK_VERSION}
241236
SOVERSION ${SCALAPACK_VERSION_MAJOR}.${SCALAPACK_VERSION_MINOR})
242237
target_link_libraries( scalapack ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES})
243238
scalapack_install_library(scalapack)
244-
else (UNIX) # Need to separate Fortran and C Code
239+
else () # Need to separate Fortran and C Code
245240
OPTION(BUILD_SHARED_LIBS "Build shared libraries" ON )
246241
add_library(scalapack ${blacs} ${tools-C} ${pblas} ${ptools} ${redist} ${src-C})
247242
set_target_properties(scalapack PROPERTIES
@@ -255,7 +250,7 @@ else (UNIX) # Need to separate Fortran and C Code
255250
target_link_libraries( scalapack-F ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES})
256251
scalapack_install_library(scalapack)
257252
scalapack_install_library(scalapack-F)
258-
endif (UNIX)
253+
endif ()
259254

260255
if(TARGET lapack)
261256
add_dependencies(scalapack lapack)

scalapack_build.cmake

-224
This file was deleted.

0 commit comments

Comments
 (0)