40 set(HAVE_LUA52 "1") |
40 set(HAVE_LUA52 "1") |
41 else() |
41 else() |
42 set(LUA_VERSION "5.1") |
42 set(LUA_VERSION "5.1") |
43 set(LUA_INCLUDE_DIRS ${LUA_INCLUDE_DIR}) |
43 set(LUA_INCLUDE_DIRS ${LUA_INCLUDE_DIR}) |
44 endif() |
44 endif() |
|
45 string(REPLACE "." "" LUA_MODULENAME "lua${LUA_VERSION}") |
45 pkg_check_modules(GLIB REQUIRED glib-2.0) |
46 pkg_check_modules(GLIB REQUIRED glib-2.0) |
46 pkg_check_modules(GMODULE REQUIRED gmodule-2.0) |
47 pkg_check_modules(GMODULE REQUIRED gmodule-2.0) |
47 pkg_check_modules(MCABBER REQUIRED mcabber) |
48 pkg_check_modules(MCABBER REQUIRED mcabber) |
48 find_program(DOCGEN_EXECUTABLE NAMES docgen.pl docgen DOC "Docgen documentation generator script (optional)") |
49 find_program(DOCGEN_EXECUTABLE NAMES docgen.pl docgen DOC "Docgen documentation generator script (optional)") |
49 include(CheckCSourceCompiles) |
50 include(CheckCSourceCompiles) |
75 ${GLIB_LIBRARIES} |
76 ${GLIB_LIBRARIES} |
76 ${GMODULE_LIBRARIES} |
77 ${GMODULE_LIBRARIES} |
77 ${MCABBER_LIBRARRIES}) |
78 ${MCABBER_LIBRARRIES}) |
78 include_directories(${lua_SOURCE_DIR} |
79 include_directories(${lua_SOURCE_DIR} |
79 ${lua_BINARY_DIR}) |
80 ${lua_BINARY_DIR}) |
80 set_target_properties(lua PROPERTIES COMPILE_FLAGS "-Wall" OUTPUT_NAME "lua${LUA_VERSION}") |
81 set_target_properties(lua PROPERTIES COMPILE_FLAGS "-Wall" OUTPUT_NAME "${LUA_MODULENAME}") |
81 |
82 |
82 ## Extra targets |
83 ## Extra targets |
83 if(DOCGEN_EXECUTABLE) |
84 if(DOCGEN_EXECUTABLE) |
84 add_custom_command(OUTPUT ${lua_BINARY_DIR}/lua.html COMMAND ${DOCGEN_EXECUTABLE} -f html -t "Documentation for Lua module for MCabber" -o ${lua_BINARY_DIR}/lua.html -- ${lua_SOURCES} DEPENDS ${DOCGEN_EXECUTABLE} ${lua_SOURCES} WORKING_DIRECTORY ${lua_SOURCE_DIR}) |
85 add_custom_command(OUTPUT ${lua_BINARY_DIR}/lua.html COMMAND ${DOCGEN_EXECUTABLE} -f html -t "Documentation for Lua module for MCabber" -o ${lua_BINARY_DIR}/lua.html -- ${lua_SOURCES} DEPENDS ${DOCGEN_EXECUTABLE} ${lua_SOURCES} WORKING_DIRECTORY ${lua_SOURCE_DIR}) |
85 add_custom_target(doc ALL DEPENDS ${lua_BINARY_DIR}/lua.html) |
86 add_custom_target(doc ALL DEPENDS ${lua_BINARY_DIR}/lua.html) |
86 add_custom_command(OUTPUT ${lua_SOURCE_DIR}/docs/api.mdwn COMMAND ${DOCGEN_EXECUTABLE} -f mdwn -t "Documentation for Lua module for MCabber" -o ${lua_SOURCE_DIR}/docs/api.mdwn -- ${lua_SOURCES} DEPENDS ${DOCGEN_EXECUTABLE} ${lua_SOURCES} WORKING_DIRECTORY ${lua_SOURCE_DIR}) |
87 add_custom_command(OUTPUT ${lua_SOURCE_DIR}/docs/api.mdwn COMMAND ${DOCGEN_EXECUTABLE} -f mdwn -t "Documentation for Lua module for MCabber" -o ${lua_SOURCE_DIR}/docs/api.mdwn -- ${lua_SOURCES} DEPENDS ${DOCGEN_EXECUTABLE} ${lua_SOURCES} WORKING_DIRECTORY ${lua_SOURCE_DIR}) |
87 add_custom_target(update_api DEPENDS ${lua_SOURCE_DIR}/docs/api.mdwn) |
88 add_custom_target(update_api DEPENDS ${lua_SOURCE_DIR}/docs/api.mdwn) |
88 endif() |
89 endif() |
89 |
90 |
90 ## Packaging information |
91 ## Packaging information |
91 set(CPACK_PACKAGE_NAME mcabber-mod-lua${LUA_VERSION}) |
92 set(CPACK_PACKAGE_NAME mcabber-mod-${LUA_MODULENAME}) |
92 set(CPACK_PACKAGE_VERSION ${PROJECT_VERSION}) |
93 set(CPACK_PACKAGE_VERSION ${PROJECT_VERSION}) |
93 set(CPACK_PACKAGE_VENDOR "IsBear") |
94 set(CPACK_PACKAGE_VENDOR "IsBear") |
94 set(CPACK_PACKAGE_CONTACT "Myhailo Danylenko <isbear@ukrpost.net>") |
95 set(CPACK_PACKAGE_CONTACT "Myhailo Danylenko <isbear@ukrpost.net>") |
95 set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Mcabber module for lua ${LUA_VERSION} scripting") |
96 set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Mcabber module for lua ${LUA_VERSION} scripting") |
96 set(CPACK_PACKAGE_DESCRIPTION_FILE ${lua_SOURCE_DIR}/README) |
97 set(CPACK_PACKAGE_DESCRIPTION_FILE ${lua_SOURCE_DIR}/README) |
118 if(HAVE_MCABBER_COMPLETION_FLAGS) |
119 if(HAVE_MCABBER_COMPLETION_FLAGS) |
119 set(AVV_COMPL_VERSION "compl:4") |
120 set(AVV_COMPL_VERSION "compl:4") |
120 else() |
121 else() |
121 set(AVV_COMPL_VERSION "compl:3") |
122 set(AVV_COMPL_VERSION "compl:3") |
122 endif() |
123 endif() |
123 string(REPLACE "." "_" AVV_FILENAME "lua${LUA_VERSION}") |
124 configure_file(lua.avv.in ${LUA_MODULENAME}.avv) |
124 set(MODULE_RELATIVE_PATH "lib/mcabber/${CMAKE_SHARED_MODULE_PREFIX}lua${LUA_VERSION}${CMAKE_SHARED_MODULE_SUFFIX}") |
|
125 configure_file(lua.avv.in.in "${AVV_FILENAME}.avv.in" @ONLY) |
|
126 |
125 |
127 ## Set up installer |
126 ## Set up installer |
128 install(TARGETS lua DESTINATION lib/mcabber) |
127 install(TARGETS lua DESTINATION lib/mcabber) |
129 if(DOCGEN_EXECUTABLE) |
128 if(DOCGEN_EXECUTABLE) |
130 install(FILES ${lua_BINARY_DIR}/lua.html DESTINATION share/doc/${CPACK_PACKAGE_NAME}) |
129 install(FILES ${lua_BINARY_DIR}/lua.html DESTINATION share/doc/${CPACK_PACKAGE_NAME}) |
131 endif() |
130 endif() |
132 install(DIRECTORY examples DESTINATION share/doc/${CPACK_PACKAGE_NAME} PATTERN "*~" EXCLUDE) |
131 install(DIRECTORY examples DESTINATION share/doc/${CPACK_PACKAGE_NAME} PATTERN "*~" EXCLUDE) |
133 install(FILES docs/readme.mdwn docs/todo.mdwn COPYING DESTINATION share/doc/${CPACK_PACKAGE_NAME}) |
132 install(FILES docs/readme.mdwn docs/todo.mdwn COPYING DESTINATION share/doc/${CPACK_PACKAGE_NAME}) |
134 install(FILES help/en/hlp_lua.txt DESTINATION share/mcabber RENAME hlp_lua${LUA_VERSION}.txt) # XXX localizations/other help |
133 install(FILES help/en/hlp_lua.txt DESTINATION share/mcabber RENAME hlp_lua${LUA_VERSION}.txt) # XXX localizations/other help |
135 install(CODE "configure_file(${PROJECT_BINARY_DIR}/${AVV_FILENAME}.avv.in ${PROJECT_BINARY_DIR}/${AVV_FILENAME}.avv)") |
134 install(FILES ${PROJECT_BINARY_DIR}/${LUA_MODULENAME}.avv DESTINATION share/mcabber/avv/modules RENAME ${LUA_MODULENAME}) |
136 install(FILES ${PROJECT_BINARY_DIR}/${AVV_FILENAME}.avv DESTINATION share/mcabber/avv/modules RENAME ${AVV_FILENAME}) |
|
137 |
135 |
138 ## The End ## vim: se ts=4 sw=4: ## |
136 ## The End ## vim: se ts=4 sw=4: ## |