Skip to content

Commit 0427a79

Browse files
authored
Formatting changes for the CMake file (#48)
* Formatting changes * Fix license formatting
1 parent 1a0b005 commit 0427a79

File tree

2 files changed

+132
-132
lines changed

2 files changed

+132
-132
lines changed

CMakeLists.txt

Lines changed: 131 additions & 131 deletions
Original file line numberDiff line numberDiff line change
@@ -2,24 +2,24 @@ cmake_minimum_required(VERSION 3.13)
22
cmake_policy(SET CMP0074 NEW)
33
set(CMAKE_VERBOSE_MAKEFILE ON)
44

5-
if(DEFINED Python_EXECUTABLE)
6-
set(PYTHON_EXECUTABLE ${Python_EXECUTABLE})
7-
endif()
5+
if (DEFINED Python_EXECUTABLE)
6+
set(PYTHON_EXECUTABLE ${Python_EXECUTABLE})
7+
endif ()
88

9-
if(DEFINED ENV{VCPKG_ROOT_DIR} AND NOT DEFINED VCPKG_ROOT_DIR)
10-
set(VCPKG_ROOT_DIR "$ENV{VCPKG_ROOT_DIR}"
11-
CACHE STRING "Vcpkg root directory")
12-
endif()
9+
if (DEFINED ENV{VCPKG_ROOT_DIR} AND NOT DEFINED VCPKG_ROOT_DIR)
10+
set(VCPKG_ROOT_DIR "$ENV{VCPKG_ROOT_DIR}"
11+
CACHE STRING "Vcpkg root directory")
12+
endif ()
1313

14-
if(DEFINED VCPKG_ROOT_DIR)
15-
set(CMAKE_TOOLCHAIN_FILE ${VCPKG_ROOT_DIR}/scripts/buildsystems/vcpkg.cmake
16-
CACHE STRING "Vcpkg toolchain file")
17-
endif()
14+
if (DEFINED VCPKG_ROOT_DIR)
15+
set(CMAKE_TOOLCHAIN_FILE ${VCPKG_ROOT_DIR}/scripts/buildsystems/vcpkg.cmake
16+
CACHE STRING "Vcpkg toolchain file")
17+
endif ()
1818

19-
if(DEFINED ENV{VCPKG_DEFAULT_TRIPLET} AND NOT DEFINED VCPKG_TARGET_TRIPLET)
20-
set(VCPKG_TARGET_TRIPLET "$ENV{VCPKG_DEFAULT_TRIPLET}"
21-
CACHE STRING "Vcpkg target triplet")
22-
endif()
19+
if (DEFINED ENV{VCPKG_DEFAULT_TRIPLET} AND NOT DEFINED VCPKG_TARGET_TRIPLET)
20+
set(VCPKG_TARGET_TRIPLET "$ENV{VCPKG_DEFAULT_TRIPLET}"
21+
CACHE STRING "Vcpkg target triplet")
22+
endif ()
2323

2424
project(idaklu)
2525

@@ -28,143 +28,143 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON)
2828
set(CMAKE_CXX_EXTENSIONS OFF)
2929
set(CMAKE_EXPORT_COMPILE_COMMANDS 1)
3030
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
31-
if(NOT MSVC)
31+
if (NOT MSVC)
3232
# MSVC does not support variable length arrays (vla)
3333
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror=vla")
34-
endif()
34+
endif ()
3535

3636
# casadi seems to compile without the newer versions of std::string
3737
add_compile_definitions(_GLIBCXX_USE_CXX11_ABI=0)
3838

39-
if(NOT PYBIND11_DIR)
40-
set(PYBIND11_DIR pybind11)
41-
endif()
39+
if (NOT PYBIND11_DIR)
40+
set(PYBIND11_DIR pybind11)
41+
endif ()
4242
add_subdirectory(${PYBIND11_DIR})
4343

4444
# Check Casadi build flag
45-
if(NOT DEFINED PYBAMM_IDAKLU_EXPR_CASADI)
46-
set(PYBAMM_IDAKLU_EXPR_CASADI ON)
47-
endif()
45+
if (NOT DEFINED PYBAMM_IDAKLU_EXPR_CASADI)
46+
set(PYBAMM_IDAKLU_EXPR_CASADI ON)
47+
endif ()
4848
message("PYBAMM_IDAKLU_EXPR_CASADI: ${PYBAMM_IDAKLU_EXPR_CASADI}")
4949

