Skip to content

Commit 0e3e60b

Browse files
committed
Add CMake
1 parent 2ce269e commit 0e3e60b

File tree

6 files changed

+76
-13
lines changed

6 files changed

+76
-13
lines changed

CMakeLists.txt

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
cmake_minimum_required(VERSION 3.24)
2+
3+
project(amrexpr DESCRIPTION "AMReX's Math Expression Parser" VERSION 1.0
4+
LANGUAGES CXX)
5+
6+
if (CMAKE_BINARY_DIR STREQUAL CMAKE_SOURCE_DIR)
7+
message(FATAL_ERROR "\nIn-source builds are not allowed.\n")
8+
endif()
9+
10+
set(CMAKE_CXX_STANDARD 17)
11+
12+
add_library(amrexpr)
13+
14+
add_subdirectory(Src)
15+
16+
configure_file(${PROJECT_SOURCE_DIR}/Tools/CMake/amrexpr_Config.H.in
17+
${CMAKE_BINARY_DIR}/amrexpr_Config.H)
18+
19+
include_directories(${PROJECT_SOURCE_DIR}/Src ${CMAKE_BINARY_DIR})
20+
21+
install(TARGETS amrexpr)
22+
23+
install(DIRECTORY ${PROJECT_SOURCE_DIR}/Src/ DESTINATION include
24+
FILES_MATCHING PATTERN "*.hpp" PATTERN "*.H"
25+
)
26+
27+
install(FILES ${CMAKE_BINARY_DIR}/amrexpr_Config.H DESTINATION include)
28+
29+
# tests
30+
# enable_testing
31+
# add_subdirectory(Tests)
32+
33+
# cofig:
34+
# AMREXPR_USE_SYCL, HIP, CUDA, GPU
35+
# NDEBUG

Src/CMakeLists.txt

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
2+
target_sources(amrexpr
3+
PRIVATE
4+
amrexpr.hpp
5+
amrexpr_Arena.H
6+
amrexpr_BLassert.H
7+
amrexpr_Extension.H
8+
amrexpr_Gpu.H
9+
amrexpr_IOFormat.H
10+
amrexpr_Math.H
11+
amrexpr_Parser_Exe.H
12+
amrexpr_Parser.H
13+
amrexpr_parser.lex.h
14+
amrexpr_parser.lex.nolint.H
15+
amrexpr_parser.tab.h
16+
amrexpr_parser.tab.nolint.H
17+
amrexpr_Parser_Y.H
18+
amrexpr_REAL.H
19+
amrexpr_Stack.H
20+
amrexpr_TypeTraits.H
21+
amrexpr_Utility.H
22+
amrexpr_Arena.cpp
23+
amrexpr_BLassert.cpp
24+
amrexpr_Gpu.cpp
25+
amrexpr_Parser.cpp
26+
amrexpr_Parser_Exe.cpp
27+
amrexpr_parser.lex.cpp
28+
amrexpr_parser.tab.cpp
29+
amrexpr_Parser_Y.cpp
30+
amrexpr_Utility.cpp
31+
)

Src/amrexpr_Extension.H

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -59,13 +59,6 @@
5959

6060
#endif /* force inline */
6161

62-
63-
#ifdef AMREXPR_USE_FORCE_INLINE
64-
#define AMREXPR_INLINE AMREXPR_FORCE_INLINE
65-
#else
66-
#define AMREXPR_INLINE inline
67-
#endif
68-
6962
// no inline
7063
#if defined(_MSC_VER)
7164
#define AMREXPR_NO_INLINE __declspec(noinline)
@@ -84,10 +77,6 @@
8477
#define AMREXPR_FLATTEN
8578
#endif
8679

87-
#ifdef AMREXPR_USE_FLATTEN_FOR
8880
#define AMREXPR_ATTRIBUTE_FLATTEN_FOR AMREXPR_FLATTEN
89-
#else
90-
#define AMREXPR_ATTRIBUTE_FLATTEN_FOR
91-
#endif
9281

9382
#endif

Tools/CMake/amrexpr_Config.H.in

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
#ifndef AMREXPR_CONFIG_H_
2+
#define AMREXPR_CONFIG_H_
3+
4+
#cmakedefine AMREX_USE_GPU
5+
#cmakedefine AMREX_USE_CUDA
6+
#cmakedefine AMREX_USE_HIP
7+
#cmakedefine AMREX_USE_SYCL
8+
9+
#endif /* AMREXPR_CONFIG_H_ */

Tools/GNUMake/Make.defs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -227,7 +227,6 @@ CXXFLAGS += $(XTRA_CXXFLAGS)
227227
CPPFLAGS += $(XTRA_CPPFLAGS)
228228

229229
ifeq ($(DEBUG),TRUE)
230-
CPPFLAGS += -DAMREXPR_DEBUG
231230
DebugSuffix := .DEBUG
232231
else
233232
DebugSuffix :=

Tutorials/libamrexpr/GNUmakefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
AMREXPR_ROOT = ../../tmp_install_dir
1+
AMREXPR_ROOT ?= ../../tmp_install_dir
22

33
CXX = g++
44
CXXFLAGS = -std=c++17 -O3 -g1 -I$(AMREXPR_ROOT)/include

0 commit comments

Comments
 (0)