Skip to contentSkip to conversation

Add agg (Anti-Grain Geometry) package

PATCH New julien.boibessot at free.fr 4 participants 7 messages Mar 21, 2014 – Apr 23, 2014

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Add agg (Anti-Grain Geometry) package

From: Julien Boibessot <[email protected]>

This library will be needed by gnash (soon coming Flash player).

---
 package/Config.in     |    1 +
 package/agg/Config.in |   13 +++++++++++++
 package/agg/agg.mk    |   40 ++++++++++++++++++++++++++++++++++++++++
 3 files changed, 54 insertions(+), 0 deletions(-)
 create mode 100644 package/agg/Config.in
 create mode 100644 package/agg/agg.mk
package/Config.in +1 -0
index 688ed4d..3b34a67 100644
@@ -556,6 +556,7 @@ source "package/lockdev/Config.in"
 endmenu
 
 menu "Graphics"
+source "package/agg/Config.in"
 source "package/atk/Config.in"
 source "package/cairo/Config.in"
 source "package/fltk/Config.in"
package/agg/Config.in new file +13 -0
new file mode 100644
index 0000000..a842098
@@ -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
+
+comment "agg needs a toolchain with C++ support"
+	depends on !BR2_INSTALL_LIBSTDCPP
package/agg/agg.mk new file +40 -0
new file mode 100644
index 0000000..05be931
@@ -0,0 +1,40 @@
+###############################################################################
+#
+# agg
+#
+###############################################################################
+
+AGG_VERSION = 2.5
+AGG_SITE = http://www.antigrain.com/
+AGG_LICENSE = GPLv3+
+AGG_LICENSE_FILES = COPYING
+AGG_INSTALL_STAGING = YES
+AGG_AUTORECONF = YES
+
+AGG_DEPENDENCIES = host-pkgconf sdl
+
+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
+endif
+
+ifeq ($(BR2_PACKAGE_FREETYPE),y)
+AGG_DEPENDENCIES += freetype
+AGG_CONF_OPT += --enable-freetype
+else
+AGG_CONF_OPT += --disable-freetype
+endif
+
+define AGG_CREATE_MISSING_FILES
+	touch $(@D)/NEWS $(@D)/AUTHORS $(@D)/README
+# Fixes reconfiguring with recent automake:
+	$(SED) 's/AM_C_PROTOTYPES//' $(@D)/configure.in
+endef
+AGG_POST_EXTRACT_HOOKS += AGG_CREATE_MISSING_FILES
+
+$(eval $(autotools-package))
Signature · 1 line
1.7.5.4
#1 lore raw

PATCH 1/1 Add agg (Anti-Grain Geometry) package

Quoted 52 lines · julien.boibessot at free.fr

From: Julien Boibessot <[email protected]>

This library will be needed by gnash (soon coming Flash player).

---
 package/Config.in     |    1 +
 package/agg/Config.in |   13 +++++++++++++
 package/agg/agg.mk    |   40 ++++++++++++++++++++++++++++++++++++++++
 3 files changed, 54 insertions(+), 0 deletions(-)
 create mode 100644 package/agg/Config.in
 create mode 100644 package/agg/agg.mk
package/Config.in +1 -0
index 688ed4d..3b34a67 100644
@@ -556,6 +556,7 @@ source "package/lockdev/Config.in"
 endmenu
 
 menu "Graphics"
+source "package/agg/Config.in"
 source "package/atk/Config.in"
 source "package/cairo/Config.in"
 source "package/fltk/Config.in"
package/agg/Config.in new file +13 -0
new file mode 100644
index 0000000..a842098
@@ -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
+
+comment "agg needs a toolchain with C++ support"
+	depends on !BR2_INSTALL_LIBSTDCPP
package/agg/agg.mk new file +2 -0
new file mode 100644
index 0000000..05be931
@@ -0,0 +1,40 @@
+###############################################################################
+#

package/agg/agg.mk line 12

Quoted 10 lines
package/agg/agg.mk new file +10 -0
+# agg
+#
+###############################################################################
+
+AGG_VERSION = 2.5
+AGG_SITE = http://www.antigrain.com/
+AGG_LICENSE = GPLv3+
+AGG_LICENSE_FILES = COPYING
+AGG_INSTALL_STAGING = YES
+AGG_AUTORECONF = YES

Why is autoreconf needed? You take a release and don't have patches.

