[Buildroot] [PATCHv2] package: add the poco C++ libraries collection
Peter Korsgaard
jacmet at uclibc.org
Sun Sep 25 21:50:39 UTC 2011
>>>>> "Baruch" == Baruch Siach <baruch at tkos.co.il> writes:
Baruch> Add the C++ Portable Components libraries.
Baruch> The Data/ODBC components is disabled because its dependency
Baruch> (unixODBC) is not in Buildroot.
Baruch> The Data/MySQL component is build tested only. It probably requires an
Baruch> additional RPATH to actually run, because libmysqlclient resides in a
Baruch> non-standard location under /usr/lib/mysql.
Thanks, a few comments:
Baruch> diff --git a/package/poco/Config.in b/package/poco/Config.in
Baruch> new file mode 100644
Baruch> index 0000000..9de5328
Baruch> --- /dev/null
Baruch> +++ b/package/poco/Config.in
Baruch> @@ -0,0 +1,56 @@
Baruch> +config BR2_PACKAGE_POCO
Baruch> + bool "poco"
Baruch> + select BR2_PACKAGE_ZLIB
Baruch> + select BR2_PACKAGE_PCRE
Baruch> + depends on BR2_LARGEFILE
That's not enough. You (obviously) need C++ support, and WCHAR also
seems to be needed for the unicode stuff - E.G.:
select BR2_INSTALL_LIBSTDCPP
select BR2_USE_WCHAR
Baruch> + help
Baruch> + The C++ Portable Components Libraries
Baruch> +
Baruch> + http://pocoproject.org
Baruch> +
Baruch> +comment "poco requires a toolchain with LARGEFILE support"
Baruch> + depends on !BR2_LARGEFILE
This should be extended to also cover C++ and WCHAR. This comment should
move down to the bottom of the file so the remaining sub options gets
properly indented.
With those changes it builds until it gets to the FPU stuff, which
breaks on (atleast) ARM:
.. -c src/FPEnvironment.cpp -o /home/peko/source/buildroot/output/build/poco-1.4.2/Foundation/obj/Linux/arm/release_shared/FPEnvironment.o
In file included from src/FPEnvironment_C99.cpp:37,
from src/FPEnvironment.cpp:48:
include/Poco/FPEnvironment_C99.h:56: error: 'FE_DOWNWARD' was not declared in this scope
include/Poco/FPEnvironment_C99.h:57: error: 'FE_UPWARD' was not declared in this scope
The FE_* macros afaik only supposed to be defined if the arch can
efficiently handle it, which isn't the case for ARM. fenv.h the
supporting functions are only enabled on uClibc if UCLIBC_HAS_FENV is
enabled in the .config, which it isn't for our uClibc defconfigs.
I'm not exactly sure how to fix this. Any ideas?
--
Bye, Peter Korsgaard
More information about the buildroot
mailing list