5050
# Casadi PyBaMM source files
5151
set(IDAKLU_EXPR_CASADI_SOURCE_FILES "")
52-
if(${PYBAMM_IDAKLU_EXPR_CASADI} STREQUAL "ON" )
53-
add_compile_definitions(CASADI_ENABLE)
54-
set(IDAKLU_EXPR_CASADI_SOURCE_FILES
55-
src/pybammsolvers/idaklu_source/Expressions/Casadi/CasadiFunctions.cpp
56-
src/pybammsolvers/idaklu_source/Expressions/Casadi/CasadiFunctions.hpp
57-
)
58-
endif()
52+
if (${PYBAMM_IDAKLU_EXPR_CASADI} STREQUAL "ON")
53+
add_compile_definitions(CASADI_ENABLE)
54+
set(IDAKLU_EXPR_CASADI_SOURCE_FILES
55+
src/pybammsolvers/idaklu_source/Expressions/Casadi/CasadiFunctions.cpp
56+
src/pybammsolvers/idaklu_source/Expressions/Casadi/CasadiFunctions.hpp
57+
)
58+
endif ()
5959

6060
# Check IREE build flag
61-
if(NOT DEFINED PYBAMM_IDAKLU_EXPR_IREE)
62-
set(PYBAMM_IDAKLU_EXPR_IREE OFF)
63-
endif()
61+
if (NOT DEFINED PYBAMM_IDAKLU_EXPR_IREE)
62+
set(PYBAMM_IDAKLU_EXPR_IREE OFF)
63+
endif ()
6464
message("PYBAMM_IDAKLU_EXPR_IREE: ${PYBAMM_IDAKLU_EXPR_IREE}")
6565

6666
# IREE (MLIR expression evaluation) PyBaMM source files
6767
set(IDAKLU_EXPR_IREE_SOURCE_FILES "")
68-
if(${PYBAMM_IDAKLU_EXPR_IREE} STREQUAL "ON" )
69-
add_compile_definitions(IREE_ENABLE)
70-
# Source file list
71-
set(IDAKLU_EXPR_IREE_SOURCE_FILES
72-
src/pybammsolvers/idaklu_source/Expressions/IREE/iree_jit.cpp
73-
src/pybammsolvers/idaklu_source/Expressions/IREE/iree_jit.hpp
74-
src/pybammsolvers/idaklu_source/Expressions/IREE/IREEFunctions.cpp
75-
src/pybammsolvers/idaklu_source/Expressions/IREE/IREEFunctions.hpp
76-
src/pybammsolvers/idaklu_source/Expressions/IREE/ModuleParser.cpp
77-
src/pybammsolvers/idaklu_source/Expressions/IREE/ModuleParser.hpp
78-
)
79-
endif()
68+
if (${PYBAMM_IDAKLU_EXPR_IREE} STREQUAL "ON")
69+
add_compile_definitions(IREE_ENABLE)
70+
# Source file list
71+
set(IDAKLU_EXPR_IREE_SOURCE_FILES
72+
src/pybammsolvers/idaklu_source/Expressions/IREE/iree_jit.cpp
73+
src/pybammsolvers/idaklu_source/Expressions/IREE/iree_jit.hpp
74+
src/pybammsolvers/idaklu_source/Expressions/IREE/IREEFunctions.cpp
75+
src/pybammsolvers/idaklu_source/Expressions/IREE/IREEFunctions.hpp
76+
src/pybammsolvers/idaklu_source/Expressions/IREE/ModuleParser.cpp
77+
src/pybammsolvers/idaklu_source/Expressions/IREE/ModuleParser.hpp
78+
)
79+
endif ()
8080

