|
1 | 1 | cmake_minimum_required(VERSION 2.6) |
2 | 2 |
|
3 | 3 | project(libnetconf2 C) |
| 4 | +set(LIBNETCONF2_DESC "NETCONF library in C providing API for both clients and servers.") |
4 | 5 |
|
5 | 6 | # include custom Modules |
6 | 7 | list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/CMakeModules/") |
@@ -72,77 +73,6 @@ if(ENABLE_DNSSEC AND NOT ENABLE_SSH) |
72 | 73 | set(ENABLE_DNSSEC OFF) |
73 | 74 | endif() |
74 | 75 |
|
75 | | -# package options |
76 | | -find_program(DEB_BUILDER NAMES debuild) |
77 | | -find_program(RPM_BUILDER NAMES rpmbuild) |
78 | | - |
79 | | -if(NOT DEFINED ENV{TRAVIS_BRANCH}) |
80 | | - execute_process(COMMAND "git" "rev-parse" "--abbrev-ref" "HEAD" |
81 | | - OUTPUT_VARIABLE GIT_BRANCH |
82 | | - OUTPUT_STRIP_TRAILING_WHITESPACE |
83 | | - ERROR_QUIET |
84 | | - ) |
85 | | - if(NOT GIT_BRANCH) |
86 | | - set(ENV{TRAVIS_BRANCH} "master") |
87 | | - else() |
88 | | - if(GIT_BRANCH MATCHES "master|devel") |
89 | | - set(ENV{TRAVIS_BRANCH} ${GIT_BRANCH}) |
90 | | - else() |
91 | | - set(ENV{TRAVIS_BRANCH} "master") |
92 | | - endif() |
93 | | - endif() |
94 | | - |
95 | | - set(GIT_BRANCH $ENV{TRAVIS_BRANCH}) # NOTE: used for configure_file too |
96 | | -endif() |
97 | | - |
98 | | -if(GIT_BRANCH STREQUAL master) |
99 | | - set(PACKAGE_NAME "libnetconf2") |
100 | | - set(BRANCH "master") |
101 | | - set(BUILD_TYPE "Package") |
102 | | - set(CONFLICT_PACKAGE_NAME "libnetconf2-experimental") |
103 | | - set(PACKAGE_PART_NAME "") |
104 | | -else() |
105 | | - set(PACKAGE_NAME "libnetconf2-experimental") |
106 | | - set(BRANCH "devel") |
107 | | - set(BUILD_TYPE "Debug") |
108 | | - set(CONFLICT_PACKAGE_NAME "libnetconf2") |
109 | | - set(PACKAGE_PART_NAME "-experimental") |
110 | | -endif() |
111 | | -# change version in config files |
112 | | -configure_file(${PROJECT_SOURCE_DIR}/packages/libnetconf2.spec.in ${PROJECT_BINARY_DIR}/build-packages/libnetconf2.spec) |
113 | | -configure_file(${PROJECT_SOURCE_DIR}/packages/libnetconf2.dsc.in ${PROJECT_BINARY_DIR}/build-packages/libnetconf2.dsc) |
114 | | -configure_file(${PROJECT_SOURCE_DIR}/packages/debian.control.in ${PROJECT_BINARY_DIR}/build-packages/debian.control @ONLY) |
115 | | -configure_file(${PROJECT_SOURCE_DIR}/packages/debian.rules.in ${PROJECT_BINARY_DIR}/build-packages/debian.rules) |
116 | | -configure_file(${PROJECT_SOURCE_DIR}/packages/debian.libnetconf2-dev.install |
117 | | - ${PROJECT_BINARY_DIR}/build-packages/debian.libnetconf2${PACKAGE_PART_NAME}-dev.install COPYONLY) |
118 | | -configure_file(${PROJECT_SOURCE_DIR}/packages/debian.libnetconf2.install |
119 | | - ${PROJECT_BINARY_DIR}/build-packages/debian.libnetconf2${PACKAGE_PART_NAME}.install COPYONLY) |
120 | | -configure_file(${PROJECT_SOURCE_DIR}/packages/debian.python3-netconf2.install |
121 | | - ${PROJECT_BINARY_DIR}/build-packages/debian.python3-netconf2${PACKAGE_PART_NAME}.install COPYONLY) |
122 | | - |
123 | | -if(NOT DEB_BUILDER) |
124 | | - message(WARNING "Missing tools (devscripts, debhelper package) for building deb package.\nYou won't be able to generate deb package from source code.\nCompiling libnetconf2 should still works fine.") |
125 | | -else() |
126 | | - # target for local build deb package |
127 | | - add_custom_target(build-deb |
128 | | - WORKING_DIRECTORY ${PROJECT_BINARY_DIR} |
129 | | - COMMAND build-packages/local-deb.sh |
130 | | - ) |
131 | | - configure_file(${PROJECT_SOURCE_DIR}/packages/local-deb.sh.in ${PROJECT_BINARY_DIR}/build-packages/local-deb.sh @ONLY) |
132 | | -endif() |
133 | | - |
134 | | -if(NOT RPM_BUILDER) |
135 | | - message(WARNING "Missing tools (rpm package) for building rpm package. \nYou won't be able to generate rpm package from source code.\nCompiling libnetconf2 should still work fine.") |
136 | | -else() |
137 | | - # target for local build rpm package |
138 | | - string(REPLACE ${PROJECT_SOURCE_DIR} "." EXCLUDE_BUILD_DIR ${PROJECT_BINARY_DIR}) |
139 | | - add_custom_target(build-rpm |
140 | | - WORKING_DIRECTORY ${PROJECT_BINARY_DIR} |
141 | | - COMMAND build-packages/local-rpm.sh |
142 | | - ) |
143 | | - configure_file(${PROJECT_SOURCE_DIR}/packages/local-rpm.sh.in ${PROJECT_BINARY_DIR}/build-packages/local-rpm.sh @ONLY) |
144 | | -endif() |
145 | | - |
146 | 76 | include_directories(${PROJECT_BINARY_DIR}/src) |
147 | 77 |
|
148 | 78 | # source files |
@@ -292,6 +222,9 @@ if(ENABLE_PYTHON) |
292 | 222 | add_subdirectory(python) |
293 | 223 | endif() |
294 | 224 |
|
| 225 | +# packages |
| 226 | +add_subdirectory(packages) |
| 227 | + |
295 | 228 | # install library |
296 | 229 | install(TARGETS netconf2 DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
297 | 230 |
|
|
0 commit comments