All the mail mirrored from lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCHv2 0/3] Add subversion package
@ 2013-08-27 17:08 Thomas Petazzoni
  2013-08-27 17:08 ` [Buildroot] [PATCHv2 1/3] neon: factorize 'depends on BR2_PACKAGE_NEON' Thomas Petazzoni
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Thomas Petazzoni @ 2013-08-27 17:08 UTC (permalink / raw
  To: buildroot

Hello,

Here is the second version of the subversion package addition. The
changes since v1 are:

 * The patch factorizing the 'depends on BR2_PACKAGE_NEON' now appears
   first in the series. This was changed after the comment of Arnout,
   who didn't realise that the factorization was happening in the
   second patch of the series. Indeed, it makes more sense to have
   this change first.

 * I've introduced an hidden BR2_PACKAGE_NEON_XML option, that other
   packages can select to request XML support in Neon, without caring
   for the particular XML backend being used. This was suggested by
   Arnout.

Thanks,

Thomas

Rico Bachmann (1):
  subversion: new package

Thomas Petazzoni (2):
  neon: factorize 'depends on BR2_PACKAGE_NEON'
  neon: replace 'choice' for XML library with two options

 package/Config.in                |  1 +
 package/neon/Config.in           | 35 ++++++++++++++---------------------
 package/rpm/Config.in            |  7 ++-----
 package/subversion/Config.in     | 11 +++++++++++
 package/subversion/subversion.mk | 28 ++++++++++++++++++++++++++++
 5 files changed, 56 insertions(+), 26 deletions(-)
 create mode 100644 package/subversion/Config.in
 create mode 100644 package/subversion/subversion.mk

-- 
1.8.1.2

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCHv2 1/3] neon: factorize 'depends on BR2_PACKAGE_NEON'
  2013-08-27 17:08 [Buildroot] [PATCHv2 0/3] Add subversion package Thomas Petazzoni
@ 2013-08-27 17:08 ` Thomas Petazzoni
  2013-08-27 17:08 ` [Buildroot] [PATCHv2 2/3] neon: replace 'choice' for XML library with two options Thomas Petazzoni
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: Thomas Petazzoni @ 2013-08-27 17:08 UTC (permalink / raw
  To: buildroot

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/neon/Config.in | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/package/neon/Config.in b/package/neon/Config.in
index f972dbb..54b51c8 100644
--- a/package/neon/Config.in
+++ b/package/neon/Config.in
@@ -5,23 +5,22 @@ config BR2_PACKAGE_NEON
 
 	  http://www.webdav.org/neon/
 
+if BR2_PACKAGE_NEON
+
 config BR2_PACKAGE_NEON_ZLIB
 	bool "ZLIB support"
-	depends on BR2_PACKAGE_NEON
 	select BR2_PACKAGE_ZLIB
 	help
 	  build with ZLIB support
 
 config BR2_PACKAGE_NEON_SSL
 	bool "SSL support"
-	depends on BR2_PACKAGE_NEON
 	select BR2_PACKAGE_OPENSSL
 	help
 	  build with SSL support
 
 choice
 	prompt "XML Support"
-	depends on BR2_PACKAGE_NEON
 	help
 	  Select which XML library to use...
 	  none       do not build with XML support
@@ -46,3 +45,5 @@ config BR2_PACKAGE_NEON_LIBXML2
 	  libxml2    use libxml2, a library to read, modify and
 	             write XML and HTML files.
 endchoice
+
+endif
-- 
1.8.1.2

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCHv2 2/3] neon: replace 'choice' for XML library with two options
  2013-08-27 17:08 [Buildroot] [PATCHv2 0/3] Add subversion package Thomas Petazzoni
  2013-08-27 17:08 ` [Buildroot] [PATCHv2 1/3] neon: factorize 'depends on BR2_PACKAGE_NEON' Thomas Petazzoni