8181
# The complete (all dependencies) sources list should be mirrored in setup.py
8282
pybind11_add_module(idaklu
83-
# pybind11 interface
84-
src/pybammsolvers/idaklu.cpp
85-
# IDAKLU solver (SUNDIALS)
86-
src/pybammsolvers/idaklu_source/idaklu_solver.hpp
87-
src/pybammsolvers/idaklu_source/IDAKLUSolver.cpp
88-
src/pybammsolvers/idaklu_source/IDAKLUSolver.hpp
89-
src/pybammsolvers/idaklu_source/IDAKLUSolverGroup.cpp
90-
src/pybammsolvers/idaklu_source/IDAKLUSolverGroup.hpp
91-
src/pybammsolvers/idaklu_source/IDAKLUSolverOpenMP.inl
92-
src/pybammsolvers/idaklu_source/IDAKLUSolverOpenMP.hpp
93-
src/pybammsolvers/idaklu_source/IDAKLUSolverOpenMP_solvers.cpp
94-
src/pybammsolvers/idaklu_source/IDAKLUSolverOpenMP_solvers.hpp
95-
src/pybammsolvers/idaklu_source/sundials_functions.inl
96-
src/pybammsolvers/idaklu_source/sundials_functions.hpp
97-
src/pybammsolvers/idaklu_source/IdakluJax.cpp
98-
src/pybammsolvers/idaklu_source/IdakluJax.hpp
99-
src/pybammsolvers/idaklu_source/common.hpp
100-
src/pybammsolvers/idaklu_source/common.cpp
101-
src/pybammsolvers/idaklu_source/Solution.cpp
102-
src/pybammsolvers/idaklu_source/Solution.hpp
103-
src/pybammsolvers/idaklu_source/SolutionData.cpp
104-
src/pybammsolvers/idaklu_source/SolutionData.hpp
105-
src/pybammsolvers/idaklu_source/observe.cpp
106-
src/pybammsolvers/idaklu_source/observe.hpp
107-
src/pybammsolvers/idaklu_source/Options.hpp
108-
src/pybammsolvers/idaklu_source/Options.cpp
109-
# IDAKLU expressions / function evaluation [abstract]
110-
src/pybammsolvers/idaklu_source/Expressions/Expressions.hpp
111-
src/pybammsolvers/idaklu_source/Expressions/Base/Expression.hpp
112-
src/pybammsolvers/idaklu_source/Expressions/Base/ExpressionSet.hpp
113-
src/pybammsolvers/idaklu_source/Expressions/Base/ExpressionTypes.hpp
114-
# IDAKLU expressions - concrete implementations
115-
${IDAKLU_EXPR_CASADI_SOURCE_FILES}
116-
${IDAKLU_EXPR_IREE_SOURCE_FILES}
83+
# pybind11 interface
84+
src/pybammsolvers/idaklu.cpp
85+
# IDAKLU solver (SUNDIALS)
86+
src/pybammsolvers/idaklu_source/idaklu_solver.hpp
87+
src/pybammsolvers/idaklu_source/IDAKLUSolver.cpp
88+
src/pybammsolvers/idaklu_source/IDAKLUSolver.hpp
89+
src/pybammsolvers/idaklu_source/IDAKLUSolverGroup.cpp
90+
src/pybammsolvers/idaklu_source/IDAKLUSolverGroup.hpp
91+
src/pybammsolvers/idaklu_source/IDAKLUSolverOpenMP.inl
92+
src/pybammsolvers/idaklu_source/IDAKLUSolverOpenMP.hpp
93+
src/pybammsolvers/idaklu_source/IDAKLUSolverOpenMP_solvers.cpp
94+
src/pybammsolvers/idaklu_source/IDAKLUSolverOpenMP_solvers.hpp
95+
src/pybammsolvers/idaklu_source/sundials_functions.inl
96+
src/pybammsolvers/idaklu_source/sundials_functions.hpp
97+
src/pybammsolvers/idaklu_source/IdakluJax.cpp
98+
src/pybammsolvers/idaklu_source/IdakluJax.hpp
99+
src/pybammsolvers/idaklu_source/common.hpp
100+
src/pybammsolvers/idaklu_source/common.cpp
101+
src/pybammsolvers/idaklu_source/Solution.cpp
102+
src/pybammsolvers/idaklu_source/Solution.hpp
103+
src/pybammsolvers/idaklu_source/SolutionData.cpp
104+
src/pybammsolvers/idaklu_source/SolutionData.hpp
105+
src/pybammsolvers/idaklu_source/observe.cpp
106+
src/pybammsolvers/idaklu_source/observe.hpp
107+
src/pybammsolvers/idaklu_source/Options.hpp
108+
src/pybammsolvers/idaklu_source/Options.cpp
109+
# IDAKLU expressions / function evaluation [abstract]
110+
src/pybammsolvers/idaklu_source/Expressions/Expressions.hpp
111+
src/pybammsolvers/idaklu_source/Expressions/Base/Expression.hpp
112+
src/pybammsolvers/idaklu_source/Expressions/Base/ExpressionSet.hpp
113+
src/pybammsolvers/idaklu_source/Expressions/Base/ExpressionTypes.hpp
114+
# IDAKLU expressions - concrete implementations
115+
${IDAKLU_EXPR_CASADI_SOURCE_FILES}
116+
${IDAKLU_EXPR_IREE_SOURCE_FILES}
117117
)
118118

