picoc/CMakeLists.txt

48 lines
1.2 KiB
CMake
Raw Normal View History

cmake_minimum_required(VERSION 3.15)
project(picoc C)
execute_process(COMMAND git show-ref --abbrev=8 --head --hash head OUTPUT_VARIABLE hash OUTPUT_STRIP_TRAILING_WHITESPACE)
execute_process(COMMAND git describe --abbrev=0 --tags OUTPUT_VARIABLE tag OUTPUT_STRIP_TRAILING_WHITESPACE)
message("${tag} ${hash}")
set(CMAKE_C_STANDARD 11)
set(CMAKE_C_COMPILER gcc)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -pedantic")
set(CMAKE_REQUIRED_LIBRARIES m readline)
add_definitions(-DUNIX_HOST -DVER="${hash}" -DTAG="${tag}")
#add_definitions(-DDEBUG_EXPRESSIONS)
include_directories(.)
add_executable(picoc
cstdlib/ctype.c
cstdlib/errno.c
cstdlib/math.c
cstdlib/stdbool.c
cstdlib/stdio.c
cstdlib/stdlib.c
cstdlib/string.c
cstdlib/time.c
cstdlib/unistd.c
platform/library_unix.c
platform/platform_unix.c
clibrary.c
debug.c
expression.c
heap.c
include.c
interpreter.h
lex.c
parse.c
picoc.c
picoc.h
platform.c
platform.h
stats.c
stats.h
table.c
type.c
variable.c)
target_link_libraries(picoc -lm -lreadline)