@ 2013-08-27 17:08 ` Thomas Petazzoni
  2013-08-27 17:08 ` [Buildroot] [PATCHv2 3/3] subversion: new package Thomas Petazzoni
  2013-08-27 22:33 ` [Buildroot] [PATCHv2 0/3] Add subversion package Peter Korsgaard
  3 siblings, 0 replies; 5+ messages in thread
From: Thomas Petazzoni @ 2013-08-27 17:08 UTC (permalink / raw
  To: buildroot

The NEON library can either be compiled without XML support, with XML
support provided by Expat, or with XML support provided by
libxml2. Until now, to represent this, a Kconfig 'choice..endchoice'
was used. Unfortunately, another package cannot 'select' one of the
possible choices. So for example, a package such as 'rpm', or the
to-be-added 'subversion' package could not select their dependencies,
they had to do a 'depends on !BR2_PACKAGE_NEON_NOXML', which is not
how Buildroot handles library dependencies in general.

So, this commit replaces the 'choice...endchoice' block with simply
two configuration options that are mutually exclusive. The option
names are not changed, so no Config.in.legacy addition is needed.

An hidden option BR2_PACKAGE_NEON_XML is provided, so that packages
that need XML support in NEON but don't care whether it's provided by
Expat or libxml2 can simply select BR2_PACKAGE_NEON_XML.

The rpm package is updated accordingly.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/neon/Config.in | 28 ++++++++++------------------
 package/rpm/Config.in  |  7 ++-----
 2 files changed, 12 insertions(+), 23 deletions(-)

diff --git a/package/neon/Config.in b/package/neon/Config.in
index 54b51c8..e76278c 100644
--- a/package/neon/Config.in
+++ b/package/neon/Config.in
@@ -19,31 +19,23 @@ config BR2_PACKAGE_NEON_SSL
 	help
 	  build with SSL support
 
-choice
-	prompt "XML Support"
-	help
-	  Select which XML library to use...
-	  none       do not build with XML support
-	  expat      use expat
-	  libxml2    use libxml2
-
-config BR2_PACKAGE_NEON_NOXML
-	bool "none"
-	help
-	  none       do not build with XML support
+# This is an hidden symbol other packages can select to ensure that
+# Neon has XML support, either provided by Expat or libxml2.
+config BR2_PACKAGE_NEON_XML
+	bool
+	select BR2_PACKAGE_NEON_EXPAT if !BR2_PACKAGE_NEON_LIBXML2
 
 config BR2_PACKAGE_NEON_EXPAT
-	bool "expat"
+	bool "XML support with expat"
 	select BR2_PACKAGE_EXPAT
+	depends on !BR2_PACKAGE_NEON_LIBXML2
 	help
-	  expat      use expat, a library for parsing XML.
+	  Enable XML support in neon, using the Expat XML library.
 
 config BR2_PACKAGE_NEON_LIBXML2
-	bool "libxml2"
+	bool "XML support with libxml2"
 	select BR2_PACKAGE_LIBXML2
 	help
-	  libxml2    use libxml2, a library to read, modify and
-	             write XML and HTML files.
-endchoice
+	  Enable XML support in neon, using the libxml2 XML library.
 
 endif
diff --git a/package/rpm/Config.in b/package/rpm/Config.in
index 14072c9..63e5367 100644
--- a/package/rpm/Config.in
+++ b/package/rpm/Config.in
@@ -1,17 +1,14 @@
 comment "rpm requires a toolchain with thread support"
 	depends on !BR2_TOOLCHAIN_HAS_THREADS
 
-comment "rpm requires libneon with SSL, XML and ZLIB support"
-	depends on !BR2_PACKAGE_NEON || BR2_PACKAGE_NEON_NOXML && BR2_TOOLCHAIN_HAS_THREADS
-
 config BR2_PACKAGE_RPM
 	bool "rpm"
 	depends on BR2_TOOLCHAIN_HAS_THREADS # beecrypt
 	select BR2_PACKAGE_BEECRYPT
 	select BR2_PACKAGE_POPT
 	select BR2_PACKAGE_OPENSSL
-	depends on BR2_PACKAGE_NEON
-	depends on !BR2_PACKAGE_NEON_NOXML
+	select BR2_PACKAGE_NEON
+	select BR2_PACKAGE_NEON_XML
 	select BR2_PACKAGE_NEON_ZLIB
 	select BR2_PACKAGE_NEON_SSL
 	help
-- 
1.8.1.2

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCHv2 3/3] subversion: new package
  2013-08-27 17:08 [Buildroot] [PATCHv2 0/3] Add subversion package Thomas Petazzoni
  2013-08-27 17:08 ` [Buildroot] [PATCHv2 1/3] neon: factorize 'depends on BR2_PACKAGE_NEON' Thomas Petazzoni
  2013-08-27 17:08 ` [Buildroot] [PATCHv2 2/3] neon: replace 'choice' for XML library with two options Thomas Petazzoni
@ 2013-08-27 17:08 ` Thomas Petazzoni
  2013-08-27 22:33 ` [Buildroot] [PATCHv2 0/3] Add subversion package Peter Korsgaard
  3 siblings, 0 replies; 5+ messages in thread
From: Thomas Petazzoni @ 2013-08-27 17:08 UTC (permalink / raw
  To: buildroot

From: Rico Bachmann <bachmann@tofwerk.com>

[Thomas: added license informations, fixed dependencies, and several
cleanups.]

Signed-off-by: Rico Bachmann <bachmann@tofwerk.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/Config.in                |  1 +
 package/subversion/Config.in     | 11 +++++++++++
 package/subversion/subversion.mk | 28 ++++++++++++++++++++++++++++
 3 files changed, 40 insertions(+)
 create mode 100644 package/subversion/Config.in
 create mode 100644 package/subversion/subversion.mk

diff --git a/package/Config.in b/package/Config.in
index 2347229..1ac26f7 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -97,6 +97,7 @@ if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
 source "package/sed/Config.in"
 endif
 source "package/sstrip/Config.in"
+source "package/subversion/Config.in"
 if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
 source "package/tar/Config.in"
 endif
diff --git a/package/subversion/Config.in b/package/subversion/Config.in
new file mode 100644
index 0000000..c1358fe
--- /dev/null
+++ b/package/subversion/Config.in
@@ -0,0 +1,11 @@
+config BR2_PACKAGE_SUBVERSION
+	bool "subversion"
+	select BR2_PACKAGE_APR_UTIL
+	# apr really needs shared library support
+	depends on !BR2_PREFER_STATIC_LIB
+	select BR2_PACKAGE_NEON
+	select BR2_PACKAGE_NEON_XML
+	help
+	  Subversion is an open source version control system
+
+	  http://subversion.apache.org/
diff --git a/package/subversion/subversion.mk b/package/subversion/subversion.mk
new file mode 100644
index 0000000..de4db7c
--- /dev/null
+++ b/package/subversion/subversion.mk
@@ -0,0 +1,28 @@
+################################################################################
+#
+# subversion
+#
+################################################################################
+
+SUBVERSION_VERSION = 1.7.9
+SUBVERSION_SITE = http://archive.apache.org/dist/subversion
+SUBVERSION_LICENSE = Apache 2.0
+SUBVERSION_LICENSE_FILES = LICENSE
+
+SUBVERSION_DEPENDENCIES = apr apr-util expat neon zlib
+SUBVERSION_CONF_OPT = \
+	--with-expat=$(STAGING_DIR)/usr/include:$(STAGING_DIR)/usr/lib: \
+	--with-apr=$(STAGING_DIR)/usr \
+	--with-apr-util=$(STAGING_DIR)/usr \
+	--with-zlib=$(STAGING_DIR)/usr \
+	--with-neon=$(STAGING_DIR)/usr \
+	--without-gssapi \
+	--without-serf \
+	--without-apxs \
+	--without-berkeyley-db \
+	--without-sasl \
+	--without-gnome-keyring \
+	--without-ssl \
+	--without-libmagic
+
+$(eval $(autotools-package))
-- 
1.8.1.2

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCHv2 0/3] Add subversion package
  2013-08-27 17:08 [Buildroot] [PATCHv2 0/3] Add subversion package Thomas Petazzoni
                   ` (2 preceding siblings ...)
  2013-08-27 17:08 ` [Buildroot] [PATCHv2 3/3] subversion: new package Thomas Petazzoni
@ 2013-08-27 22:33 ` Peter Korsgaard
  3 siblings, 0 replies; 5+ messages in thread
