Gentoo Archives: gentoo-commits

From: Chris Reffett <geekboy72@×××××.com>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/kde:master commit in: net-misc/csync/files/, net-misc/csync/
Date: Thu, 29 Nov 2012 16:30:29
Message-Id: 1354206553.b922e4f2a46ceaf8222da4bba87e832e523b9329.creffett@gentoo
1 commit: b922e4f2a46ceaf8222da4bba87e832e523b9329
2 Author: Chris Reffett <creffett <AT> gentoo <DOT> org>
3 AuthorDate: Thu Nov 29 16:29:13 2012 +0000
4 Commit: Chris Reffett <geekboy72 <AT> gmail <DOT> com>
5 CommitDate: Thu Nov 29 16:29:13 2012 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/kde.git;a=commit;h=b922e4f2
7
8 [net-misc/csync] Version bump for testing. Tests restricted until I have an ebuild for cmocka available.
9
10 Package-Manager: portage-2.2.0_alpha142
11
12 ---
13 net-misc/csync/csync-0.60.2.ebuild | 71 +++++++++++
14 .../csync/files/csync-0.60.2-automagicness.patch | 102 ++++++++++++++++
15 net-misc/csync/files/csync-automagicness.patch | 123 ++++++++++++++++++++
16 net-misc/csync/metadata.xml | 10 ++
17 4 files changed, 306 insertions(+), 0 deletions(-)
18
19 diff --git a/net-misc/csync/csync-0.60.2.ebuild b/net-misc/csync/csync-0.60.2.ebuild
20 new file mode 100644
21 index 0000000..4e9f5b8
22 --- /dev/null
23 +++ b/net-misc/csync/csync-0.60.2.ebuild
24 @@ -0,0 +1,71 @@
25 +# Copyright 1999-2012 Gentoo Foundation
26 +# Distributed under the terms of the GNU General Public License v2
27 +# $Header: /var/cvsroot/gentoo-x86/net-misc/csync/csync-0.60.1.ebuild,v 1.1 2012/11/16 19:39:11 johu Exp $
28 +
29 +EAPI=4
30 +
31 +inherit base cmake-utils
32 +
33 +DESCRIPTION="A file synchronizer especially designed for you, the normal user"
34 +HOMEPAGE="http://csync.org/"
35 +SRC_URI="http://download.owncloud.com/download/o${P}.tar.bz2"
36 +
37 +LICENSE="GPL-2"
38 +SLOT="0"
39 +KEYWORDS="~amd64 ~x86"
40 +IUSE="doc log samba +sftp test +webdav"
41 +
42 +RDEPEND="
43 + dev-db/sqlite:3
44 + >=dev-libs/iniparser-3.1
45 + dev-libs/openssl:0
46 + log? ( dev-libs/log4c )
47 + samba? ( net-fs/samba )
48 + sftp? ( net-libs/libssh )
49 + webdav? ( net-libs/neon )
50 +"
51 +DEPEND="${DEPEND}
52 + app-text/asciidoc
53 + doc? ( app-doc/doxygen )
54 +"
55 +
56 +RESTRICT="test"
57 +#until we have an ebuild for cmocka at least
58 +
59 +PATCHES=(
60 + "${FILESDIR}/${PN}-0.60.2-automagicness.patch"
61 +)
62 +
63 +S="${WORKDIR}/o${P}"
64 +
65 +src_prepare() {
66 + base_src_prepare
67 +
68 + if ! use doc; then
69 + sed -i \
70 + -e 's:add_subdirectory(doc)::' \
71 + CMakeLists.txt || die
72 + fi
73 +
74 + # punt owncloud test as it uses weird cmocka framework
75 + sed -i \
76 + -e 's:add_subdirectory(ownCloud)::' \
77 + tests/CMakeLists.txt || die
78 + # proper docdir
79 + sed -i \
80 + -e "s:/doc/ocsync:/doc/${PF}:" \
81 + doc/CMakeLists.txt || die
82 +}
83 +
84 +src_configure() {
85 + local mycmakeargs=(
86 + "-DLOG_TO_CALLBACK=ON"
87 + $(cmake-utils_use test UNIT_TESTING)
88 + $(cmake-utils_use_with doc APIDOC)
89 + $(cmake-utils_use_with log Log4C)
90 + $(cmake-utils_use_with samba Libsmbclient)
91 + $(cmake-utils_use_with sftp LibSSH)
92 + $(cmake-utils_use_with webdav Neon)
93 + )
94 + cmake-utils_src_configure
95 +}
96
97 diff --git a/net-misc/csync/files/csync-0.60.2-automagicness.patch b/net-misc/csync/files/csync-0.60.2-automagicness.patch
98 new file mode 100644
99 index 0000000..426d830
100 --- /dev/null
101 +++ b/net-misc/csync/files/csync-0.60.2-automagicness.patch
102 @@ -0,0 +1,102 @@
103 +--- ocsync-0.60.2/cmake/Modules/MacroOptionalFindPackage.cmake
104 ++++ ocsync-0.60.2/cmake/Modules/MacroOptionalFindPackage.cmake
105 +@@ -0,0 +1,47 @@
106 ++# - MACRO_OPTIONAL_FIND_PACKAGE() combines FIND_PACKAGE() with an OPTION()
107 ++# MACRO_OPTIONAL_FIND_PACKAGE( <name> [QUIT] )
108 ++# This macro is a combination of OPTION() and FIND_PACKAGE(), it
109 ++# works like FIND_PACKAGE(), but additionally it automatically creates
110 ++# an option name WITH_<name>, which can be disabled via the cmake GUI.
111 ++# or via -DWITH_<name>=OFF
112 ++# The standard <name>_FOUND variables can be used in the same way
113 ++# as when using the normal FIND_PACKAGE()
114 ++
115 ++# Copyright (c) 2006-2010 Alexander Neundorf, <neundorf@×××.org>
116 ++#
117 ++# Redistribution and use is allowed according to the terms of the BSD license.
118 ++# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
119 ++
120 ++# This is just a helper macro to set a bunch of variables empty.
121 ++# We don't know whether the package uses UPPERCASENAME or CamelCaseName, so we try both:
122 ++macro(_MOFP_SET_EMPTY_IF_DEFINED _name _var)
123 ++ if(DEFINED ${_name}_${_var})
124 ++ set(${_name}_${_var} "")
125 ++ endif(DEFINED ${_name}_${_var})
126 ++
127 ++ string(TOUPPER ${_name} _nameUpper)
128 ++ if(DEFINED ${_nameUpper}_${_var})
129 ++ set(${_nameUpper}_${_var} "")
130 ++ endif(DEFINED ${_nameUpper}_${_var})
131 ++endmacro(_MOFP_SET_EMPTY_IF_DEFINED _package _var)
132 ++
133 ++
134 ++macro (MACRO_OPTIONAL_FIND_PACKAGE _name )
135 ++ option(WITH_${_name} "Search for ${_name} package" ON)
136 ++ if (WITH_${_name})
137 ++ find_package(${_name} ${ARGN})
138 ++ else (WITH_${_name})
139 ++ string(TOUPPER ${_name} _nameUpper)
140 ++ set(${_name}_FOUND FALSE)
141 ++ set(${_nameUpper}_FOUND FALSE)
142 ++
143 ++ _mofp_set_empty_if_defined(${_name} INCLUDE_DIRS)
144 ++ _mofp_set_empty_if_defined(${_name} INCLUDE_DIR)
145 ++ _mofp_set_empty_if_defined(${_name} INCLUDES)
146 ++ _mofp_set_empty_if_defined(${_name} LIBRARY)
147 ++ _mofp_set_empty_if_defined(${_name} LIBRARIES)
148 ++ _mofp_set_empty_if_defined(${_name} LIBS)
149 ++ _mofp_set_empty_if_defined(${_name} FLAGS)
150 ++ _mofp_set_empty_if_defined(${_name} DEFINITIONS)
151 ++ endif (WITH_${_name})
152 ++endmacro (MACRO_OPTIONAL_FIND_PACKAGE)
153 +
154 +--- ocsync-0.60.2/CMakeLists.txt
155 ++++ ocsync-0.60.2/CMakeLists.txt
156 +@@ -38,8 +38,9 @@
157 + # add macros
158 + include(MacroAddPlugin)
159 + include(MacroCopyFile)
160 ++include(MacroOptionalFindPackage)
161 +
162 +-find_package(Log4C)
163 ++macro_optional_find_package(Log4C)
164 + find_package(CMocka)
165 + if (CMOCKA_FOUND AND UNIT_TESTING)
166 + include(AddCMockaTest)
167 +
168 +--- ocsync-0.60.2/DefineOptions.cmake
169 ++++ ocsync-0.60.2/DefineOptions.cmake
170 +@@ -1,4 +1,3 @@
171 +-option(WITH_LOG4C "Build csync without log4c" ON)
172 + option(UNIT_TESTING "Build with unit tests" OFF)
173 + option(MEM_NULL_TESTS "Enable NULL memory testing" OFF)
174 + option(LOG_TO_CALLBACK "Enable extended logging through a callback" OFF)
175 +
176 +--- ocsync-0.60.2/doc/CMakeLists.txt
177 ++++ ocsync-0.60.2/doc/CMakeLists.txt
178 +@@ -2,7 +2,10 @@
179 + # Build the documentation
180 + #
181 +
182 +-include(UseDoxygen OPTIONAL)
183 ++option(WITH_APIDOC "Use doxygen to generate documentation" ON)
184 ++if (WITH_APIDOC)
185 ++ include(UseDoxygen OPTIONAL)
186 ++endif (WITH_APIDOC)
187 +
188 + file(GLOB _manpages *.[0-9].txt)
189 + add_custom_target(man
190 +
191 +--- ocsync-0.60.2/modules/CMakeLists.txt
192 ++++ ocsync-0.60.2/modules/CMakeLists.txt
193 +@@ -1,8 +1,8 @@
194 + project(modules C)
195 +
196 +-find_package(Libsmbclient)
197 +-find_package(LibSSH 0.4.0)
198 +-find_package(Neon)
199 ++macro_optional_find_package(Libsmbclient)
200 ++macro_optional_find_package(LibSSH 0.4.0)
201 ++macro_optional_find_package(Neon)
202 +
203 + set(PLUGIN_VERSION_INSTALL_DIR "${PLUGIN_INSTALL_DIR}-${LIBRARY_SOVERSION}")
204 +
205
206 diff --git a/net-misc/csync/files/csync-automagicness.patch b/net-misc/csync/files/csync-automagicness.patch
207 new file mode 100644
208 index 0000000..ed24341
209 --- /dev/null
210 +++ b/net-misc/csync/files/csync-automagicness.patch
211 @@ -0,0 +1,123 @@
212 +diff -urN csync-0.50.8.old/cmake/Modules/MacroOptionalFindPackage.cmake csync-0.50.8/cmake/Modules/MacroOptionalFindPackage.cmake
213 +--- /dev/null
214 ++++ csync-0.50.8/cmake/Modules/MacroOptionalFindPackage.cmake 2012-08-28 13:35:55.312298632 +0200
215 +@@ -0,0 +1,48 @@
216 ++# - MACRO_OPTIONAL_FIND_PACKAGE() combines FIND_PACKAGE() with an OPTION()
217 ++# MACRO_OPTIONAL_FIND_PACKAGE( <name> [QUIT] )
218 ++# This macro is a combination of OPTION() and FIND_PACKAGE(), it
219 ++# works like FIND_PACKAGE(), but additionally it automatically creates
220 ++# an option name WITH_<name>, which can be disabled via the cmake GUI.
221 ++# or via -DWITH_<name>=OFF
222 ++# The standard <name>_FOUND variables can be used in the same way
223 ++# as when using the normal FIND_PACKAGE()
224 ++
225 ++# Copyright (c) 2006-2010 Alexander Neundorf, <neundorf@×××.org>
226 ++#
227 ++# Redistribution and use is allowed according to the terms of the BSD license.
228 ++# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
229 ++
230 ++# This is just a helper macro to set a bunch of variables empty.
231 ++# We don't know whether the package uses UPPERCASENAME or CamelCaseName, so we try both:
232 ++macro(_MOFP_SET_EMPTY_IF_DEFINED _name _var)
233 ++ if(DEFINED ${_name}_${_var})
234 ++ set(${_name}_${_var} "")
235 ++ endif(DEFINED ${_name}_${_var})
236 ++
237 ++ string(TOUPPER ${_name} _nameUpper)
238 ++ if(DEFINED ${_nameUpper}_${_var})
239 ++ set(${_nameUpper}_${_var} "")
240 ++ endif(DEFINED ${_nameUpper}_${_var})
241 ++endmacro(_MOFP_SET_EMPTY_IF_DEFINED _package _var)
242 ++
243 ++
244 ++macro (MACRO_OPTIONAL_FIND_PACKAGE _name )
245 ++ option(WITH_${_name} "Search for ${_name} package" ON)
246 ++ if (WITH_${_name})
247 ++ find_package(${_name} ${ARGN})
248 ++ else (WITH_${_name})
249 ++ string(TOUPPER ${_name} _nameUpper)
250 ++ set(${_name}_FOUND FALSE)
251 ++ set(${_nameUpper}_FOUND FALSE)
252 ++
253 ++ _mofp_set_empty_if_defined(${_name} INCLUDE_DIRS)
254 ++ _mofp_set_empty_if_defined(${_name} INCLUDE_DIR)
255 ++ _mofp_set_empty_if_defined(${_name} INCLUDES)
256 ++ _mofp_set_empty_if_defined(${_name} LIBRARY)
257 ++ _mofp_set_empty_if_defined(${_name} LIBRARIES)
258 ++ _mofp_set_empty_if_defined(${_name} LIBS)
259 ++ _mofp_set_empty_if_defined(${_name} FLAGS)
260 ++ _mofp_set_empty_if_defined(${_name} DEFINITIONS)
261 ++ endif (WITH_${_name})
262 ++endmacro (MACRO_OPTIONAL_FIND_PACKAGE)
263 ++
264 +diff -urN csync-0.50.8.old/CMakeLists.txt csync-0.50.8/CMakeLists.txt
265 +--- csync-0.50.8.old/CMakeLists.txt 2012-08-28 13:35:05.005298638 +0200
266 ++++ csync-0.50.8/CMakeLists.txt 2012-08-28 13:42:05.150298588 +0200
267 +@@ -38,9 +38,10 @@
268 + # add macros
269 + include(MacroAddPlugin)
270 + include(MacroCopyFile)
271 ++include(MacroOptionalFindPackage)
272 +
273 +-find_package(Log4C)
274 +-if(NOT LOG4C_FOUND)
275 ++macro_optional_find_package(Log4C)
276 ++if(NOT WITH_Log4C)
277 + set(WITH_LOG4C FALSE)
278 + endif()
279 +
280 +@@ -64,11 +65,11 @@
281 + add_subdirectory(config)
282 + add_subdirectory(doc)
283 +
284 +-find_package(Check)
285 +-if (CHECK_FOUND)
286 +- include(MacroAddCheckTest)
287 +-endif (CHECK_FOUND)
288 + if (UNIT_TESTING)
289 ++ find_package(Check)
290 ++ if (CHECK_FOUND)
291 ++ include(MacroAddCheckTest)
292 ++ endif (CHECK_FOUND)
293 + add_subdirectory(tests)
294 +-endif(UNIT_TESTING)
295 ++endif (UNIT_TESTING)
296 +
297 +diff -urN csync-0.50.8.old/DefineOptions.cmake csync-0.50.8/DefineOptions.cmake
298 +--- csync-0.50.8.old/DefineOptions.cmake 2012-08-28 13:35:05.004298638 +0200
299 ++++ csync-0.50.8/DefineOptions.cmake 2012-08-28 13:41:44.838298591 +0200
300 +@@ -1,4 +1,3 @@
301 +-option(WITH_LOG4C "Build csync without log4c" ON)
302 + option(UNIT_TESTING "Build with unit tests" OFF)
303 + option(MEM_NULL_TESTS "Enable NULL memory testing" OFF)
304 + option(LOG_TO_CALLBACK "Enable extended logging through a callback" OFF)
305 +diff -urN csync-0.50.8.old/doc/CMakeLists.txt csync-0.50.8/doc/CMakeLists.txt
306 +--- csync-0.50.8.old/doc/CMakeLists.txt 2012-08-28 13:35:05.004298638 +0200
307 ++++ csync-0.50.8/doc/CMakeLists.txt 2012-08-28 13:38:05.055298617 +0200
308 +@@ -2,7 +2,10 @@
309 + # Build the documentation
310 + #
311 +
312 +-include(UseDoxygen OPTIONAL)
313 ++option(WITH_APIDOC "Use doxygen to generate documentation" ON)
314 ++if (WITH_APIDOC)
315 ++ include(UseDoxygen OPTIONAL)
316 ++endif (WITH_APIDOC)
317 +
318 + file(GLOB _manpages *.[0-9].txt)
319 + add_custom_target(man
320 +diff -urN csync-0.50.8.old/modules/CMakeLists.txt csync-0.50.8/modules/CMakeLists.txt
321 +--- csync-0.50.8.old/modules/CMakeLists.txt 2012-08-28 13:35:05.003298638 +0200
322 ++++ csync-0.50.8/modules/CMakeLists.txt 2012-08-28 13:40:25.254298600 +0200
323 +@@ -1,8 +1,8 @@
324 + project(modules C)
325 +
326 +-find_package(Libsmbclient)
327 +-find_package(LibSSH 0.4.0)
328 +-find_package(Neon)
329 ++macro_optional_find_package(Libsmbclient)
330 ++macro_optional_find_package(LibSSH 0.4.0)
331 ++macro_optional_find_package(Neon)
332 +
333 + set(PLUGIN_VERSION_INSTALL_DIR "${PLUGIN_INSTALL_DIR}-${LIBRARY_SOVERSION}")
334 +
335
336 diff --git a/net-misc/csync/metadata.xml b/net-misc/csync/metadata.xml
337 new file mode 100644
338 index 0000000..a8da389
339 --- /dev/null
340 +++ b/net-misc/csync/metadata.xml
341 @@ -0,0 +1,10 @@
342 +<?xml version="1.0" encoding="UTF-8"?>
343 +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
344 +<pkgmetadata>
345 + <herd>kde</herd>
346 + <use>
347 + <flag name="log">Enable logging support via <pkg>dev-libs/log4c</pkg></flag>
348 + <flag name="sftp">Enable sftp transfer support via <pkg>net-libs/libssh</pkg></flag>
349 + <flag name="webdav">Adds support for HTTP/dav content via <pkg>net-libs/neon</pkg></flag>
350 + </use>
351 +</pkgmetadata>