119119
if (NOT DEFINED USE_PYTHON_CASADI)
120-
set(USE_PYTHON_CASADI TRUE)
121-
endif()
120+
set(USE_PYTHON_CASADI TRUE)
121+
endif ()
122122

123123

124124
execute_process(
125-
COMMAND "${PYTHON_EXECUTABLE}" -c
126-
"import os; import sysconfig; print(os.path.join(sysconfig.get_path('purelib'), 'casadi', 'cmake'))"
127-
OUTPUT_VARIABLE CASADI_DIR
128-
OUTPUT_STRIP_TRAILING_WHITESPACE)
125+
COMMAND "${PYTHON_EXECUTABLE}" -c
126+
"import os; import sysconfig; print(os.path.join(sysconfig.get_path('purelib'), 'casadi', 'cmake'))"
127+
OUTPUT_VARIABLE CASADI_DIR
128+
OUTPUT_STRIP_TRAILING_WHITESPACE)
129129

130130
if (CASADI_DIR)
131-
file(TO_CMAKE_PATH ${CASADI_DIR} CASADI_DIR)
132-
message("Found Python casadi path: ${CASADI_DIR}")
133-
else()
134-
message(FATAL_ERROR "Did not find casadi path}")
135-
endif()
136-
137-
if(${USE_PYTHON_CASADI})
138-
message("Trying to link against Python casadi package in ${CASADI_DIR}")
139-
find_package(casadi CONFIG PATHS ${CASADI_DIR} REQUIRED NO_DEFAULT_PATH)
140-
else()
141-
message("Trying to link against any casadi package apart from the Python one")
142-
set(CMAKE_IGNORE_PATH "${CASADI_DIR}/cmake")
143-
find_package(casadi CONFIG REQUIRED)
144-
endif()
131+
file(TO_CMAKE_PATH ${CASADI_DIR} CASADI_DIR)
132+
message("Found Python casadi path: ${CASADI_DIR}")
133+
else ()
134+
message(FATAL_ERROR "Did not find casadi path}")
135+
endif ()
136+
137+
if (${USE_PYTHON_CASADI})
138+
message("Trying to link against Python casadi package in ${CASADI_DIR}")
139+
find_package(casadi CONFIG PATHS ${CASADI_DIR} REQUIRED NO_DEFAULT_PATH)
140+
else ()
141+
message("Trying to link against any casadi package apart from the Python one")
142+
set(CMAKE_IGNORE_PATH "${CASADI_DIR}/cmake")
143+
find_package(casadi CONFIG REQUIRED)
144+
endif ()
145145

146146
set_target_properties(
147-
idaklu PROPERTIES
148-
INSTALL_RPATH "${CASADI_DIR}"
149-
INSTALL_RPATH_USE_LINK_PATH TRUE
147+
idaklu PROPERTIES
148+
INSTALL_RPATH "${CASADI_DIR}"
149+
INSTALL_RPATH_USE_LINK_PATH TRUE
150150
)
151151

152152
# openmp
153153
if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
154-
execute_process(
155-
COMMAND "brew" "--prefix"
156-
OUTPUT_VARIABLE HOMEBREW_PREFIX
157-
OUTPUT_STRIP_TRAILING_WHITESPACE)
158-
if (OpenMP_ROOT)
159-
set(OpenMP_ROOT "${OpenMP_ROOT}:${HOMEBREW_PREFIX}/opt/libomp")
160-
else()
161-
set(OpenMP_ROOT "${HOMEBREW_PREFIX}/opt/libomp")
162-
endif()
163-
endif()
154+
execute_process(
155+
COMMAND "brew" "--prefix"
156+
OUTPUT_VARIABLE HOMEBREW_PREFIX
157+
OUTPUT_STRIP_TRAILING_WHITESPACE)
158+
if (OpenMP_ROOT)
159+
set(OpenMP_ROOT "${OpenMP_ROOT}:${HOMEBREW_PREFIX}/opt/libomp")
160+
else ()
161+
set(OpenMP_ROOT "${HOMEBREW_PREFIX}/opt/libomp")
162+
endif ()
163+
endif ()
164164
find_package(OpenMP)
165-
if(OpenMP_CXX_FOUND)
165+
if (OpenMP_CXX_FOUND)
166166
target_link_libraries(idaklu PRIVATE OpenMP::OpenMP_CXX)
167-
endif()
167+
endif ()
168168

