cmake_minimum_required(VERSION 3.15) if( NOT DEFINED ENV{VXSDK_PKG_NAME} OR NOT DEFINED ENV{VXSDK_PKG_VERSION} OR NOT DEFINED ENV{VXSDK_BUILD_CFLAGS} OR NOT DEFINED ENV{VXSDK_BUILD_LDFLAGS} OR NOT DEFINED ENV{VXSDK_BUILD_LIBS} OR NOT DEFINED ENV{VXSDK_ASSETS_PREFIX_SRC} OR NOT DEFINED ENV{VXSDK_PREFIX_BUILD} OR NOT DEFINED ENV{VXSDK_PREFIX_INSTALL}) message(FATAL_ERROR "You should use the vxSDK to build this project") endif() set(VXSDK_PKG_NAME $ENV{VXSDK_PKG_NAME}) set(VXSDK_PKG_VERSION $ENV{VXSDK_PKG_VERSION}) set(VXSDK_PREFIX_BUILD $ENV{VXSDK_PREFIX_BUILD}) set(VXSDK_PREFIX_INSTALL $ENV{VXSDK_PREFIX_INSTALL}) set(VXSDK_BUILD_CFLAGS $ENV{VXSDK_BUILD_CFLAGS}) set(VXSDK_BUILD_LDFLAGS $ENV{VXSDK_BUILD_LDFLAGS}) set(VXSDK_BUILD_LIBS $ENV{VXSDK_BUILD_LIBS}) set(VXSDK_ASSETS_PREFIX_SRC $ENV{VXSDK_ASSETS_PREFIX_SRC}) #--- # handle project-specific information #--- project(${VXSDK_PKG_NAME} VERSION ${VXSDK_PKG_VERSION} LANGUAGES C ASM) #--- # Handle source listing #--- file(GLOB_RECURSE SOURCES src/*.[csS] ${VXSDK_ASSETS_PREFIX_SRC}/*.[csS]) #--- # Compile-specific declaration #--- link_directories(${VXSDK_PREFIX_INSTALL}/lib) include_directories(include ${VXSDK_PREFIX_INSTALL}/include) add_compile_options(-Wall -Wextra ${VXSDK_BUILD_CFLAGS}) add_executable(${VXSDK_PKG_NAME} ${SOURCES}) target_link_libraries(${VXSDK_PKG_NAME} ${VXSDK_BUILD_LIBS}) foreach(ldflag ${VXSDK_BUILD_LDFLAGS}) set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${ldflag}") endforeach()