package/agg/agg.mk line 17

Quoted 5 lines
package/agg/agg.mk new file +5 -0
+
+AGG_DEPENDENCIES = host-pkgconf sdl
+
+AGG_CONF_OPT = \
+        --with-sdl-prefix=$(STAGING_DIR)/usr \

Is this option really needed? It should be the default location for sdl...

Quoted 11 lines
package/agg/agg.mk new file +11 -0
+        --disable-sdltest
+
+ifeq ($(BR2_PACKAGE_SDL_X11),)
+AGG_CONF_OPT += \
+	--with-x=NO \
+	--disable-examples # examples require X11
+endif
+
+ifeq ($(BR2_PACKAGE_FREETYPE),y)
+AGG_DEPENDENCIES += freetype
+AGG_CONF_OPT += --enable-freetype

package/agg/agg.mk line 38

Quoted 10 lines
package/agg/agg.mk new file +10 -0
+else
+AGG_CONF_OPT += --disable-freetype
+endif
+
+define AGG_CREATE_MISSING_FILES
+	touch $(@D)/NEWS $(@D)/AUTHORS $(@D)/README
+# Fixes reconfiguring with recent automake:
+	$(SED) 's/AM_C_PROTOTYPES//' $(@D)/configure.in
+endef
+AGG_POST_EXTRACT_HOOKS += AGG_CREATE_MISSING_FILES

If you don't autoreconf, this wouldn't be needed, right?

Regards,
Arnout

Quoted 3 lines
package/agg/agg.mk new file +2 -0
+
+$(eval $(autotools-package))
Signature · 6 lines
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
#2 lore raw

PATCH 1/1 Add agg (Anti-Grain Geometry) package

Hello Arnout,

thanks for the review.

Quoted 56 lines · Arnout Vandecappelle
Quoted 55 lines · julien.boibessot at free.fr

From: Julien Boibessot <[email protected]>

This library will be needed by gnash (soon coming Flash player).

---
 package/Config.in     |    1 +
 package/agg/Config.in |   13 +++++++++++++
 package/agg/agg.mk    |   40 ++++++++++++++++++++++++++++++++++++++++
 3 files changed, 54 insertions(+), 0 deletions(-)
 create mode 100644 package/agg/Config.in
 create mode 100644 package/agg/agg.mk
package/Config.in +1 -0
index 688ed4d..3b34a67 100644
@@ -556,6 +556,7 @@ source "package/lockdev/Config.in"
 endmenu
 
 menu "Graphics"
+source "package/agg/Config.in"
 source "package/atk/Config.in"
 source "package/cairo/Config.in"
 source "package/fltk/Config.in"
package/agg/Config.in new file +13 -0
new file mode 100644
index 0000000..a842098
@@ -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
+
+comment "agg needs a toolchain with C++ support"
+	depends on !BR2_INSTALL_LIBSTDCPP
package/agg/agg.mk new file +5 -0
new file mode 100644
index 0000000..05be931
@@ -0,0 +1,40 @@
+###############################################################################
+#
+# agg
+#
+###############################################################################
Quoted 8 lines

package/agg/agg.mk line 12

Quoted 7 lines
package/agg/agg.mk new file +7 -0
+
+AGG_VERSION = 2.5
+AGG_SITE = http://www.antigrain.com/
+AGG_LICENSE = GPLv3+
+AGG_LICENSE_FILES = COPYING
+AGG_INSTALL_STAGING = YES
+AGG_AUTORECONF = YES

Why is autoreconf needed? You take a release and don't have patches.

there is no "configure" in sources, so I thought it was the way to regenerate it.
Another way to do that ?

Quoted 7 lines

package/agg/agg.mk line 17

Quoted 6 lines
package/agg/agg.mk new file +5 -0
+
+AGG_DEPENDENCIES = host-pkgconf sdl
+
+AGG_CONF_OPT = \
+        --with-sdl-prefix=$(STAGING_DIR)/usr \

Is this option really needed? It should be the default location for sdl...

it seems mandatory, otherwise "configure" takes the Host installed SDL devt files in /usr/include/SDL/