169169
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR})
170170
# Sundials
@@ -176,24 +176,24 @@ target_link_libraries(idaklu PRIVATE ${SUNDIALS_LIBRARIES} casadi)
176176
# link suitesparse
177177
# if using vcpkg, use config mode to
178178
# find suitesparse. Otherwise, use FindSuiteSparse module
179-
if(DEFINED VCPKG_ROOT_DIR)
180-
find_package(SuiteSparse CONFIG REQUIRED)
181-
else()
182-
find_package(SuiteSparse REQUIRED)
183-
message("SuiteSparse found in ${SuiteSparse_INCLUDE_DIRS}: ${SuiteSparse_LIBRARIES}")
184-
endif()
179+
if (DEFINED VCPKG_ROOT_DIR)
180+
find_package(SuiteSparse CONFIG REQUIRED)
181+
else ()
182+
find_package(SuiteSparse REQUIRED)
183+
message("SuiteSparse found in ${SuiteSparse_INCLUDE_DIRS}: ${SuiteSparse_LIBRARIES}")
184+
endif ()
185185
include_directories(${SuiteSparse_INCLUDE_DIRS})
186186
target_link_libraries(idaklu PRIVATE ${SuiteSparse_LIBRARIES})
187187

188188
# IREE (MLIR compiler and runtime library) build settings
189-
if(${PYBAMM_IDAKLU_EXPR_IREE} STREQUAL "ON" )
190-
set(IREE_BUILD_COMPILER ON)
191-
set(IREE_BUILD_TESTS OFF)
192-
set(IREE_BUILD_SAMPLES OFF)
193-
add_subdirectory(iree EXCLUDE_FROM_ALL)
194-
set(IREE_COMPILER_ROOT "${CMAKE_CURRENT_SOURCE_DIR}/iree/compiler")
195-
target_include_directories(idaklu SYSTEM PRIVATE "${IREE_COMPILER_ROOT}/bindings/c/iree/compiler")
196-
target_compile_options(idaklu PRIVATE ${IREE_DEFAULT_COPTS})
197-
target_link_libraries(idaklu PRIVATE iree_compiler_bindings_c_loader)
198-
target_link_libraries(idaklu PRIVATE iree_runtime_runtime)
199-
endif()
189+
if (${PYBAMM_IDAKLU_EXPR_IREE} STREQUAL "ON")
190+
set(IREE_BUILD_COMPILER ON)
191+
set(IREE_BUILD_TESTS OFF)
192+
set(IREE_BUILD_SAMPLES OFF)
193+
add_subdirectory(iree EXCLUDE_FROM_ALL)
194+
set(IREE_COMPILER_ROOT "${CMAKE_CURRENT_SOURCE_DIR}/iree/compiler")
195+
target_include_directories(idaklu SYSTEM PRIVATE "${IREE_COMPILER_ROOT}/bindings/c/iree/compiler")
196+
target_compile_options(idaklu PRIVATE ${IREE_DEFAULT_COPTS})
197+
target_link_libraries(idaklu PRIVATE iree_compiler_bindings_c_loader)
198+
target_link_libraries(idaklu PRIVATE iree_runtime_runtime)
199+
endif ()

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ build-backend = "setuptools.build_meta"
1414
name = "pybammsolvers"
1515
description = "Python interface for the IDAKLU solver"
1616
requires-python = ">=3.10,<3.13"
17-
license = {file = "LICENSE"}
17+
license-files = ["LICENSE"]
1818
dynamic = ["version", "readme"]
1919
dependencies = [
2020
"casadi==3.6.7",

0 commit comments

Comments
 (0)