[Buildroot] [PATCH v2] agg: new package
Yann E. MORIN
yann.morin.1998 at free.fr
Wed Apr 30 20:43:46 UTC 2014
Julien, All,
On 2014-04-24 17:06 +0200, julien.boibessot at free.fr spake thusly:
> From: Julien Boibessot <julien.boibessot at armadeus.com>
[--SNIP--]
> diff --git a/package/agg/Config.in b/package/agg/Config.in
> new file mode 100644
> index 0000000..a842098
> --- /dev/null
> +++ b/package/agg/Config.in
> @@ -0,0 +1,13 @@
> +config BR2_PACKAGE_AGG
> + bool "agg"
> + depends on BR2_INSTALL_LIBSTDCPP
> + select BR2_PACKAGE_SDL
> + help
> + The Anti-Grain Geometry project. A High Quality 2D Graphics Rendering
> + Engine for C++.
> + We select the SDL backend by default.
> +
> + http://www.antigrain.com/index.html
Not your fault, but here's what one gets when one visits
http://antigrain.com/ :
antigrain.com expired on 04/09/2014 and is pending renewal or
deletion
So, I'm a bit sceptic at adding this package, just because there will
shortly be no way of getting it... :-/
But wikipedia comes to the rescue, and points us to a "copy" of the
site, on sourceforge:
http://agg.sourceforge.net/antigrain.com/index.html
You may want to point to SF instead.
Still upstream does not seem very active, and I'm a bit uneasy at adding
it...
BTW, strictly speaking, it is not *needed* by gnash. It is only one of
the few, somewhat-supported backends:
directfb, OpenVG, OpenGLES1, OpenGL, Cairo.
Granted, only cairo and agg are enabled by default (others are
considered incomplete).
> +comment "agg needs a toolchain with C++ support"
> + depends on !BR2_INSTALL_LIBSTDCPP
> diff --git a/package/agg/agg-make-autoreconfable.patch b/package/agg/agg-make-autoreconfable.patch
> new file mode 100644
> index 0000000..9c069a3
> --- /dev/null
> +++ b/package/agg/agg-make-autoreconfable.patch
> @@ -0,0 +1,25 @@
> +Make the package autoreconfigurable without having to create NEWS, AUTHORS and
> +README files. Also fixes reconfiguring with recent automake by removing
> +AM_C_PROTOTYPES.
> +
> +Signed-off-by: Julien Boibessot <julien.boibessot at armadeus.com>
> +
> +--- agg-2.5.org/configure.in 2014-04-24 15:53:57.832886577 +0200
> ++++ agg-2.5/configure.in 2014-04-24 16:06:56.788749209 +0200
> +@@ -1,14 +1,13 @@
> +-AC_INIT(src/agg_arc.cpp) # give me a source file, any source file...
> ++AC_INIT([agg], 2.5.0)
Yep, good, except you should now need something like:
AC_CONFIG_SRCDIR([src/agg_arc.cpp]) # give me a source file, any source file...
> + AC_CANONICAL_TARGET
> + AC_CONFIG_HEADERS(include/config.h)
> +-AM_INIT_AUTOMAKE(agg, 2.5.0)
> ++AM_INIT_AUTOMAKE([foreign])
Yep! :-)
I know upstream looks pretty dead, but it might still be worth pushing
this patch to them if possible (once the nit above is fixed.)
> +
> + dnl Checks for programs.
> + AC_PROG_CC
> + AC_PROG_CXX
> + AC_ISC_POSIX
> +-AM_C_PROTOTYPES
Yep, die C prototypes, die! :-]
> + if test "x$U" != "x"; then
> + AC_MSG_ERROR(Compiler not ANSI compliant)
> + fi
> diff --git a/package/agg/agg.mk b/package/agg/agg.mk
> new file mode 100644
> index 0000000..4802d3e
> --- /dev/null
> +++ b/package/agg/agg.mk
> @@ -0,0 +1,39 @@
> +###############################################################################
> +#
> +# agg
> +#
> +###############################################################################
> +
> +AGG_VERSION = 2.5
> +AGG_SITE = http://www.antigrain.com/
Ditto, point to SF instead.
> +AGG_LICENSE = GPLv2+
> +AGG_LICENSE_FILES = copying
> +# Examples (if one day enabled) use gpc library which has a different license:
> +#AGG_LICENSE += with exceptions: gpc sources are free for non-commercial use
> +#AGG_LICENSE_FILES += gpc/copying.txt
> +AGG_INSTALL_STAGING = YES
> +# No ./configure in the sources, we need to generate it:
> +AGG_AUTORECONF = YES
> +
> +AGG_DEPENDENCIES = host-pkgconf sdl
> +
> +# Forces sdl-prefix, otherwise configure will set it to Host SDL devt files
> +# directory, if installed:
> +AGG_CONF_OPT = \
> + --with-sdl-prefix=$(STAGING_DIR)/usr \
> + --disable-sdltest
> +
> +ifeq ($(BR2_PACKAGE_SDL_X11),)
> +AGG_CONF_OPT += \
> + --with-x=NO \
> + --disable-examples # examples require X11
Single line, please, it is not long enough to warrant a multi-line
Besides, the comment on that second line is part of the variable value,
so it might come and interfere with the build. Move it above:
# Dont build examples, they need X11
AGG_CONF_OPT += --with-x=NO --disable-examples
> +endif
Peter might disagree, but I prefer when there is an explicit else-clause
that does the opposite:
else
AGG_CONF_OPT += --with-x --enable-examples
endif
(Or disable exanples altogether anyway.)
> +ifeq ($(BR2_PACKAGE_FREETYPE),y)
> +AGG_DEPENDENCIES += freetype
> +AGG_CONF_OPT += --enable-freetype
> +else
> +AGG_CONF_OPT += --disable-freetype
> +endif
> +
> +$(eval $(autotools-package))
Regards,
Yann E. MORIN.
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
More information about the buildroot
mailing list