diff options
author | Sebastien Helleu <flashcode@flashtux.org> | 2007-05-21 16:30:04 +0000 |
---|---|---|
committer | Sebastien Helleu <flashcode@flashtux.org> | 2007-05-21 16:30:04 +0000 |
commit | 9f5d99f57e614195c65eeb9b663dc1bd8d5b1dc9 (patch) | |
tree | bddb2e678b06930ec965ecb8ba107d54900db874 /src | |
parent | c79becdc8502c6839757eb4417ec2b8ec332b428 (diff) | |
download | weechat-9f5d99f57e614195c65eeb9b663dc1bd8d5b1dc9.zip |
Added cmake for weechat compile
Diffstat (limited to 'src')
-rw-r--r-- | src/CMakeLists.txt | 95 | ||||
-rw-r--r-- | src/common/CMakeLists.txt | 33 | ||||
-rw-r--r-- | src/common/util.c | 8 | ||||
-rw-r--r-- | src/gui/CMakeLists.txt | 25 | ||||
-rw-r--r-- | src/gui/curses/CMakeLists.txt | 42 | ||||
-rw-r--r-- | src/irc/CMakeLists.txt | 26 | ||||
-rw-r--r-- | src/plugins/CMakeLists.txt | 45 | ||||
-rw-r--r-- | src/plugins/aspell/CMakeLists.txt | 26 | ||||
-rw-r--r-- | src/plugins/charset/CMakeLists.txt | 30 | ||||
-rw-r--r-- | src/plugins/scripts/CMakeLists.txt | 50 | ||||
-rw-r--r-- | src/plugins/scripts/lua/CMakeLists.txt | 30 | ||||
-rw-r--r-- | src/plugins/scripts/perl/CMakeLists.txt | 38 | ||||
-rw-r--r-- | src/plugins/scripts/python/CMakeLists.txt | 28 | ||||
-rw-r--r-- | src/plugins/scripts/ruby/CMakeLists.txt | 27 |
14 files changed, 503 insertions, 0 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt new file mode 100644 index 000000000..2694d55d1 --- /dev/null +++ b/src/CMakeLists.txt @@ -0,0 +1,95 @@ +# Copyright (c) 2003-2007 FlashCode <flashcode@flashtux.org> +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# + +ADD_DEFINITIONS(-DHAVE_CONFIG_H) + +INCLUDE(CheckIncludeFiles) +INCLUDE(CheckFunctionExists) + +CHECK_INCLUDE_FILES("arpa/inet.h" HAVE_ARPA_INET_H) +CHECK_INCLUDE_FILES("libintl.h" HAVE_LIBINTL_H) +CHECK_INCLUDE_FILES("limits.h" HAVE_LIMITS_H) +CHECK_INCLUDE_FILES("locale.h" HAVE_LOCALE_H) +CHECK_INCLUDE_FILES("netdb.h" HAVE_NETDB_H) +CHECK_INCLUDE_FILES("netinet/in.h" HAVE_NETINET_IN_H) +CHECK_INCLUDE_FILES("stdlib.h" HAVE_STDLIB_H) +CHECK_INCLUDE_FILES("string.h" HAVE_STRING_H) +CHECK_INCLUDE_FILES("sys/socket.h" HAVE_SYS_SOCKET_H) +CHECK_INCLUDE_FILES("sys/time.h" HAVE_SYS_TIME_H) +CHECK_INCLUDE_FILES("sys/types.h" HAVE_SYS_TYPES_H) +CHECK_INCLUDE_FILES("unistd.h" HAVE_UNISTD_H) +CHECK_INCLUDE_FILES("pwd.h" HAVE_PWD_H) +CHECK_INCLUDE_FILES("errno.h" HAVE_ERRNO_H) +CHECK_INCLUDE_FILES("wchar.h" HAVE_WCHAR_H) +CHECK_INCLUDE_FILES("langinfo.h" HAVE_LANGINFO_CODESET) + +CHECK_FUNCTION_EXISTS(gethostbyname HAVE_GETHOSTBYNAME) +CHECK_FUNCTION_EXISTS(gethostname HAVE_GETHOSTNAME) +CHECK_FUNCTION_EXISTS(getsockname HAVE_GETSOCKNAME) +CHECK_FUNCTION_EXISTS(gettimeofday HAVE_GETTIMEOFDAY) +CHECK_FUNCTION_EXISTS(inet_ntoa HAVE_INET_NTOA) +CHECK_FUNCTION_EXISTS(memset HAVE_MEMSET) +CHECK_FUNCTION_EXISTS(mkdir HAVE_MKDIR) +CHECK_FUNCTION_EXISTS(select HAVE_SELECT) +CHECK_FUNCTION_EXISTS(setlocale HAVE_SETLOCALE) +CHECK_FUNCTION_EXISTS(socket HAVE_SOCKET) +CHECK_FUNCTION_EXISTS(strcasecmp HAVE_STRCASECMP) +CHECK_FUNCTION_EXISTS(strchr HAVE_STRCHR) +CHECK_FUNCTION_EXISTS(strdup HAVE_STRDUP) +CHECK_FUNCTION_EXISTS(strndup HAVE_STRNDUP) +CHECK_FUNCTION_EXISTS(strncasecmp HAVE_STRNCASECMP) +CHECK_FUNCTION_EXISTS(strpbrk HAVE_STRPBRK) +CHECK_FUNCTION_EXISTS(strrchr HAVE_STRRCHR) +CHECK_FUNCTION_EXISTS(strstr HAVE_STRSTR) + + +#needs to be splitted in subdirectories +# FIXME: weechat_gui_common MUST be the first lib in the list +SET(STATIC_LIBS weechat_gui_common) + +# Check for Gettext +IF(NOT DISABLE_NLS) + FIND_PACKAGE(Gettext) + IF(GETTEXT_FOUND) + ADD_DEFINITIONS(-DENABLE_NLS) + ENDIF(GETTEXT_FOUND) +ENDIF(NOT DISABLE_NLS) + +# Check for GnuTLS +IF(NOT DISABLE_GNUTLS) + FIND_PACKAGE(GnuTLS) + + IF(GNUTLS_FOUND) + STRING(REGEX REPLACE "/[^/]*$" "" GNUTLS_LIBRARY_PATH "${GNUTLS_LIBRARY}") + ADD_DEFINITIONS(-DHAVE_GNUTLS) + INCLUDE_DIRECTORIES(${GNUTLS_INCLUDE_PATH}) + SET(CMAKE_C_LINK_FLAGS "${CMAKE_C_LINK_FLAGS} -L${GNUTLS_LIBRARY_PATH}") + LIST(APPEND EXTRA_LIBS gnutls) + ENDIF(GNUTLS_FOUND) +ENDIF(NOT DISABLE_GNUTLS) + +IF(NOT DISABLE_PLUGINS) + ADD_DEFINITIONS(-DPLUGINS) + LIST(APPEND STATIC_LIBS weechat_plugins) + ADD_SUBDIRECTORY( plugins ) +ENDIF(NOT DISABLE_PLUGINS) + +ADD_SUBDIRECTORY( common ) +List(APPEND STATIC_LIBS weechat_main) +ADD_SUBDIRECTORY( irc ) +LIST(APPEND STATIC_LIBS weechat_irc) +ADD_SUBDIRECTORY( gui ) diff --git a/src/common/CMakeLists.txt b/src/common/CMakeLists.txt new file mode 100644 index 000000000..158374946 --- /dev/null +++ b/src/common/CMakeLists.txt @@ -0,0 +1,33 @@ +# Copyright (c) 2003-2007 FlashCode <flashcode@flashtux.org> +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# + +SET(LIB_MAIN_SRC weechat.c weechat.h alias.c alias.h backtrace.c backtrace.h +command.c command.h completion.c completion.h weelist.c weelist.h weeconfig.c +weeconfig.h history.c history.h hotlist.c hotlist.h log.c log.h fifo.c fifo.h +session.c session.h utf8.c utf8.h util.c util.h) + +# Check for flock support +INCLUDE(CheckSymbolExists) +CHECK_INCLUDE_FILES("sys/file.h" HAVE_SYS_FILE_H) +CHECK_SYMBOL_EXISTS(flock "sys/file.h" HAVE_FLOCK) + +IF(ICONV_FOUND) + ADD_DEFINITIONS( -DHAVE_ICONV ) +ENDIF(ICONV_FOUND) + +INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR}) +ADD_LIBRARY(weechat_main STATIC ${LIB_MAIN_SRC}) diff --git a/src/common/util.c b/src/common/util.c index b7c6907da..f6434700c 100644 --- a/src/common/util.c +++ b/src/common/util.c @@ -33,6 +33,14 @@ #include <iconv.h> #endif +#ifndef ICONV_CONST + #ifdef ICONV_2ARG_IS_CONST + #define ICONV_CONST const + #else + #define ICONV_CONST + #endif +#endif + #include "weechat.h" #include "utf8.h" #include "weeconfig.h" diff --git a/src/gui/CMakeLists.txt b/src/gui/CMakeLists.txt new file mode 100644 index 000000000..7835db2b4 --- /dev/null +++ b/src/gui/CMakeLists.txt @@ -0,0 +1,25 @@ +# Copyright (c) 2003-2007 FlashCode <flashcode@flashtux.org> +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# + +SUBDIRS( curses ) + +SET(LIB_GUI_COMMON_SRC gui-buffer.c gui-common.c gui-action.c gui-keyboard.c +gui-log.c gui-window.c gui-panel.c gui.h gui-buffer.h gui-color.h gui-keyboard.h +gui-panel.h gui-window.h) + +INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR}) +ADD_LIBRARY(weechat_gui_common STATIC ${LIB_GUI_COMMON_SRC}) diff --git a/src/gui/curses/CMakeLists.txt b/src/gui/curses/CMakeLists.txt new file mode 100644 index 000000000..6bfdf0bcd --- /dev/null +++ b/src/gui/curses/CMakeLists.txt @@ -0,0 +1,42 @@ +# Copyright (c) 2003-2007 FlashCode <flashcode@flashtux.org> +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# + +SET(WEECHAT_CURSES_SRC gui-curses-chat.c gui-curses-color.c gui-curses-infobar.c +gui-curses-input.c gui-curses-keyboard.c gui-curses-main.c gui-curses-nicklist.c +gui-curses-status.c gui-curses-window.c gui-curses-panel.c gui-curses.h) + +SET(EXECUTABLE weechat-curses) + +INCLUDE(CheckLibraryExists) +# Check for ncurses and/or ncursesw +CHECK_INCLUDE_FILES(ncursesw/ncurses.h NCURSESW_HEADERS) +CHECK_LIBRARY_EXISTS(ncursesw initscr "" NCURSESW_FOUND) + +IF(NCURSESW_FOUND) + ADD_DEFINITIONS(-DHAVE_NCURSESW_CURSES_H) + LIST(APPEND EXTRA_LIBS ncursesw) +ELSE(NCURSESW_FOUND) + CHECK_INCLUDE_FILES(ncurses.h NCURSES_HEADERS) + CHECK_LIBRARY_EXISTS(ncurses initscr "" NCURSES_FOUND) + LIST(APPEND EXTRA_LIBS ncurses) +ENDIF(NCURSESW_FOUND) + +ADD_EXECUTABLE(${EXECUTABLE} ${WEECHAT_CURSES_SRC}) +INCLUDE_DIRECTORIES(.. ../../common ../../irc ../../plugins) +TARGET_LINK_LIBRARIES(${EXECUTABLE} ${STATIC_LIBS} ${EXTRA_LIBS}) + +INSTALL(TARGETS ${EXECUTABLE} RUNTIME DESTINATION bin) diff --git a/src/irc/CMakeLists.txt b/src/irc/CMakeLists.txt new file mode 100644 index 000000000..68d19060a --- /dev/null +++ b/src/irc/CMakeLists.txt @@ -0,0 +1,26 @@ +# Copyright (c) 2003-2007 FlashCode <flashcode@flashtux.org> +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# + +SET(LIB_IRC_SRC irc.h irc-commands.c irc-send.c irc-recv.c irc-server.c +irc-channel.c irc-nick.c irc-mode.c irc-dcc.c irc-ignore.c irc-display.c) + +CHECK_INCLUDE_FILES("regex.h" HAVE_REGEX_H) +CHECK_FUNCTION_EXISTS(regexec HAVE_REGEXEC) +CHECK_FUNCTION_EXISTS(uname HAVE_UNAME) + +INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR}) +ADD_LIBRARY(weechat_irc STATIC ${LIB_IRC_SRC}) diff --git a/src/plugins/CMakeLists.txt b/src/plugins/CMakeLists.txt new file mode 100644 index 000000000..ec8d057a0 --- /dev/null +++ b/src/plugins/CMakeLists.txt @@ -0,0 +1,45 @@ +# Copyright (c) 2003-2007 FlashCode <flashcode@flashtux.org> +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# + +SET(LIB_PLUGINS_SRC weechat-plugin.h plugins.h plugins.c plugins-interface.c +plugins-config.h plugins-config.c) + +INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR}) +ADD_LIBRARY(weechat_plugins STATIC ${LIB_PLUGINS_SRC}) + +INCLUDE(CheckIncludeFiles) +INCLUDE(CheckFunctionExists) +INCLUDE(CheckLibraryExists) + +IF(NOT DISABLE_ASPELL) + # Check for aspell libraries + FIND_PACKAGE(Aspell) + IF(ASPELL_FOUND) + ADD_SUBDIRECTORY( aspell ) + ENDIF(ASPELL_FOUND) +ENDIF(NOT DISABLE_ASPELL) + +IF (NOT DISABLE_CHARSET) + # Check for iconv support. + FIND_PACKAGE(Iconv) + IF(ICONV_FOUND) + ADD_DEFINITIONS( -DHAVE_ICONV ) + ADD_SUBDIRECTORY( charset ) + ENDIF(ICONV_FOUND) +ENDIF(NOT DISABLE_CHARSET) + +ADD_SUBDIRECTORY( scripts ) diff --git a/src/plugins/aspell/CMakeLists.txt b/src/plugins/aspell/CMakeLists.txt new file mode 100644 index 000000000..d38e75606 --- /dev/null +++ b/src/plugins/aspell/CMakeLists.txt @@ -0,0 +1,26 @@ +# Copyright (c) 2003-2007 FlashCode <flashcode@flashtux.org> +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# + +ADD_LIBRARY(aspell MODULE weechat-aspell.h weechat-aspell.c) +SET_TARGET_PROPERTIES(aspell PROPERTIES PREFIX "") + +IF(ASPELL_FOUND) + INCLUDE_DIRECTORIES(${ASPELL_INCLUDE_PATH}) + TARGET_LINK_LIBRARIES(aspell ${ASPELL_LIBRARY}) +ENDIF(ASPELL_FOUND) + +INSTALL(TARGETS aspell LIBRARY DESTINATION lib/${PROJECT_NAME}/plugins) diff --git a/src/plugins/charset/CMakeLists.txt b/src/plugins/charset/CMakeLists.txt new file mode 100644 index 000000000..5068ea68a --- /dev/null +++ b/src/plugins/charset/CMakeLists.txt @@ -0,0 +1,30 @@ +# Copyright (c) 2003-2007 FlashCode <flashcode@flashtux.org> +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# + +ADD_LIBRARY(charset MODULE weechat-charset.h weechat-charset.c) +SET_TARGET_PROPERTIES(charset PROPERTIES PREFIX "") + +IF(ICONV_FOUND) + INCLUDE_DIRECTORIES(${ICONV_INCLUDE_PATH}) + IF(ICONV_LIBRARY) + TARGET_LINK_LIBRARIES(charset ${ICONV_LIBRARY}) + ELSE(ICONV_LIBRARY) + TARGET_LINK_LIBRARIES(charset) + ENDIF(ICONV_LIBRARY) +ENDIF(ICONV_FOUND) + +INSTALL(TARGETS charset LIBRARY DESTINATION lib/${PROJECT_NAME}/plugins) diff --git a/src/plugins/scripts/CMakeLists.txt b/src/plugins/scripts/CMakeLists.txt new file mode 100644 index 000000000..4831b6ffe --- /dev/null +++ b/src/plugins/scripts/CMakeLists.txt @@ -0,0 +1,50 @@ +# Copyright (c) 2003-2007 FlashCode <flashcode@flashtux.org> +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# + +SET(LIB_SCRIPTS_SRC weechat-script.c weechat-script.h) + +ADD_DEFINITIONS(${CMAKE_SHARED_LIBRARY_C_FLAGS}) +INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR}) +ADD_LIBRARY(weechat_scripts STATIC ${LIB_SCRIPTS_SRC}) + +IF(NOT DISABLE_RUBY) + FIND_PACKAGE(Ruby) + IF(RUBY_FOUND) + ADD_SUBDIRECTORY( ruby ) + ENDIF(RUBY_FOUND) +ENDIF(NOT DISABLE_RUBY) + +IF(NOT DISABLE_LUA) + FIND_PACKAGE(Lua) + IF(LUA_FOUND) + ADD_SUBDIRECTORY( lua ) + ENDIF(LUA_FOUND) +ENDIF(NOT DISABLE_LUA) + +IF(NOT DISABLE_PYTHON) + FIND_PACKAGE(Python) + IF(PYTHON_FOUND) + ADD_SUBDIRECTORY( python ) + ENDIF(PYTHON_FOUND) +ENDIF(NOT DISABLE_PYTHON) + +IF(NOT DISABLE_PERL) + FIND_PACKAGE(Perl) + IF(PERL_FOUND) + ADD_SUBDIRECTORY( perl ) + ENDIF(PERL_FOUND) +ENDIF(NOT DISABLE_PERL) diff --git a/src/plugins/scripts/lua/CMakeLists.txt b/src/plugins/scripts/lua/CMakeLists.txt new file mode 100644 index 000000000..255de8cdc --- /dev/null +++ b/src/plugins/scripts/lua/CMakeLists.txt @@ -0,0 +1,30 @@ +# Copyright (c) 2003-2007 FlashCode <flashcode@flashtux.org> +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# + +ADD_LIBRARY(lua MODULE weechat-lua.c) +SET_TARGET_PROPERTIES(lua PROPERTIES PREFIX "") + +IF(LUA_FOUND) + INCLUDE_DIRECTORIES(${LUA_INCLUDE_PATH} ) + IF(LUA_LIBRARY AND LUALIB_LIBRARY) + TARGET_LINK_LIBRARIES(lua ${LUA_LIBRARY} ${LUALIB_LIBRARY} weechat_scripts) + ELSE(LUA_LIBRARY AND LUALIB_LIBRARY) + TARGET_LINK_LIBRARIES(lua ${LUA_LIBRARY} weechat_scripts) + ENDIF(LUA_LIBRARY AND LUALIB_LIBRARY) +ENDIF(LUA_FOUND) + +INSTALL(TARGETS lua LIBRARY DESTINATION lib/${PROJECT_NAME}/plugins) diff --git a/src/plugins/scripts/perl/CMakeLists.txt b/src/plugins/scripts/perl/CMakeLists.txt new file mode 100644 index 000000000..9b5ed98ea --- /dev/null +++ b/src/plugins/scripts/perl/CMakeLists.txt @@ -0,0 +1,38 @@ +# Copyright (c) 2003-2007 FlashCode <flashcode@flashtux.org> +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# + +ADD_LIBRARY(perl MODULE weechat-perl.c) + +SET_TARGET_PROPERTIES(perl PROPERTIES PREFIX "") + +IF(PERL_FOUND) + ADD_DEFINITIONS(${PERL_CFLAGS}) + INCLUDE_DIRECTORIES(${PERL_INCLUDE_PATH}) + # ugly hack to force linking against Dynaloader.a + STRING(REGEX MATCH "/[^ $]*/DynaLoader.a" PERL_DYNALOADER ${PERL_LFLAGS}) + IF(PERL_DYNALOADER) + STRING(REPLACE "${PERL_DYNALOADER}" "" PERL_LFLAGS "${PERL_LFLAGS}") + SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} ${PERL_LFLAGS}") + EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E copy ${PERL_DYNALOADER} ${CMAKE_CURRENT_BINARY_DIR}/libDynaLoader.a) + TARGET_LINK_LIBRARIES(perl ${PERL_LIBRARY} weechat_scripts ${CMAKE_CURRENT_BINARY_DIR}/libDynaLoader.a) + ELSE(PERL_DYNALOADER) + SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} ${PERL_LFLAGS}") + TARGET_LINK_LIBRARIES(perl ${PERL_LIBRARY} weechat_scripts) + ENDIF(PERL_DYNALOADER) +ENDIF(PERL_FOUND) + +INSTALL(TARGETS perl LIBRARY DESTINATION lib/${PROJECT_NAME}/plugins) diff --git a/src/plugins/scripts/python/CMakeLists.txt b/src/plugins/scripts/python/CMakeLists.txt new file mode 100644 index 000000000..cf7e05533 --- /dev/null +++ b/src/plugins/scripts/python/CMakeLists.txt @@ -0,0 +1,28 @@ +# Copyright (c) 2003-2007 FlashCode <flashcode@flashtux.org> +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# + +ADD_LIBRARY(python MODULE weechat-python.c) + +SET_TARGET_PROPERTIES(python PROPERTIES PREFIX "") + +IF(PYTHON_FOUND) + INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_PATH}) + SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} ${PYTHON_LFLAGS}") + TARGET_LINK_LIBRARIES(python ${PYTHON_LIBRARY} weechat_scripts) +ENDIF(PYTHON_FOUND) + +INSTALL(TARGETS python LIBRARY DESTINATION lib/weechat/plugins) diff --git a/src/plugins/scripts/ruby/CMakeLists.txt b/src/plugins/scripts/ruby/CMakeLists.txt new file mode 100644 index 000000000..51ea89959 --- /dev/null +++ b/src/plugins/scripts/ruby/CMakeLists.txt @@ -0,0 +1,27 @@ +# Copyright (c) 2003-2007 FlashCode <flashcode@flashtux.org> +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# + +ADD_LIBRARY(ruby MODULE weechat-ruby.c) + +SET_TARGET_PROPERTIES(ruby PROPERTIES PREFIX "") + +IF(RUBY_FOUND) + INCLUDE_DIRECTORIES(${RUBY_INCLUDE_PATH}) + TARGET_LINK_LIBRARIES(ruby ${RUBY_LIBRARY} weechat_scripts) +ENDIF(RUBY_FOUND) + +INSTALL(TARGETS ruby LIBRARY DESTINATION lib/${PROJECT_NAME}/plugins) |