project(tlanginterp) add_library(tlanginterp STATIC src/addnode.c src/bit.c src/bitwiseand.c src/bitwiseor.c src/breaknode.c src/bwnot.c src/closurenode.c src/constnode.c src/curl.c src/dict.c src/dirittr.c src/dividenode.c src/eachnode.c src/eq.c src/forloop.c src/fs.c src/functioncallnode.c src/getarraynode.c src/getmembernode.c src/getvariablenode.c src/getvariablenode.c src/greaterthan.c src/greaterthanequal.c src/if.c src/ittr.c src/json.c src/leftshift.c src/lessthan.c src/lessthanequal.c src/lexer.c src/lextokenlist.c src/listittr.c src/logicaland.c src/logicalor.c src/mbed.c src/methodcallnode.c src/modulonode.c src/multiplynode.c src/neg.c src/neq.c src/net.c src/nodetwo.c src/not.c src/parser.c src/postfixdecrementnode.c src/postfixincrementnode.c src/rand.c src/returnnode.c src/rightshift.c src/runtime.c src/scope.c src/scopenode.c src/sdl2.c src/setvariablenode.c src/stream.c src/string.c src/stringittr.c src/subnode.c src/switch.c src/threading.c src/tobject.c src/whileloop.c src/wpad-wii.c src/xor.c include/FreeMonoBold.h include/myfeatures.h include/tlang_version.h include/tlang.h) add_definitions(-DCMAKE_TLANG_BUILD) option(USE_SDL "Enable SDL2" ON) option(USE_NETWORK "Enable Networking" ON) option(USE_CURL "Enable curl" ON) option(USE_JANSSON "Use JANSSON (JSON)" ON) option(USE_THREAD "Use Threading" ON) if(USE_THREAD) add_definitions(-DUSE_THREADS) target_link_libraries(tlanginterp pthread) endif() if(USE_NETWORK) add_definitions(-DUSE_NETWORK) endif() if(USE_SDL) add_definitions(-DUSE_SDL2) find_package(SDL2 REQUIRED) target_link_libraries(tlanginterp SDL2_gfx SDL2_image SDL2_mixer SDL2_ttf) include_directories(${SDL2_INCLUDE_DIRS}) target_link_libraries(tlanginterp ${SDL2_LIBRARIES}) endif() if(USE_CURL) add_definitions(-DUSE_CURL) find_package(CURL REQUIRED) include_directories(${CURL_INCLUDE_DIRS}) target_link_libraries(tlanginterp ${CURL_LIBRARIES}) endif() if(USE_JANSSON) add_definitions(-DUSE_JANSSON) target_link_libraries(tlanginterp jansson) endif() target_link_libraries(tlanginterp m) target_include_directories(tlanginterp PUBLIC "${PROJECT_BINARY_DIR}" "${PROJECT_SOURCE_DIR}/include")