Quoted 15 lines
Quoted 15 lines
package/agg/agg.mk new file +14 -0
+        --disable-sdltest
+
+ifeq ($(BR2_PACKAGE_SDL_X11),)
+AGG_CONF_OPT += \
+	--with-x=NO \
+	--disable-examples # examples require X11
+endif
+
+ifeq ($(BR2_PACKAGE_FREETYPE),y)
+AGG_DEPENDENCIES += freetype
+AGG_CONF_OPT += --enable-freetype
+else
+AGG_CONF_OPT += --disable-freetype
+endif
Quoted 8 lines

package/agg/agg.mk line 38

Quoted 7 lines
package/agg/agg.mk new file +7 -0
+
+define AGG_CREATE_MISSING_FILES
+	touch $(@D)/NEWS $(@D)/AUTHORS $(@D)/README
+# Fixes reconfiguring with recent automake:
+	$(SED) 's/AM_C_PROTOTYPES//' $(@D)/configure.in
+endef
+AGG_POST_EXTRACT_HOOKS += AGG_CREATE_MISSING_FILES

If you don't autoreconf, this wouldn't be needed, right?

maybe, but I don't know how to bypass autoreconf :-)
I could call agg's "autogen.sh" but Buildroot AUTORECONF is doing the same no ?

Regards,
Julien

#3 lore raw

PATCH 1/1 Add agg (Anti-Grain Geometry) package

Julien, All,

On 2014-03-30 18:23 +0200, Julien Boibessot spake thusly:

Quoted 66 lines · Arnout Vandecappelle
Quoted 56 lines · julien.boibessot at free.fr
Quoted 55 lines

From: Julien Boibessot <[email protected]>

This library will be needed by gnash (soon coming Flash player).

---
 package/Config.in     |    1 +
 package/agg/Config.in |   13 +++++++++++++
 package/agg/agg.mk    |   40 ++++++++++++++++++++++++++++++++++++++++
 3 files changed, 54 insertions(+), 0 deletions(-)
 create mode 100644 package/agg/Config.in
 create mode 100644 package/agg/agg.mk
package/Config.in +1 -0
index 688ed4d..3b34a67 100644
@@ -556,6 +556,7 @@ source "package/lockdev/Config.in"
 endmenu
 
 menu "Graphics"
+source "package/agg/Config.in"
 source "package/atk/Config.in"
 source "package/cairo/Config.in"
 source "package/fltk/Config.in"
package/agg/Config.in new file +13 -0
new file mode 100644
index 0000000..a842098
@@ -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
+
+comment "agg needs a toolchain with C++ support"
+	depends on !BR2_INSTALL_LIBSTDCPP
package/agg/agg.mk new file +5 -0
new file mode 100644
index 0000000..05be931
@@ -0,0 +1,40 @@
+###############################################################################
+#
+# agg
+#
+###############################################################################
Quoted 8 lines

package/agg/agg.mk line 12

Quoted 7 lines
package/agg/agg.mk new file +7 -0
+
+AGG_VERSION = 2.5
+AGG_SITE = http://www.antigrain.com/
+AGG_LICENSE = GPLv3+
+AGG_LICENSE_FILES = COPYING
+AGG_INSTALL_STAGING = YES
+AGG_AUTORECONF = YES

Why is autoreconf needed? You take a release and don't have patches.

Quoted 3 lines

there is no "configure" in sources, so I thought it was the way to regenerate it.
Another way to do that ?

No, that's the correct way. However, just state so in a comment, like:

# No ./configure in the sources, we need to generate it:
AGG_AUTORECONF = YES

Quoted 8 lines
Quoted 5 lines

package/agg/agg.mk line 17

Quoted 4 lines
package/agg/agg.mk new file +4 -0
+AGG_DEPENDENCIES = host-pkgconf sdl
+
+AGG_CONF_OPT = \
+        --with-sdl-prefix=$(STAGING_DIR)/usr \

Is this option really needed? It should be the default location for sdl...

it seems mandatory, otherwise "configure" takes the Host installed SDL devt files in /usr/include/SDL/

Ditto, say so in a comment just above.

Quoted 23 lines
Quoted 14 lines
Quoted 14 lines
package/agg/agg.mk new file +14 -0
+        --disable-sdltest
+
+ifeq ($(BR2_PACKAGE_SDL_X11),)
+AGG_CONF_OPT += \
+	--with-x=NO \
+	--disable-examples # examples require X11
+endif
+
+ifeq ($(BR2_PACKAGE_FREETYPE),y)
+AGG_DEPENDENCIES += freetype
+AGG_CONF_OPT += --enable-freetype
+else
+AGG_CONF_OPT += --disable-freetype
+endif
Quoted 8 lines

