Configurable settings with blisp
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
# Specify the minimum version of CMake required
|
||||
cmake_minimum_required(VERSION 3.10)
|
||||
|
||||
# Define the project name and the programming language (C)
|
||||
project(Beluga)
|
||||
|
||||
# Set the C standard (optional)
|
||||
set(CMAKE_C_STANDARD 99)
|
||||
|
||||
set(CMAKE_C_COMPILER clang)
|
||||
|
||||
# Add the header files directory to the include path
|
||||
include_directories(include)
|
||||
include_directories(blisp/include)
|
||||
|
||||
# Add the source files for the project
|
||||
set(SRCS
|
||||
main.c
|
||||
src/append_buffer.c
|
||||
src/file_io.c
|
||||
src/input.c
|
||||
src/row_op.c
|
||||
src/editor_op.c
|
||||
src/init.c
|
||||
src/output.c
|
||||
src/terminal.c
|
||||
src/builtins.c
|
||||
blisp/src/config_tools.c
|
||||
blisp/src/data.c
|
||||
blisp/src/lexer.c
|
||||
blisp/src/parser.c)
|
||||
|
||||
find_package(Doxygen)
|
||||
if(DOXYGEN_FOUND)
|
||||
# set input and output for doxygen
|
||||
set(DOXYGEN_OUT ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile)
|
||||
|
||||
add_custom_target(
|
||||
doc_doxygen ALL
|
||||
COMMAND ${DOXYGEN_EXECUTABLE} ${DOXYGEN_OUT}
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
COMMENT "Generating documentation with Doxygen"
|
||||
VERBATIM)
|
||||
else(DOXYGEN_FOUND)
|
||||
message("Doxygen not found")
|
||||
endif(DOXYGEN_FOUND)
|
||||
|
||||
# we default to Release build type
|
||||
if(NOT CMAKE_BUILD_TYPE)
|
||||
set(CMAKE_BUILD_TYPE "Release")
|
||||
endif()
|
||||
|
||||
set(CMAKE_C_FLAGS "-Wall -Wextra")
|
||||
set(CMAKE_C_FLAGS_DEBUG "-g")
|
||||
|
||||
# Create an executable target with the specified source files
|
||||
add_executable(beluga ${SRCS})
|
||||
|
||||
# Optionally, you can set the output directory for the executable
|
||||
set_target_properties(beluga PROPERTIES RUNTIME_OUTPUT_DIRECTORY bin)
|
||||
Reference in New Issue
Block a user