summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMartin Lambers <marlam@marlam.de>2012-12-06 12:26:53 (GMT)
committerMartin Lambers <marlam@marlam.de>2012-12-07 19:32:06 (GMT)
commit27cb9ec7b6ae4b228c923b663339b06febeaf872 (patch)
tree24bad1f07db15950194e2382fad465da2b6d77c1 /src
parentbbb8cb14a30f40b484dc99e90f9f4e143c471b35 (diff)
downloadmxe-27cb9ec7b6ae4b228c923b663339b06febeaf872.zip
mxe-27cb9ec7b6ae4b228c923b663339b06febeaf872.tar.gz
mxe-27cb9ec7b6ae4b228c923b663339b06febeaf872.tar.bz2
Add package flann.
This is a prerequisite for PCL (Point Cloud Library).
Diffstat (limited to 'src')
-rw-r--r--src/flann-1-fix-pkgconfig.patch16
-rw-r--r--src/flann-2-disable-targets.patch22
-rw-r--r--src/flann-3-disable-sharedlibs.patch144
-rw-r--r--src/flann.mk24
4 files changed, 206 insertions, 0 deletions
diff --git a/src/flann-1-fix-pkgconfig.patch b/src/flann-1-fix-pkgconfig.patch
new file mode 100644
index 0000000..b180d0d
--- /dev/null
+++ b/src/flann-1-fix-pkgconfig.patch
@@ -0,0 +1,16 @@
+This file is part of MXE.
+See index.html for further information.
+
+Fix flann.pc to link with the static libraries.
+diff -uNr flann-1.7.1-src/cmake/flann.pc.in flann-1.7.1-src.patched/cmake/flann.pc.in
+--- flann-1.7.1-src/cmake/flann.pc.in 2011-12-23 12:16:09.000000000 +0100
++++ flann-1.7.1-src.patched/cmake/flann.pc.in 2012-10-01 12:46:31.617169719 +0200
+@@ -8,6 +8,6 @@
+ Description: @PKG_DESC@
+ Version: @FLANN_VERSION@
+ Requires: @PKG_EXTERNAL_DEPS@
+-Libs: -L${libdir} -lflann_cpp -lflann_cpp-gd
++Libs: -L${libdir} -lflann_cpp_s -lflann_cpp_s-gd
+ Cflags: -I${includedir}
+
+
diff --git a/src/flann-2-disable-targets.patch b/src/flann-2-disable-targets.patch
new file mode 100644
index 0000000..b5cea03
--- /dev/null
+++ b/src/flann-2-disable-targets.patch
@@ -0,0 +1,22 @@
+This file is part of MXE.
+See index.html for further information.
+
+Disable examples, test, and documentation in the CMakeLists.txt file.
+(The file unfortunately does not provide switches for this purpose.)
+diff -uNr flann-1.7.1-src/CMakeLists.txt flann-1.7.1-src.patched/CMakeLists.txt
+--- flann-1.7.1-src/CMakeLists.txt 2011-12-23 12:16:09.000000000 +0100
++++ flann-1.7.1-src.patched/CMakeLists.txt 2012-10-01 12:32:59.865199865 +0200
+@@ -143,9 +143,9 @@
+
+ add_subdirectory( cmake )
+ add_subdirectory( src )
+-add_subdirectory( examples )
+-add_subdirectory( test )
+-add_subdirectory( doc )
++#add_subdirectory( examples )
++#add_subdirectory( test )
++#add_subdirectory( doc )
+
+
+ # CPACK options
+
diff --git a/src/flann-3-disable-sharedlibs.patch b/src/flann-3-disable-sharedlibs.patch
new file mode 100644
index 0000000..f54ccda
--- /dev/null
+++ b/src/flann-3-disable-sharedlibs.patch
@@ -0,0 +1,144 @@
+This file is part of MXE.
+See index.html for further information.
+
+Disable building and installing dynamic libraries in the CMakeLists.txt file.
+(The file unfortunately does not provide switches for this purpose.)
+diff -uNr flann-1.7.1-src/src/cpp/CMakeLists.txt flann-1.7.1-src.patched/src/cpp/CMakeLists.txt
+--- flann-1.7.1-src/src/cpp/CMakeLists.txt 2011-12-23 12:16:09.000000000 +0100
++++ flann-1.7.1-src.patched/src/cpp/CMakeLists.txt 2012-10-01 12:36:59.013191056 +0200
+@@ -24,29 +24,29 @@
+ set_property(TARGET flann_cuda_s PROPERTY COMPILE_DEFINITIONS FLANN_STATIC)
+ endif()
+
+-if(CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_COMPILER_IS_GNUCC)
+- add_library(flann_cpp SHARED "")
+- set_target_properties(flann_cpp PROPERTIES LINKER_LANGUAGE CXX)
+- target_link_libraries(flann_cpp -Wl,-whole-archive flann_cpp_s -Wl,-no-whole-archive)
+-
+- if (BUILD_CUDA_LIB)
+- cuda_add_library(flann_cuda SHARED "")
+- set_target_properties(flann_cuda PROPERTIES LINKER_LANGUAGE CXX)
+- target_link_libraries(flann_cuda -Wl,-whole-archive flann_cuda_s -Wl,-no-whole-archive)
+- # target_link_libraries(flann_cuda cudpp_x86_64)
+- endif()
+-else()
+- add_library(flann_cpp SHARED ${CPP_SOURCES})
+- if (BUILD_CUDA_LIB)
+- cuda_add_library(flann_cuda SHARED ${CPP_SOURCES})
+- endif()
+-endif()
+-
+-set_target_properties(flann_cpp PROPERTIES
+- VERSION ${FLANN_VERSION}
+- SOVERSION ${FLANN_SOVERSION}
+- DEFINE_SYMBOL FLANN_EXPORTS
+-)
++#if(CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_COMPILER_IS_GNUCC)
++# add_library(flann_cpp SHARED "")
++# set_target_properties(flann_cpp PROPERTIES LINKER_LANGUAGE CXX)
++# target_link_libraries(flann_cpp -Wl,-whole-archive flann_cpp_s -Wl,-no-whole-archive)
++#
++# if (BUILD_CUDA_LIB)
++# cuda_add_library(flann_cuda SHARED "")
++# set_target_properties(flann_cuda PROPERTIES LINKER_LANGUAGE CXX)
++# target_link_libraries(flann_cuda -Wl,-whole-archive flann_cuda_s -Wl,-no-whole-archive)
++# # target_link_libraries(flann_cuda cudpp_x86_64)
++# endif()
++#else()
++# add_library(flann_cpp SHARED ${CPP_SOURCES})
++# if (BUILD_CUDA_LIB)
++# cuda_add_library(flann_cuda SHARED ${CPP_SOURCES})
++# endif()
++#endif()
++#
++#set_target_properties(flann_cpp PROPERTIES
++# VERSION ${FLANN_VERSION}
++# SOVERSION ${FLANN_SOVERSION}
++# DEFINE_SYMBOL FLANN_EXPORTS
++#)
+
+ if (BUILD_CUDA_LIB)
+ set_target_properties(flann_cuda PROPERTIES
+@@ -57,12 +57,12 @@
+ endif()
+
+
+-#debug libraries
+-add_library(flann_cpp-gd SHARED ${CPP_SOURCES})
+-set_target_properties(flann_cpp-gd PROPERTIES
+- COMPILE_FLAGS ${CMAKE_CXX_FLAGS_DEBUG}
+- DEFINE_SYMBOL FLANN_EXPORTS
+-)
++##debug libraries
++#add_library(flann_cpp-gd SHARED ${CPP_SOURCES})
++#set_target_properties(flann_cpp-gd PROPERTIES
++# COMPILE_FLAGS ${CMAKE_CXX_FLAGS_DEBUG}
++# DEFINE_SYMBOL FLANN_EXPORTS
++#)
+
+ add_library(flann_cpp_s-gd STATIC ${CPP_SOURCES})
+ set_target_properties(flann_cpp_s-gd PROPERTIES COMPILE_FLAGS ${CMAKE_CXX_FLAGS_DEBUG})
+@@ -108,34 +108,35 @@
+ endif()
+ set_property(TARGET flann_s PROPERTY COMPILE_DEFINITIONS FLANN_STATIC)
+
+- if(CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_COMPILER_IS_GNUCC)
+- add_library(flann SHARED "")
+- set_target_properties(flann PROPERTIES LINKER_LANGUAGE CXX)
+- target_link_libraries(flann -Wl,-whole-archive flann_s -Wl,-no-whole-archive)
+- else()
+- add_library(flann SHARED ${C_SOURCES})
+- endif()
+-
+- set_target_properties(flann PROPERTIES
+- VERSION ${FLANN_VERSION}
+- SOVERSION ${FLANN_SOVERSION}
+- DEFINE_SYMBOL FLANN_EXPORTS
+- )
++# if(CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_COMPILER_IS_GNUCC)
++# add_library(flann SHARED "")
++# set_target_properties(flann PROPERTIES LINKER_LANGUAGE CXX)
++# target_link_libraries(flann -Wl,-whole-archive flann_s -Wl,-no-whole-archive)
++# else()
++# add_library(flann SHARED ${C_SOURCES})
++# endif()
++#
++# set_target_properties(flann PROPERTIES
++# VERSION ${FLANN_VERSION}
++# SOVERSION ${FLANN_SOVERSION}
++# DEFINE_SYMBOL FLANN_EXPORTS
++# )
+ endif()
+
+
+ if(WIN32)
+ if (BUILD_C_BINDINGS)
+- install (
+- TARGETS flann
+- RUNTIME DESTINATION share/flann/matlab
+- )
++# install (
++# TARGETS flann
++# RUNTIME DESTINATION share/flann/matlab
++# )
+ endif()
+ endif(WIN32)
+
+
+ install (
+- TARGETS flann_cpp flann_cpp_s flann_cpp-gd flann_cpp_s-gd
++# TARGETS flann_cpp flann_cpp_s flann_cpp-gd flann_cpp_s-gd
++ TARGETS flann_cpp_s flann_cpp_s-gd
+ RUNTIME DESTINATION bin
+ LIBRARY DESTINATION ${FLANN_LIB_INSTALL_DIR}
+ ARCHIVE DESTINATION ${FLANN_LIB_INSTALL_DIR}
+@@ -152,7 +153,8 @@
+
+ if (BUILD_C_BINDINGS)
+ install (
+- TARGETS flann flann_s
++# TARGETS flann flann_s
++ TARGETS flann_s
+ RUNTIME DESTINATION bin
+ LIBRARY DESTINATION ${FLANN_LIB_INSTALL_DIR}
+ ARCHIVE DESTINATION ${FLANN_LIB_INSTALL_DIR}
diff --git a/src/flann.mk b/src/flann.mk
new file mode 100644
index 0000000..994f096
--- /dev/null
+++ b/src/flann.mk
@@ -0,0 +1,24 @@
+# This file is part of MXE.
+# See index.html for further information.
+
+PKG := flann
+$(PKG)_IGNORE :=
+$(PKG)_CHECKSUM := 61b9858620528919ea60a2a4b085ccc2b3c2d138
+$(PKG)_SUBDIR := flann-$($(PKG)_VERSION)-src
+$(PKG)_FILE := flann-$($(PKG)_VERSION)-src.zip
+$(PKG)_URL := http://people.cs.ubc.ca/~mariusm/uploads/FLANN/$($(PKG)_FILE)
+$(PKG)_DEPS := gcc
+
+define $(PKG)_UPDATE
+ /bin/false
+endef
+
+define $(PKG)_BUILD
+ cd '$(1)' && cmake . \
+ -DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)' \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DBUILD_CUDA_LIB=OFF \
+ -DBUILD_MATLAB_BINDINGS=OFF \
+ -DBUILD_PYTHON_BINDINGS=OFF
+ $(MAKE) -C '$(1)' -j '$(JOBS)' install VERBOSE=1
+endef