Fix the Vala module for CMake
It failed to depend on local vapis. At least I understand it again.
This commit is contained in:
@@ -33,30 +33,25 @@ pkg_check_modules (dependencies REQUIRED gtk+-3.0 sqlite3 x11 xext xextproto)
|
||||
# Precompile Vala sources
|
||||
include (ValaPrecompile)
|
||||
|
||||
set (HEADER_PATH "${PROJECT_BINARY_DIR}/${PROJECT_NAME}.h")
|
||||
set (CONFIG_PATH "${PROJECT_BINARY_DIR}/config.vala")
|
||||
configure_file (${PROJECT_SOURCE_DIR}/config.vala.in ${CONFIG_PATH})
|
||||
set (config_path "${PROJECT_BINARY_DIR}/config.vala")
|
||||
configure_file (${PROJECT_SOURCE_DIR}/config.vala.in "${config_path}")
|
||||
|
||||
# I'm not sure what this was about, look at slovnik-gui for more comments
|
||||
set (SYMBOLS_PATH "${PROJECT_BINARY_DIR}/${PROJECT_NAME}.def")
|
||||
# I'm not sure what this was about, look at slovnik-gui for more comments;
|
||||
# seems to be so that symbols are exported for GModule to see
|
||||
set (symbols_path "${PROJECT_BINARY_DIR}/${PROJECT_NAME}.def")
|
||||
|
||||
vala_init (${PROJECT_NAME}
|
||||
PACKAGES gmodule-2.0 gio-2.0 gtk+-3.0 gee-0.8 sqlite3 x11
|
||||
CUSTOM_VAPIS ${PROJECT_SOURCE_DIR}/xsync.vapi)
|
||||
vala_add (${PROJECT_NAME} ${CONFIG_PATH})
|
||||
vala_add (${PROJECT_NAME} ${PROJECT_NAME}.vala DEPENDS config)
|
||||
|
||||
vala_finish (${PROJECT_NAME}
|
||||
SOURCES project_VALA_SOURCES
|
||||
set (project_VALA_SOURCES ${config_path} ${PROJECT_NAME}.vala xsync.vapi)
|
||||
vala_precompile (${project_VALA_SOURCES}
|
||||
OUTPUTS project_VALA_C
|
||||
GENERATE_HEADER ${HEADER_PATH}
|
||||
GENERATE_SYMBOLS ${SYMBOLS_PATH})
|
||||
HEADER ${PROJECT_NAME}.h
|
||||
SYMBOLS ${symbols_path}
|
||||
PACKAGES gmodule-2.0 gio-2.0 gtk+-3.0 gee-0.8 sqlite3 x11)
|
||||
|
||||
# Include Vala sources as header files, so they appear in the IDE
|
||||
# but CMake doesn't try to compile them directly
|
||||
set_source_files_properties (${project_VALA_SOURCES}
|
||||
PROPERTIES HEADER_FILE_ONLY TRUE)
|
||||
set (project_SOURCES ${project_VALA_SOURCES} ${project_VALA_C} ${SYMBOLS_PATH})
|
||||
set (project_SOURCES ${project_VALA_SOURCES} ${project_VALA_C} ${symbols_path})
|
||||
|
||||
# Build the executable and install it
|
||||
include_directories (${dependencies_INCLUDE_DIRS})
|
||||
|
||||
Reference in New Issue
Block a user