Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=pacman-g2.git;a=commitdiff;h=0adc5e3ad25aed908aaf5458f63ae86fac2ddfb6

commit 0adc5e3ad25aed908aaf5458f63ae86fac2ddfb6
Author: Marius Cirsta <[email protected]>
Date:   Mon Oct 8 02:51:32 2012 +0000

* added cmake script for python bindings

diff --git a/CMakeLists.txt b/CMakeLists.txt
index b1132cc..437785f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -7,69 +7,84 @@ include (CheckIncludeFile)
include (CheckIncludeFiles)
include (CheckFunctionExists)

-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D_GNU_SOURCE")
-
string(TOLOWER ${CMAKE_PROJECT_NAME} CMAKE_PROJECT_NAME_LOWER)

set (PACMAN_G2_VERSION 3.8.9)

SET(ENABLE_NLS TRUE CACHE BOOL "Translation program messages to the user's 
native language ?")

-find_package(Doxygen QUIET)
+FIND_PACKAGE(Doxygen QUIET)
message("searched for doxy")
IF(DOXYGEN_FOUND)
message("found doxy")
SET(HAS_DOXYGEN TRUE CACHE BOOL "Use Doxygen")
ENDIF(DOXYGEN_FOUND)

-find_package(Asciidoc QUIET)
+FIND_PACKAGE(Asciidoc QUIET)
message("searched for ascii doc")
-if(ASCIIDOC_FOUND)
+IF(ASCIIDOC_FOUND)
message("found asciidoc")
SET(HAS_ASCIIDOC TRUE CACHE BOOL "Use Asciidoc")
ENDIF(ASCIIDOC_FOUND)

-find_package(Mono QUIET)
+FIND_PACKAGE(Po4a QUIET)
+message("searched for Po4a")
+IF(PO4A_FOUND)
+  message("found Po4a")
+  SET(HAS_PO4A TRUE CACHE BOOL "Po4a bindings")
+ENDIF(PO4A_FOUND)
+
+FIND_PACKAGE(SWIG QUIET)
+IF(SWIG_FOUND)
+  message("found SWIG")
+  INCLUDE(${SWIG_USE_FILE})
+  SET(CMAKE_SWIG_FLAGS "-I${CMAKE_SOURCE_DIR}/lib/libpacman/")
+ENDIF(SWIG_FOUND)
+
+FIND_PACKAGE(Mono QUIET)
message("searched for Mono")
-if(MONO_FOUND)
+IF(MONO_FOUND)
message("found Mono")
SET(HAS_CSHARP TRUE CACHE BOOL "C# bindings")
+  #ADD_SUBDIRECTORY(bindings/csharp)
ENDIF(MONO_FOUND)

-find_package(Java QUIET)
+FIND_PACKAGE(Java QUIET)
message("searched for Java")
-if(JAVA_FOUND)
+IF(JAVA_FOUND)
message("found Java")
SET(HAS_JAVA TRUE CACHE BOOL "Java bindings")
+  #ADD_SUBDIRECTORY(bindings/charp)
ENDIF(JAVA_FOUND)

-find_package(Perl QUIET)
+FIND_PACKAGE(Perl QUIET)
message("searched for Perl")
-if(PERL_FOUND)
+IF(PERL_FOUND)
message("found Perl")
SET(HAS_PERL TRUE CACHE BOOL "Perl bindings")
+  #ADD_SUBDIRECTORY(bindings/perl)
ENDIF(PERL_FOUND)

-find_package(Po4a QUIET)
-message("searched for Po4a")
-if(PO4A_FOUND)
-  message("found Po4a")
-  SET(HAS_PO4A TRUE CACHE BOOL "Po4a bindings")
-ENDIF(PO4A_FOUND)
-
-find_package(Vala QUIET)
+FIND_PACKAGE(Vala QUIET)
message("searched for Vala")
-if(VALA_FOUND)
+IF(VALA_FOUND)
message("found Vala")
SET(HAS_VALA TRUE CACHE BOOL "Vala bindings")
+  #ADD_SUBDIRECTORY(bindings/vala)
ENDIF(VALA_FOUND)

-find_package(PythonInterp QUIET)
+FIND_PACKAGE(PythonInterp QUIET)
+FIND_PACKAGE(PythonLibs QUIET)
message("searched for Python")
-if(PYTHONINTERP_FOUND)
+IF(PYTHONINTERP_FOUND AND PYTHONLIBS_FOUND)
message("found Python")
SET(HAS_PYTHON TRUE CACHE BOOL "Python bindings")
-ENDIF(PYTHONINTERP_FOUND)
+  ADD_SUBDIRECTORY(bindings/python)
+ENDIF(PYTHONINTERP_FOUND AND PYTHONLIBS_FOUND)
+
+IF((HAS_CSHARP OR HAS_JAVA OR HAS_PERL OR HAS_VALA OR HAS_PYTHON) AND 
SWIG_FOUND)
+  message("has bindings and SWIG")
+ENDIF((HAS_CSHARP OR HAS_JAVA OR HAS_PERL OR HAS_VALA OR HAS_PYTHON) AND 
SWIG_FOUND)

CHECK_INCLUDE_FILE(dlfcn.h HAVE_DLFCN_H)
CHECK_INCLUDE_FILE(inttypes.h HAVE_INTTYPES_H)
@@ -88,13 +103,13 @@ CHECK_FUNCTION_EXISTS(gettext HAVE_GETTEXT)
CHECK_FUNCTION_EXISTS(iconv HAVE_ICONV)
CHECK_FUNCTION_EXISTS(strverscmp HAVE_STRVERSCMP)

-configure_file (
+CONFIGURE_FILE (
"${PROJECT_SOURCE_DIR}/config.h.cmake"
"${PROJECT_SOURCE_DIR}/config.h"
)

-add_subdirectory (lib/libftp)
-add_subdirectory (lib/libpacman)
-add_subdirectory (src/versort)
-add_subdirectory (src/vercmp)
-add_subdirectory (src/pacman-g2)
+ADD_SUBDIRECTORY(lib/libftp)
+ADD_SUBDIRECTORY(lib/libpacman)
+ADD_SUBDIRECTORY(src/versort)
+ADD_SUBDIRECTORY(src/vercmp)
+ADD_SUBDIRECTORY(src/pacman-g2)
diff --git a/bindings/pacman.i b/bindings/pacman.i
index ba2f393..06ac224 100644
--- a/bindings/pacman.i
+++ b/bindings/pacman.i
@@ -5,6 +5,7 @@
#endif
%include "cpointer.i"

+%{#include "pacman.h"%}
/* Create casting functions */

%pointer_cast(void *, long, void_to_long);
diff --git a/bindings/python/CMakeLists.txt b/bindings/python/CMakeLists.txt
new file mode 100644
index 0000000..43d55e1
--- /dev/null
+++ b/bindings/python/CMakeLists.txt
@@ -0,0 +1,5 @@
+SWIG_ADD_MODULE(pacman_python python ../pacman.i)
+message("${CMAKE_SOURCE_DIR}")
+SET_SOURCE_FILES_PROPERTIES(pacman.i PROPERTIES SWIG_FLAGS "-includeall")
+INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_PATH})
+SWIG_LINK_LIBRARIES(pacman_python pacman)
\ No newline at end of file
_______________________________________________
Frugalware-git mailing list
[email protected]
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to