package/agg/agg.mk line 38

Quoted 7 lines
package/agg/agg.mk new file +7 -0
+
+define AGG_CREATE_MISSING_FILES
+	touch $(@D)/NEWS $(@D)/AUTHORS $(@D)/README
+# Fixes reconfiguring with recent automake:
+	$(SED) 's/AM_C_PROTOTYPES//' $(@D)/configure.in
+endef
+AGG_POST_EXTRACT_HOOKS += AGG_CREATE_MISSING_FILES

If you don't autoreconf, this wouldn't be needed, right?

Quoted 3 lines

maybe, but I don't know how to bypass autoreconf :-)
I could call agg's "autogen.sh" but Buildroot AUTORECONF is doing the same no ?

In fact, there is a better way yet: add a patch to configure or Makefile.am that adds the 'foreign' option to automake, which tells the autotools that those files are not needed. Similar to what is done for libfcgi (search for 'foreign'):
package/libfcgi/libfcgi-make-autoreconfable.patch

With foreign, those files are not needed, so you can just use AGG_AUTORECONF = YES without the need to create the files.

And then, push that patch upstream, if possible. ;-)

Regards,
Yann E. MORIN.

Signature · 6 lines
.-----------------.--------------------.------------------.--------------------.
|  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.  |
'------------------------------^-------^------------------^--------------------'
#4 lore raw

PATCH 1/1 Add agg (Anti-Grain Geometry) package

In reply to julien.boibessot at free.fr

Julien, All,

On 2014-03-21 15:12 +0100, julien.boibessot at free.fr spake thusly:

Quoted 1 line

From: Julien Boibessot <[email protected]>

[--SNIP--]

Quoted 6 lines
package/agg/agg.mk new file +0 -0
new file mode 100644
index 0000000..05be931

package/agg/agg.mk line 10

Quoted 10 lines
package/agg/agg.mk new file +10 -0
@@ -0,0 +1,40 @@
+###############################################################################
+#
+# agg
+#
+###############################################################################
+
+AGG_VERSION = 2.5
+AGG_SITE = http://www.antigrain.com/
+AGG_LICENSE = GPLv3+
+AGG_LICENSE_FILES = COPYING

The file is named 'copying', all in lower-case, and contains the text of the GPLv2, not the v3.

Besides, all the files I looked at refer to the GPLv2 with the 'or later' clause.

Some files seem to be MIT-like, eg. gpc/gpc.c

Regards,
Yann E. MORIN.

Signature · 6 lines
.-----------------.--------------------.------------------.--------------------.
|  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.  |
'------------------------------^-------^------------------^--------------------'
#5 lore raw

PATCH 1/1 Add agg (Anti-Grain Geometry) package

In reply to julien.boibessot at free.fr

Hello,

Quoted 5 lines · julien.boibessot at free.fr

From: Julien Boibessot <[email protected]>

This library will be needed by gnash (soon coming Flash player).

I wanted to apply this patch, after taking into account the comments of the reviewers, but the agg web site is down, so I can't fetch the source code for it.

Can you take care of taking into account the comments of the reviewers? It would be good if you could resubmit a bit faster when comments are made, so that we can quickly converge to a patch that can be integrated, instead of having it sit for weeks in patchwork.

Also, can you change the title of the commit to be "agg: new package", like we do for all other package additions?

Thanks a lot!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#6 lore raw

PATCH 1/1 Add agg (Anti-Grain Geometry) package

Hello,

Thomas,

Quoted 12 lines · Thomas Petazzoni

Hello,

Quoted 5 lines · julien.boibessot at free.fr

From: Julien Boibessot <[email protected]>

This library will be needed by gnash (soon coming Flash player).

I wanted to apply this patch, after taking into account the comments of the reviewers, but the agg web site is down, so I can't fetch the source code for it.

Quoted 7 lines

Can you take care of taking into account the comments of the reviewers? It would be good if you could resubmit a bit faster when comments are made, so that we can quickly converge to a patch that can be integrated, instead of having it sit for weeks in patchwork.

Also, can you change the title of the commit to be "agg: new package", like we do for all other package additions?

Sorry, I was on holiday :-)
Will do it ASAP !

Regards,
Julien