30 lines
913 B
CMake
30 lines
913 B
CMake
cmake_minimum_required(VERSION 3.16)
|
|
project(xlang
|
|
LANGUAGES CXX
|
|
DESCRIPTION "XLANG Compiler")
|
|
|
|
enable_language(CXX)
|
|
enable_testing()
|
|
set(CMAKE_CXX_COMPILER /bin/clang++)
|
|
set(CXX_STANDARD 23)
|
|
set(CMAKE_CXX_FLAGS "-std=c++${CXX_STANDARD}")
|
|
|
|
include_directories(BEFORE SYSTEM /usr/include ./)
|
|
link_directories(BEFORE $ENV{LD_LIBRARY_PATH} ${CMAKE_BINARY_DIR}/ )
|
|
|
|
include(GNUInstallDirs)
|
|
|
|
set(SOURCES src/main.cxx
|
|
CACHE INTERNAL "") # Make this all files MINUS main.cxx dunno how tbh lmao
|
|
|
|
add_executable(${PROJECT_NAME} ${SOURCES})
|
|
|
|
target_link_libraries(
|
|
${PROJECT_NAME}
|
|
)
|
|
|
|
add_test(NAME CompactSourceAll COMMAND ${PROJECT_NAME} ../examples/compact/exitall.x)
|
|
add_test(NAME TestOutputBinary COMMAND ${CMAKE_COMMAND}
|
|
-DTEST_EXECUTABLE=./out
|
|
-P ${CMAKE_CURRENT_SOURCE_DIR}/check_exit_9.cmake)
|
|
set_tests_properties(TestOutputBinary PROPERTIES DEPENDS CompactSourceAll) |