From: Peter Korsgaard @ 2013-08-27 22:33 UTC (permalink / raw
  To: buildroot

>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes:

 Thomas> Hello,
 Thomas> Here is the second version of the subversion package addition. The
 Thomas> changes since v1 are:

 Thomas>  * The patch factorizing the 'depends on BR2_PACKAGE_NEON' now appears
 Thomas>    first in the series. This was changed after the comment of Arnout,
 Thomas>    who didn't realise that the factorization was happening in the
 Thomas>    second patch of the series. Indeed, it makes more sense to have
 Thomas>    this change first.

 Thomas>  * I've introduced an hidden BR2_PACKAGE_NEON_XML option, that other
 Thomas>    packages can select to request XML support in Neon, without caring
 Thomas>    for the particular XML backend being used. This was suggested by
 Thomas>    Arnout.

Committed series to next, thanks.

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2013-08-27 22:33 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-08-27 17:08 [Buildroot] [PATCHv2 0/3] Add subversion package Thomas Petazzoni
2013-08-27 17:08 ` [Buildroot] [PATCHv2 1/3] neon: factorize 'depends on BR2_PACKAGE_NEON' Thomas Petazzoni
2013-08-27 17:08 ` [Buildroot] [PATCHv2 2/3] neon: replace 'choice' for XML library with two options Thomas Petazzoni
2013-08-27 17:08 ` [Buildroot] [PATCHv2 3/3] subversion: new package Thomas Petazzoni
2013-08-27 22:33 ` [Buildroot] [PATCHv2 0/3] Add subversion package Peter Korsgaard

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.