/alps/ipecamera

To get this branch, use:
bzr branch http://darksoft.org/webbzr/alps/ipecamera
277 by Suren A. Chilingaryan
Build RPM
1
project(ipecamera C)
245 by Suren A. Chilingaryan
First stand-alone ipecamera implementation
2
277 by Suren A. Chilingaryan
Build RPM
3
set(RELEASE "0")
245 by Suren A. Chilingaryan
First stand-alone ipecamera implementation
4
set(IPECAMERA_VERSION "0.0.1")
5
set(IPECAMERA_ABI_VERSION "0")
6
7
cmake_minimum_required(VERSION 2.6)
8
list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
9
275 by Suren A. Chilingaryan
Fix some warnings and add debugging information into the build
10
add_definitions("-fPIC --std=gnu99 -Wall -O2 -gdwarf-2 -g3  -fno-omit-frame-pointer")
11
245 by Suren A. Chilingaryan
First stand-alone ipecamera implementation
12
find_package(PkgConfig REQUIRED)
13
find_package(Threads REQUIRED)
14
pkg_check_modules(UFODECODE ufodecode>=0.3 REQUIRED)
15
16
pkg_check_modules(PCILIB pcitool>=0.2 REQUIRED)
17
exec_program("pkg-config --variable=plugindir pcitool" OUTPUT_VARIABLE PCILIB_PLUGIN_DIR)
18
253 by Suren A. Chilingaryan
Provide version information as required by new pcilib interface
19
include(cmake/version.cmake)
20
VERSION_TO_VARS(${IPECAMERA_VERSION} IPECAMERA_VERSION_MAJOR IPECAMERA_VERSION_MINOR IPECAMERA_VERSION_MICRO)
21
279 by Suren A. Chilingaryan
Use GNUInstallDirs
22
include(GNUInstallDirs)
253 by Suren A. Chilingaryan
Provide version information as required by new pcilib interface
23
250 by Suren A. Chilingaryan
Added a small grabbing example
24
add_subdirectory(apps)
25
126 by Suren A. Chilingaryan
multithread preprocessing of ipecamera frames and code reorganization
26
include_directories(
27
    ${CMAKE_SOURCE_DIR}
281 by Suren A. Chilingaryan
Fix out-of-source build
28
    ${CMAKE_BINARY_DIR}
174.1.3 by Suren A. Chilingaryan
Fixes building in non-standard dirs
29
    ${UFODECODE_INCLUDE_DIRS}
245 by Suren A. Chilingaryan
First stand-alone ipecamera implementation
30
    ${PCILIB_INCLUDE_DIRS}
31
)
32
33
link_directories(
34
    ${UFODECODE_LIBRARY_DIRS}
35
    ${PCILIB_LIBRARY_DIRS}
36
)
37
261 by Suren A. Chilingaryan
Support for new CMOSIS 20MPix camera
38
set(HEADERS ${HEADERS} model.h cmosis.h base.h reader.h events.h data.h env.h private.h ipecamera.h version.h)
245 by Suren A. Chilingaryan
First stand-alone ipecamera implementation
39
261 by Suren A. Chilingaryan
Support for new CMOSIS 20MPix camera
40
add_library(ipecamera SHARED model.c cmosis.c base.c reader.c events.c data.c env.c)
245 by Suren A. Chilingaryan
First stand-alone ipecamera implementation
41
246 by Suren A. Chilingaryan
Link against ufodecode
42
target_link_libraries(ipecamera ${PCILIB_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${UFODECODE_LIBRARIES} )
126 by Suren A. Chilingaryan
multithread preprocessing of ipecamera frames and code reorganization
43
140 by Suren A. Chilingaryan
Add install targets to cmake
44
install(FILES ipecamera.h
279 by Suren A. Chilingaryan
Use GNUInstallDirs
45
    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
140 by Suren A. Chilingaryan
Add install targets to cmake
46
)
245 by Suren A. Chilingaryan
First stand-alone ipecamera implementation
47
48
install(TARGETS ipecamera
49
    DESTINATION ${PCILIB_PLUGIN_DIR}
50
)
51
253 by Suren A. Chilingaryan
Provide version information as required by new pcilib interface
52
set(TARNAME "ipecamera")
53
set(PACKAGE_VERSION ${IPECAMERA_VERSION})
54
set(PACKAGE_NAME "${TARNAME}")
55
set(PACKAGE_TARNAME "${TARNAME}")
56
set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
57
set(PACKAGE_BUGREPORT "http://ufo.kit.edu/ufo/newticket")
58
277 by Suren A. Chilingaryan
Build RPM
59
set(CPACK_SOURCE_GENERATOR "TBZ2")
60
set(CPACK_PACKAGE_CONTACT "Suren A. Chilingaryan <csa@suren.me>")
61
if (${RELEASE} GREATER 0)
62
    set(CPACK_PACKAGE_VERSION "${PACKAGE_VERSION}.${RELEASE}")
63
else (${RELEASE} GREATER 0)
64
    set(CPACK_PACKAGE_VERSION "${PACKAGE_VERSION}")
65
endif (${RELEASE} GREATER 0)
66
set(CPACK_SOURCE_IGNORE_FILES "/.bzr/;CMakeFiles;_CPack_Packages;cmake_install.cmake;CPack.*.cmake;CMakeCache.txt;install_manifest.txt;config.h$;.pc$;Makefile;.tar.bz2$;~$;${CPACK_SOURCE_IGNORE_FILES}")
67
set(CPACK_SOURCE_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME}-${CPACK_PACKAGE_VERSION}")
68
include(CPack)
69
70
add_custom_target(dist_clean COMMAND ${CMAKE_MAKE_PROGRAM} clean WORKING_DIRECTORY ${CMAKE_CURRENT_DIR})
71
add_custom_target(dist DEPENDS dist_clean COMMAND ${CMAKE_MAKE_PROGRAM} package_source)
72
73
253 by Suren A. Chilingaryan
Provide version information as required by new pcilib interface
74
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/ipecamera.pc.in ${CMAKE_CURRENT_BINARY_DIR}/ipecamera.pc)
75
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/version.h.in ${CMAKE_CURRENT_BINARY_DIR}/version.h)
277 by Suren A. Chilingaryan
Build RPM
76
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/ipecamera.spec.in ${CMAKE_CURRENT_BINARY_DIR}/ipecamera.spec)
253 by Suren A. Chilingaryan
Provide version information as required by new pcilib interface
77
78
install(FILES 
79
    ${CMAKE_CURRENT_BINARY_DIR}/ipecamera.pc 
279 by Suren A. Chilingaryan
Use GNUInstallDirs
80
    DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig
253 by Suren A. Chilingaryan
Provide version information as required by new pcilib interface
81
)