Message ID | 1343051342-12829-1-git-send-email-spdawson@gmail.com |
---|---|
State | Superseded |
Headers | show |
On 07/23/12 15:49, spdawson@gmail.com wrote: [snip] > diff --git a/package/sconeserver/Config.in b/package/sconeserver/Config.in > new file mode 100644 > index 0000000..7290ec0 > --- /dev/null > +++ b/package/sconeserver/Config.in > @@ -0,0 +1,100 @@ > +config BR2_PACKAGE_SCONESERVER > + bool "sconeserver" > + depends on BR2_INSTALL_LIBSTDCPP > + select BR2_PACKAGE_PCRE > + help > + Sconeserver is a modular, object-orientated and extremely versatile > + network server framework for GNU/Linux and UNIX-like platforms. > + > + http://www.sconemad.com/sconeserver/ > + > +comment "sconeserver requires a toolchain with C++ support enabled" > + depends on !BR2_INSTALL_LIBSTDCPP > + > +menu "Modules" I think a menuconfig is nicer in this case. Cfr. OpenCV. > + depends on BR2_PACKAGE_SCONESERVER > + > +config BR2_PACKAGE_SCONESERVER_EXAMPLES > + bool "examples" > + default n n is the default, so this statement is redundant. > + help > + Example modules for SconeServer > + > +config BR2_PACKAGE_SCONESERVER_SSL > + bool "ssl" > + default y Why does this default to y? Maybe you want default y if BR2_PACKAGE_OPENSSL however, I think that conflicts with the select statement below... > + select BR2_PACKAGE_OPENSSL > + help > + SSL module for SconeServer > + > +config BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE > + bool "http::sconesite" > + default y > + select BR2_PACKAGE_LIBXML2 > + help > + http::sconesite module for SconeServer > + > +config BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE_IMAGE > + bool "http::sconesite::image" > + default n > + depends on BR2_PACKAGE_IMAGEMAGICK > + select BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE Shouldn't this be depends on BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE select BR2_PACKAGE_IMAGEMAGICK > + help > + http::sconesite::image module for SconeServer > + > +config BR2_PACKAGE_SCONESERVER_MYSQL > + bool "mysql" > + default n > + depends on BR2_PACKAGE_MYSQL_CLIENT Why depends on rather than select? Same for all the following... > + help > + MySQL module for SconeServer > + > +config BR2_PACKAGE_SCONESERVER_BLUETOOTH > + bool "bluetooth" > + default n > + depends on BR2_PACKAGE_BLUEZ_UTILS > + help > + Bluetooth module for SconeServer > + > +config BR2_PACKAGE_SCONESERVER_RSS > + bool "rss" > + default y > + select BR2_PACKAGE_LIBXML2 > + help > + RSS module for SconeServer > + > +config BR2_PACKAGE_SCONESERVER_LOCATION > + bool "location" > + default n > + depends on BR2_PACKAGE_GPSD > + help > + Location module for SconeServer > + > +config BR2_PACKAGE_SCONESERVER_LETTUCE > + bool "lettuce" > + default n > + help > + Lettuce module for SconeServer This one could use some explanation of what lettuce is... > + > +config BR2_PACKAGE_SCONESERVER_MATHS > + bool "maths" > + default n > + depends on BR2_PACKAGE_GMP > + depends on BR2_PACKAGE_MPFR > + help > + Maths module for SconeServer Maybe this one as well. > + > +config BR2_PACKAGE_SCONESERVER_TESTBUILDER > + bool "testbuilder" > + default n > + help > + Testbuilder module for SconeServer > + > +config BR2_PACKAGE_SCONESERVER_UI > + bool "ui" > + default n > + depends on BR2_PACKAGE_XLIB_LIBX11 > + help > + UI module for SconeServer > + > +endmenu > diff --git a/package/sconeserver/sconeserver.mk b/package/sconeserver/sconeserver.mk > new file mode 100644 > index 0000000..dba5fe6 > --- /dev/null > +++ b/package/sconeserver/sconeserver.mk > @@ -0,0 +1,49 @@ > +############################################################# > +# > +# sconeserver > +# > +############################################################# > +# Release tarball doesn't build cleanly, so use a recent > +# Subversion trunk snapshot. Mention which is the release that doesn't build cleanly, this will help version bumpers. > +SCONESERVER_VERSION = 177 > +SCONESERVER_SITE = \ > + https://sconeserver.svn.sourceforge.net/svnroot/sconeserver/trunk > +SCONESERVER_SITE_METHOD = svn > + > +SCONESERVER_LICENSE = GPLv2+ > +SCONESERVER_LICENSE_FILES = COPYING > + > +SCONESERVER_CONF_OPT += \ > + --with-ip \ > + --with-local \ > + $(if $(BR2_INET_IPV6),--with-ip6,--without-ip6) \ > + $(if $(BR2_PACKAGE_SCONESERVER_EXAMPLES),--with-examples,--without-examples) \ > + $(if $(BR2_PACKAGE_SCONESERVER_LETTUCE),--with-lettuce,--without-lettuce) \ > + $(if $(BR2_PACKAGE_SCONESERVER_TESTBUILDER),--with-testbuilder,--without-testbuilder) \ > + $(if $(BR2_PACKAGE_SCONESERVER_SSL),--with-ssl,--without-ssl) \ > + $(if $(BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE),--with-sconesite,--without-sconesite) \ > + $(if $(BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE_IMAGE),--with-sconesite-image,--without-sconesite-image) \ > + $(if $(BR2_PACKAGE_SCONESERVER_MYSQL),--with-mysql,--without-mysql) \ > + $(if $(BR2_PACKAGE_SCONESERVER_BLUETOOTH),--with-bluetooth,--without-bluetooth) \ > + $(if $(BR2_PACKAGE_SCONESERVER_RSS),--with-rss,--without-rss) \ > + $(if $(BR2_PACKAGE_SCONESERVER_LOCATION),--with-location,--without-location) \ > + $(if $(BR2_PACKAGE_SCONESERVER_MATHS),--with-maths,--without-maths) \ > + $(if $(BR2_PACKAGE_SCONESERVER_UI),--with-ui,--without-ui) > + > +# Help SconeServer to find the libxml2 headers. > +ifeq ($(BR2_PACKAGE_LIBXML2),y) > + SCONESERVER_CONF_OPT += CPPFLAGS="-I$(STAGING_DIR)/usr/include/libxml2" Why doesn't pkg-config find this path? Are they missing a check for libxml-2.0 maybe? > +endif > + > +SCONESERVER_DEPENDENCIES = \ > + pcre \ > + $(if $(BR2_PACKAGE_SCONESERVER_SSL),openssl) \ > + $(if $(or $(BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE),$(BR2_PACKAGE_SCONESERVER_RSS)),libxml2) \ > + $(if $(BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE_IMAGE),imagemagick) \ > + $(if $(BR2_PACKAGE_SCONESERVER_MYSQL),mysql_client) \ > + $(if $(BR2_PACKAGE_SCONESERVER_BLUETOOTH),bluez_utils) \ > + $(if $(BR2_PACKAGE_SCONESERVER_LOCATION),gpsd) \ > + $(if $(BR2_PACKAGE_SCONESERVER_MATHS),gmp mpfr) \ > + $(if $(BR2_PACKAGE_SCONESERVER_UI),xlib_libX11) > + > +$(eval $(autotools-package)) Regards, Arnout
Hi Simon, Arnout, 2012/7/26 Arnout Vandecappelle <arnout@mind.be>: > On 07/23/12 15:49, spdawson@gmail.com wrote: > [snip] > >> diff --git a/package/sconeserver/Config.in b/package/sconeserver/Config.in >> new file mode 100644 >> index 0000000..7290ec0 >> --- /dev/null >> +++ b/package/sconeserver/Config.in >> @@ -0,0 +1,100 @@ >> +config BR2_PACKAGE_SCONESERVER >> + bool "sconeserver" >> + depends on BR2_INSTALL_LIBSTDCPP >> + select BR2_PACKAGE_PCRE >> + help >> + Sconeserver is a modular, object-orientated and extremely >> versatile >> + network server framework for GNU/Linux and UNIX-like platforms. >> + >> + http://www.sconemad.com/sconeserver/ >> + >> +comment "sconeserver requires a toolchain with C++ support enabled" >> + depends on !BR2_INSTALL_LIBSTDCPP >> + >> +menu "Modules" > > > I think a menuconfig is nicer in this case. Cfr. OpenCV. > > >> + depends on BR2_PACKAGE_SCONESERVER >> + >> +config BR2_PACKAGE_SCONESERVER_EXAMPLES >> + bool "examples" >> + default n > > > n is the default, so this statement is redundant. > > >> + help >> + Example modules for SconeServer >> + >> +config BR2_PACKAGE_SCONESERVER_SSL >> + bool "ssl" >> + default y > > > Why does this default to y? > > Maybe you want > default y if BR2_PACKAGE_OPENSSL > > however, I think that conflicts with the select statement below... > > >> + select BR2_PACKAGE_OPENSSL OTHO, you might wont to select which ssl implementation from openssl or polarssl you prefer. Though sconeserver website only mentions openssl dependency, have you try using polarssl? >> + help >> + SSL module for SconeServer >> + >> +config BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE >> + bool "http::sconesite" >> + default y >> + select BR2_PACKAGE_LIBXML2 >> + help >> + http::sconesite module for SconeServer >> + >> +config BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE_IMAGE >> + bool "http::sconesite::image" >> + default n >> + depends on BR2_PACKAGE_IMAGEMAGICK >> + select BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE We usually prefer using "select" for package or library dependency, reserving "depends on" for more bigger dependency like X or something deep in the toolchain like RPC or WCHAR support. See: http://buildroot.org/downloads/manual/manual.html#_literal_config_in_literal_file > > > Shouldn't this be > depends on BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE > select BR2_PACKAGE_IMAGEMAGICK > > >> + help >> + http::sconesite::image module for SconeServer >> + >> +config BR2_PACKAGE_SCONESERVER_MYSQL >> + bool "mysql" >> + default n >> + depends on BR2_PACKAGE_MYSQL_CLIENT > > > Why depends on rather than select? > > Same for all the following... > > >> + help >> + MySQL module for SconeServer >> + >> +config BR2_PACKAGE_SCONESERVER_BLUETOOTH >> + bool "bluetooth" >> + default n >> + depends on BR2_PACKAGE_BLUEZ_UTILS >> + help >> + Bluetooth module for SconeServer >> + >> +config BR2_PACKAGE_SCONESERVER_RSS >> + bool "rss" >> + default y >> + select BR2_PACKAGE_LIBXML2 >> + help >> + RSS module for SconeServer >> + >> +config BR2_PACKAGE_SCONESERVER_LOCATION >> + bool "location" >> + default n >> + depends on BR2_PACKAGE_GPSD >> + help >> + Location module for SconeServer >> + >> +config BR2_PACKAGE_SCONESERVER_LETTUCE >> + bool "lettuce" >> + default n >> + help >> + Lettuce module for SconeServer > > > This one could use some explanation of what lettuce is... > > >> + >> +config BR2_PACKAGE_SCONESERVER_MATHS >> + bool "maths" >> + default n >> + depends on BR2_PACKAGE_GMP >> + depends on BR2_PACKAGE_MPFR >> + help >> + Maths module for SconeServer > > > Maybe this one as well. > > >> + >> +config BR2_PACKAGE_SCONESERVER_TESTBUILDER >> + bool "testbuilder" >> + default n >> + help >> + Testbuilder module for SconeServer >> + >> +config BR2_PACKAGE_SCONESERVER_UI >> + bool "ui" >> + default n >> + depends on BR2_PACKAGE_XLIB_LIBX11 >> + help >> + UI module for SconeServer >> + >> +endmenu >> diff --git a/package/sconeserver/sconeserver.mk >> b/package/sconeserver/sconeserver.mk >> new file mode 100644 >> index 0000000..dba5fe6 >> --- /dev/null >> +++ b/package/sconeserver/sconeserver.mk >> @@ -0,0 +1,49 @@ >> +############################################################# >> +# >> +# sconeserver >> +# >> +############################################################# >> +# Release tarball doesn't build cleanly, so use a recent >> +# Subversion trunk snapshot. > > > Mention which is the release that doesn't build cleanly, this will > help version bumpers. > > >> +SCONESERVER_VERSION = 177 >> +SCONESERVER_SITE = \ >> + https://sconeserver.svn.sourceforge.net/svnroot/sconeserver/trunk >> +SCONESERVER_SITE_METHOD = svn >> + >> +SCONESERVER_LICENSE = GPLv2+ >> +SCONESERVER_LICENSE_FILES = COPYING >> + >> +SCONESERVER_CONF_OPT += \ >> + --with-ip \ >> + --with-local \ >> + $(if $(BR2_INET_IPV6),--with-ip6,--without-ip6) \ >> + $(if >> $(BR2_PACKAGE_SCONESERVER_EXAMPLES),--with-examples,--without-examples) \ >> + $(if >> $(BR2_PACKAGE_SCONESERVER_LETTUCE),--with-lettuce,--without-lettuce) \ >> + $(if >> $(BR2_PACKAGE_SCONESERVER_TESTBUILDER),--with-testbuilder,--without-testbuilder) >> \ >> + $(if $(BR2_PACKAGE_SCONESERVER_SSL),--with-ssl,--without-ssl) \ >> + $(if >> $(BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE),--with-sconesite,--without-sconesite) >> \ >> + $(if >> $(BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE_IMAGE),--with-sconesite-image,--without-sconesite-image) >> \ >> + $(if >> $(BR2_PACKAGE_SCONESERVER_MYSQL),--with-mysql,--without-mysql) \ >> + $(if >> $(BR2_PACKAGE_SCONESERVER_BLUETOOTH),--with-bluetooth,--without-bluetooth) \ >> + $(if $(BR2_PACKAGE_SCONESERVER_RSS),--with-rss,--without-rss) \ >> + $(if >> $(BR2_PACKAGE_SCONESERVER_LOCATION),--with-location,--without-location) \ >> + $(if >> $(BR2_PACKAGE_SCONESERVER_MATHS),--with-maths,--without-maths) \ >> + $(if $(BR2_PACKAGE_SCONESERVER_UI),--with-ui,--without-ui) >> + >> +# Help SconeServer to find the libxml2 headers. >> +ifeq ($(BR2_PACKAGE_LIBXML2),y) >> + SCONESERVER_CONF_OPT += >> CPPFLAGS="-I$(STAGING_DIR)/usr/include/libxml2" > > > Why doesn't pkg-config find this path? Are they missing a check for > libxml-2.0 maybe? > > >> +endif >> + >> +SCONESERVER_DEPENDENCIES = \ >> + pcre \ >> + $(if $(BR2_PACKAGE_SCONESERVER_SSL),openssl) \ Since the ssl option (like most of of the following ones) has effect on both SCONESERVER_DEPENDENCIES and SCONESERVER_CONF_OPT, I would prefer to see them nested in the same if[n]eq statement: ifneq ($(BR2_PACKAGE_SCONESERVER_SSL),) SCONESERVER_CONF_OPT += --with-ssl SCONESERVER_DEPENDENCIES += openssl else SCONESERVER_CONF_OPT += --without-ssl endif IMO, this makes things easier to maintain. >> + $(if $(or >> $(BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE),$(BR2_PACKAGE_SCONESERVER_RSS)),libxml2) >> \ >> + $(if $(BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE_IMAGE),imagemagick) >> \ >> + $(if $(BR2_PACKAGE_SCONESERVER_MYSQL),mysql_client) \ >> + $(if $(BR2_PACKAGE_SCONESERVER_BLUETOOTH),bluez_utils) \ >> + $(if $(BR2_PACKAGE_SCONESERVER_LOCATION),gpsd) \ >> + $(if $(BR2_PACKAGE_SCONESERVER_MATHS),gmp mpfr) \ >> + $(if $(BR2_PACKAGE_SCONESERVER_UI),xlib_libX11) >> + >> +$(eval $(autotools-package)) > Regards,
Le Fri, 27 Jul 2012 01:14:43 +0200, Samuel Martin <s.martin49@gmail.com> a écrit : > Since the ssl option (like most of of the following ones) has effect > on both SCONESERVER_DEPENDENCIES and SCONESERVER_CONF_OPT, > I would prefer to see them nested in the same if[n]eq statement: > > ifneq ($(BR2_PACKAGE_SCONESERVER_SSL),) > SCONESERVER_CONF_OPT += --with-ssl > SCONESERVER_DEPENDENCIES += openssl > else > SCONESERVER_CONF_OPT += --without-ssl > endif > > IMO, this makes things easier to maintain. I agree. It's a bit longer from a number of lines perspective, but it's much more logical, IMO. Thomas
Le Thu, 26 Jul 2012 18:57:45 +0200, Arnout Vandecappelle <arnout@mind.be> a écrit : > > + help > > + Example modules for SconeServer > > + > > +config BR2_PACKAGE_SCONESERVER_SSL > > + bool "ssl" > > + default y > > Why does this default to y? > > Maybe you want > default y if BR2_PACKAGE_OPENSSL > > however, I think that conflicts with the select statement below... Also in general we don't have sub-options for things that depend on packages: the package automatically enables the feature if the required dependency is available. I have the same problem with the VLC package currently being proposed by Ismael: it has a huge number of sub-options, for each potential dependency that the package might use. On one hand having all these sub-options is a bit annoying, but: (*) It allows to have sub-options for things that depend on other libraries, but also for things that don't have dependencies. Otherwise, it's a bit strange: for --enable/--disable flags that don't require dependencies, we have a kconfig option, but for --enable/--disable flags that require dependencies, they get automatically enabled when the required dependency is available. (*) You may want to have SSL support in one component of your system, but not necessarily others. Thoughts? Thomas
Hi Arnout, Samuel, Thomas. Thanks for the feedback. I'll submit a reworked patch. Simon.
On 07/27/12 08:45, Thomas Petazzoni wrote: > I have the same problem with the VLC package currently being proposed > by Ismael: it has a huge number of sub-options, for each potential > dependency that the package might use. > > On one hand having all these sub-options is a bit annoying, but: > > (*) It allows to have sub-options for things that depend on other > libraries, but also for things that don't have dependencies. > Otherwise, it's a bit strange: for --enable/--disable flags that > don't require dependencies, we have a kconfig option, but for > --enable/--disable flags that require dependencies, they get > automatically enabled when the required dependency is available. > > (*) You may want to have SSL support in one component of your system, > but not necessarily others. I think it depends a bit on the situation. For openssl support, it makes more sense to just add it when available, because it normally doesn't increase the size of the binary (much) to have openssl support enabled. However, sconeserver (and vlc as well) are modular packages, which you can basically view as a collection of sub-packages. So in that case, it does make more sense to select which modules you want to have enabled. So for sconeserver, I prefer to keep all the sub-options. Except maybe the SSL module, that's not really a separate server but a library wrapper, so it should probably be selected automatically if openssl is. Regards, Arnout
On 27 July 2012 09:27, Arnout Vandecappelle <arnout@mind.be> wrote: > I think it depends a bit on the situation. For openssl support, it > makes more sense to just add it when available, because it normally > doesn't increase the size of the binary (much) to have openssl support > enabled. > > However, sconeserver (and vlc as well) are modular packages, which you > can basically view as a collection of sub-packages. So in that case, > it does make more sense to select which modules you want to have > enabled. > > So for sconeserver, I prefer to keep all the sub-options. Except > maybe the SSL module, that's not really a separate server but a > library wrapper, so it should probably be selected automatically if > openssl is. Yes, I tend to agree. Simon.
Le Fri, 27 Jul 2012 10:27:45 +0200, Arnout Vandecappelle <arnout@mind.be> a écrit : > I think it depends a bit on the situation. For openssl support, it > makes more sense to just add it when available, because it normally > doesn't increase the size of the binary (much) to have openssl support > enabled. > > However, sconeserver (and vlc as well) are modular packages, which > you can basically view as a collection of sub-packages. So in that > case, it does make more sense to select which modules you want to have > enabled. > > So for sconeserver, I prefer to keep all the sub-options. Except > maybe the SSL module, that's not really a separate server but a > library wrapper, so it should probably be selected automatically if > openssl is. So the patch should be adjusted for the SSL case at least. Thomas
On 26 July 2012 17:57, Arnout Vandecappelle <arnout@mind.be> wrote: > Why doesn't pkg-config find this path? Are they missing a check for > libxml-2.0 maybe? Sorry to backtrack the thread a little, but I just want to reply to this question before it gets forgotten. Yes, the package configure script does check for libxml2; but the check doesn't appear to be doing quite the right thing. I haven't yet got to the bottom of what's wrong here. Simon.
On 27 July 2012 09:39, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> So the patch should be adjusted for the SSL case at least.
Yes, agreed.
Simon.
diff --git a/package/Config.in b/package/Config.in index f664b8e..a88e639 100644 --- a/package/Config.in +++ b/package/Config.in @@ -591,6 +591,7 @@ source "package/rsh-redone/Config.in" source "package/rsync/Config.in" source "package/rtorrent/Config.in" source "package/samba/Config.in" +source "package/sconeserver/Config.in" source "package/ser2net/Config.in" source "package/socat/Config.in" source "package/socketcand/Config.in" diff --git a/package/sconeserver/Config.in b/package/sconeserver/Config.in new file mode 100644 index 0000000..7290ec0 --- /dev/null +++ b/package/sconeserver/Config.in @@ -0,0 +1,100 @@ +config BR2_PACKAGE_SCONESERVER + bool "sconeserver" + depends on BR2_INSTALL_LIBSTDCPP + select BR2_PACKAGE_PCRE + help + Sconeserver is a modular, object-orientated and extremely versatile + network server framework for GNU/Linux and UNIX-like platforms. + + http://www.sconemad.com/sconeserver/ + +comment "sconeserver requires a toolchain with C++ support enabled" + depends on !BR2_INSTALL_LIBSTDCPP + +menu "Modules" + depends on BR2_PACKAGE_SCONESERVER + +config BR2_PACKAGE_SCONESERVER_EXAMPLES + bool "examples" + default n + help + Example modules for SconeServer + +config BR2_PACKAGE_SCONESERVER_SSL + bool "ssl" + default y + select BR2_PACKAGE_OPENSSL + help + SSL module for SconeServer + +config BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE + bool "http::sconesite" + default y + select BR2_PACKAGE_LIBXML2 + help + http::sconesite module for SconeServer + +config BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE_IMAGE + bool "http::sconesite::image" + default n + depends on BR2_PACKAGE_IMAGEMAGICK + select BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE + help + http::sconesite::image module for SconeServer + +config BR2_PACKAGE_SCONESERVER_MYSQL + bool "mysql" + default n + depends on BR2_PACKAGE_MYSQL_CLIENT + help + MySQL module for SconeServer + +config BR2_PACKAGE_SCONESERVER_BLUETOOTH + bool "bluetooth" + default n + depends on BR2_PACKAGE_BLUEZ_UTILS + help + Bluetooth module for SconeServer + +config BR2_PACKAGE_SCONESERVER_RSS + bool "rss" + default y + select BR2_PACKAGE_LIBXML2 + help + RSS module for SconeServer + +config BR2_PACKAGE_SCONESERVER_LOCATION + bool "location" + default n + depends on BR2_PACKAGE_GPSD + help + Location module for SconeServer + +config BR2_PACKAGE_SCONESERVER_LETTUCE + bool "lettuce" + default n + help + Lettuce module for SconeServer + +config BR2_PACKAGE_SCONESERVER_MATHS + bool "maths" + default n + depends on BR2_PACKAGE_GMP + depends on BR2_PACKAGE_MPFR + help + Maths module for SconeServer + +config BR2_PACKAGE_SCONESERVER_TESTBUILDER + bool "testbuilder" + default n + help + Testbuilder module for SconeServer + +config BR2_PACKAGE_SCONESERVER_UI + bool "ui" + default n + depends on BR2_PACKAGE_XLIB_LIBX11 + help + UI module for SconeServer + +endmenu diff --git a/package/sconeserver/sconeserver.mk b/package/sconeserver/sconeserver.mk new file mode 100644 index 0000000..dba5fe6 --- /dev/null +++ b/package/sconeserver/sconeserver.mk @@ -0,0 +1,49 @@ +############################################################# +# +# sconeserver +# +############################################################# +# Release tarball doesn't build cleanly, so use a recent +# Subversion trunk snapshot. +SCONESERVER_VERSION = 177 +SCONESERVER_SITE = \ + https://sconeserver.svn.sourceforge.net/svnroot/sconeserver/trunk +SCONESERVER_SITE_METHOD = svn + +SCONESERVER_LICENSE = GPLv2+ +SCONESERVER_LICENSE_FILES = COPYING + +SCONESERVER_CONF_OPT += \ + --with-ip \ + --with-local \ + $(if $(BR2_INET_IPV6),--with-ip6,--without-ip6) \ + $(if $(BR2_PACKAGE_SCONESERVER_EXAMPLES),--with-examples,--without-examples) \ + $(if $(BR2_PACKAGE_SCONESERVER_LETTUCE),--with-lettuce,--without-lettuce) \ + $(if $(BR2_PACKAGE_SCONESERVER_TESTBUILDER),--with-testbuilder,--without-testbuilder) \ + $(if $(BR2_PACKAGE_SCONESERVER_SSL),--with-ssl,--without-ssl) \ + $(if $(BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE),--with-sconesite,--without-sconesite) \ + $(if $(BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE_IMAGE),--with-sconesite-image,--without-sconesite-image) \ + $(if $(BR2_PACKAGE_SCONESERVER_MYSQL),--with-mysql,--without-mysql) \ + $(if $(BR2_PACKAGE_SCONESERVER_BLUETOOTH),--with-bluetooth,--without-bluetooth) \ + $(if $(BR2_PACKAGE_SCONESERVER_RSS),--with-rss,--without-rss) \ + $(if $(BR2_PACKAGE_SCONESERVER_LOCATION),--with-location,--without-location) \ + $(if $(BR2_PACKAGE_SCONESERVER_MATHS),--with-maths,--without-maths) \ + $(if $(BR2_PACKAGE_SCONESERVER_UI),--with-ui,--without-ui) + +# Help SconeServer to find the libxml2 headers. +ifeq ($(BR2_PACKAGE_LIBXML2),y) + SCONESERVER_CONF_OPT += CPPFLAGS="-I$(STAGING_DIR)/usr/include/libxml2" +endif + +SCONESERVER_DEPENDENCIES = \ + pcre \ + $(if $(BR2_PACKAGE_SCONESERVER_SSL),openssl) \ + $(if $(or $(BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE),$(BR2_PACKAGE_SCONESERVER_RSS)),libxml2) \ + $(if $(BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE_IMAGE),imagemagick) \ + $(if $(BR2_PACKAGE_SCONESERVER_MYSQL),mysql_client) \ + $(if $(BR2_PACKAGE_SCONESERVER_BLUETOOTH),bluez_utils) \ + $(if $(BR2_PACKAGE_SCONESERVER_LOCATION),gpsd) \ + $(if $(BR2_PACKAGE_SCONESERVER_MATHS),gmp mpfr) \ + $(if $(BR2_PACKAGE_SCONESERVER_UI),xlib_libX11) + +$(eval $(autotools-package))