initial buildroot for linux 5.15
This commit is contained in:
@@ -0,0 +1,125 @@
|
||||
svntiny: svntiny_gradient.c: only print debugging if GRADIENT_DEBUG is enabled
|
||||
|
||||
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
|
||||
---
|
||||
src/svgtiny_gradient.c | 23 ++++++++++++++++++++++-
|
||||
1 file changed, 22 insertions(+), 1 deletion(-)
|
||||
|
||||
Index: libsvgtiny/src/svgtiny_gradient.c
|
||||
===================================================================
|
||||
--- libsvgtiny.orig/src/svgtiny_gradient.c
|
||||
+++ libsvgtiny/src/svgtiny_gradient.c
|
||||
@@ -30,8 +30,9 @@ void svgtiny_find_gradient(const char *i
|
||||
{
|
||||
xmlNode *gradient;
|
||||
|
||||
+#ifdef GRADIENT_DEBUG
|
||||
fprintf(stderr, "svgtiny_find_gradient: id \"%s\"\n", id);
|
||||
-
|
||||
+#endif
|
||||
state->linear_gradient_stop_count = 0;
|
||||
state->gradient_x1 = "0%";
|
||||
state->gradient_y1 = "0%";
|
||||
@@ -47,13 +48,17 @@ void svgtiny_find_gradient(const char *i
|
||||
|
||||
gradient = svgtiny_find_element_by_id(
|
||||
(xmlNode *) state->document, id);
|
||||
+#ifdef GRADIENT_DEBUG
|
||||
fprintf(stderr, "gradient %p\n", (void *) gradient);
|
||||
+#endif
|
||||
if (!gradient) {
|
||||
fprintf(stderr, "gradient \"%s\" not found\n", id);
|
||||
return;
|
||||
}
|
||||
|
||||
+#ifdef GRADIENT_DEBUG
|
||||
fprintf(stderr, "gradient name \"%s\"\n", gradient->name);
|
||||
+#endif
|
||||
if (strcmp((const char *) gradient->name, "linearGradient") == 0) {
|
||||
svgtiny_parse_linear_gradient(gradient, state);
|
||||
}
|
||||
@@ -98,8 +103,10 @@ svgtiny_code svgtiny_parse_linear_gradie
|
||||
return svgtiny_OUT_OF_MEMORY;
|
||||
svgtiny_parse_transform(s, &a, &b, &c, &d, &e, &f);
|
||||
free(s);
|
||||
+#ifdef GRADIENT_DEBUG
|
||||
fprintf(stderr, "transform %g %g %g %g %g %g\n",
|
||||
a, b, c, d, e, f);
|
||||
+#endif
|
||||
state->gradient_transform.a = a;
|
||||
state->gradient_transform.b = b;
|
||||
state->gradient_transform.c = c;
|
||||
@@ -143,7 +150,9 @@ svgtiny_code svgtiny_parse_linear_gradie
|
||||
}
|
||||
|
||||
if (offset != -1 && color != svgtiny_TRANSPARENT) {
|
||||
+#ifdef GRADIENT_DEBUG
|
||||
fprintf(stderr, "stop %g %x\n", offset, color);
|
||||
+#endif
|
||||
state->gradient_stop[i].offset = offset;
|
||||
state->gradient_stop[i].color = color;
|
||||
i++;
|
||||
@@ -220,9 +229,11 @@ svgtiny_code svgtiny_add_path_linear_gra
|
||||
#endif
|
||||
|
||||
/* compute gradient vector */
|
||||
+#ifdef GRADIENT_DEBUG
|
||||
fprintf(stderr, "x1 %s, y1 %s, x2 %s, y2 %s\n",
|
||||
state->gradient_x1, state->gradient_y1,
|
||||
state->gradient_x2, state->gradient_y2);
|
||||
+#endif
|
||||
if (!state->gradient_user_space_on_use) {
|
||||
gradient_x0 = object_x0 +
|
||||
svgtiny_parse_length(state->gradient_x1,
|
||||
@@ -297,9 +308,11 @@ svgtiny_code svgtiny_add_path_linear_gra
|
||||
|
||||
/* invert gradient transform for applying to vertices */
|
||||
svgtiny_invert_matrix(&state->gradient_transform.a, trans);
|
||||
+#ifdef GRADIENT_DEBUG
|
||||
fprintf(stderr, "inverse transform %g %g %g %g %g %g\n",
|
||||
trans[0], trans[1], trans[2], trans[3],
|
||||
trans[4], trans[5]);
|
||||
+#endif
|
||||
|
||||
/* compute points on the path for triangle vertices */
|
||||
/* r, r0, r1 are distance along gradient vector */
|
||||
@@ -372,8 +385,10 @@ svgtiny_code svgtiny_add_path_linear_gra
|
||||
steps = ceilf(fabsf(r1 - r0) / 0.05);
|
||||
if (steps == 0)
|
||||
steps = 1;
|
||||
+#ifdef GRADIENT_DEBUG
|
||||
fprintf(stderr, "r0 %g, r1 %g, steps %i\n",
|
||||
r0, r1, steps);
|
||||
+#endif
|
||||
|
||||
/* loop through intermediate points */
|
||||
for (z = 1; z != steps; z++) {
|
||||
@@ -398,7 +413,9 @@ svgtiny_code svgtiny_add_path_linear_gra
|
||||
r = ((x_trans - gradient_x0) * gradient_dx +
|
||||
(y_trans - gradient_y0) * gradient_dy) /
|
||||
gradient_norm_squared;
|
||||
+#ifdef GRADIENT_DEBUG
|
||||
fprintf(stderr, "(%g %g [%g]) ", x, y, r);
|
||||
+#endif
|
||||
point = svgtiny_list_push(pts);
|
||||
if (!point) {
|
||||
svgtiny_list_free(pts);
|
||||
@@ -412,14 +429,18 @@ svgtiny_code svgtiny_add_path_linear_gra
|
||||
min_pt = svgtiny_list_size(pts) - 1;
|
||||
}
|
||||
}
|
||||
+#ifdef GRADIENT_DEBUG
|
||||
fprintf(stderr, "\n");
|
||||
+#endif
|
||||
|
||||
/* next segment start point is this segment end point */
|
||||
x0 = x1;
|
||||
y0 = y1;
|
||||
}
|
||||
+#ifdef GRADIENT_DEBUG
|
||||
fprintf(stderr, "pts size %i, min_pt %i, min_r %.3f\n",
|
||||
svgtiny_list_size(pts), min_pt, min_r);
|
||||
+#endif
|
||||
|
||||
/* render triangles */
|
||||
stop_count = state->linear_gradient_stop_count;
|
||||
@@ -0,0 +1,44 @@
|
||||
Remove -Werror from Makefile
|
||||
|
||||
glibc-2.20 includes some changes to the include/features.h file
|
||||
introduced by this commit:
|
||||
|
||||
https://sourceware.org/git/?p=glibc.git;a=commit;h=ade40b10ff5fa59a318cf55b9d8414b758e8df78
|
||||
|
||||
Those changes make libsvgtiny fail because some warnings are thrown and
|
||||
the build system is using the -Werror option. We disable this to be able
|
||||
to build it, or otherwise we will see errors like this one:
|
||||
|
||||
GPERF: src/colors.gperf
|
||||
COMPILE: build-Linux-Linux-release-lib-static/src_colors.c
|
||||
In file included from
|
||||
/br/output/host/usr/mipsel-buildroot-linux-gnu/sysroot/usr/include/string.h:25:0,
|
||||
from src/colors.gperf:16:
|
||||
/br/output/host/usr/mipsel-buildroot-linux-gnu/sysroot/usr/include/features.h:148:3:
|
||||
error: #warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use
|
||||
_DEFAULT_SOURCE" [-Werror=cpp]
|
||||
|
||||
and this one:
|
||||
|
||||
In file included from src/colors.gperf:18:0:
|
||||
/home/ldap/vriera/work/mips-buildroots/mips32/output/build/libsvgtiny-12121/src/svgtiny_internal.h:71:0:
|
||||
error: "strndup" redefined [-Werror]
|
||||
|
||||
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
|
||||
|
||||
diff -rup a/Makefile b/Makefile
|
||||
--- a/Makefile 2010-01-03 23:37:39.000000000 +0000
|
||||
+++ b/Makefile 2014-12-11 11:35:37.241903884 +0000
|
||||
@@ -13,12 +13,6 @@ TESTRUNNER := $(ECHO)
|
||||
WARNFLAGS := -Wall -W -Wundef -Wpointer-arith -Wcast-align \
|
||||
-Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes \
|
||||
-Wmissing-declarations -Wnested-externs -pedantic
|
||||
-# BeOS/Haiku/AmigaOS4 standard library headers create warnings
|
||||
-ifneq ($(TARGET),beos)
|
||||
- ifneq ($(TARGET),AmigaOS)
|
||||
- WARNFLAGS := $(WARNFLAGS) -Werror
|
||||
- endif
|
||||
-endif
|
||||
CFLAGS := -D_BSD_SOURCE -I$(CURDIR)/include/ \
|
||||
-I$(CURDIR)/src $(WARNFLAGS) $(CFLAGS)
|
||||
ifneq ($(GCCVER),2)
|
||||
+36
@@ -0,0 +1,36 @@
|
||||
From 21b4836ac9d6c6725590a925daa5d17eda9843e9 Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Silverstone <dsilvers@digital-scurf.org>
|
||||
Date: Sat, 26 Apr 2014 16:24:54 +0100
|
||||
Subject: Hopefully silence warnings about inlines and non inlines calling one
|
||||
another.
|
||||
|
||||
[Retrieved from:
|
||||
https://source.netsurf-browser.org/libsvgtiny.git/commit/src?id=21b4836ac9d6c6725590a925daa5d17eda9843e9]
|
||||
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
||||
---
|
||||
src/colors.gperf | 9 +++++++++
|
||||
1 file changed, 9 insertions(+)
|
||||
|
||||
diff --git a/src/colors.gperf b/src/colors.gperf
|
||||
index 89152d2..96d5b9e 100644
|
||||
--- a/src/colors.gperf
|
||||
+++ b/src/colors.gperf
|
||||
@@ -16,6 +16,15 @@
|
||||
#include <string.h>
|
||||
#include "svgtiny.h"
|
||||
#include "svgtiny_internal.h"
|
||||
+
|
||||
+/* This unusual define shennanigan is to try and prevent the gperf
|
||||
+ * generated function from being inlined. This is pointless given
|
||||
+ * it (a) is in a separate .c file and (b) has external linkage.
|
||||
+ */
|
||||
+#ifdef __inline
|
||||
+#undef __inline
|
||||
+#define __inline
|
||||
+#endif
|
||||
%}
|
||||
|
||||
struct svgtiny_named_color;
|
||||
--
|
||||
cgit v1.2.1
|
||||
|
||||
@@ -0,0 +1,97 @@
|
||||
From 4390f1c84e8fee51fc22468821e6fc158e783053 Mon Sep 17 00:00:00 2001
|
||||
From: Michael Drake <michael.drake@codethink.co.uk>
|
||||
Date: Thu, 20 Apr 2017 10:51:07 +0100
|
||||
Subject: Build: Include gperf-generated code directly.
|
||||
|
||||
Previously we built the generated code separatly and then linked to
|
||||
it. However, this caused problems with certain compilers and gperf
|
||||
versions. This change includes the generated code directly in
|
||||
svgtiny.c instead, which is the only place its used.
|
||||
|
||||
[Retrieved from:
|
||||
https://source.netsurf-browser.org/libsvgtiny.git/commit/src?id=4390f1c84e8fee51fc22468821e6fc158e783053]
|
||||
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
||||
---
|
||||
src/Makefile | 13 +++++++------
|
||||
src/colors.gperf | 8 --------
|
||||
src/svgtiny.c | 3 +++
|
||||
src/svgtiny_internal.h | 5 -----
|
||||
4 files changed, 10 insertions(+), 19 deletions(-)
|
||||
|
||||
(limited to 'src')
|
||||
|
||||
diff --git a/src/Makefile b/src/Makefile
|
||||
index a979720..fb8a72f 100644
|
||||
--- a/src/Makefile
|
||||
+++ b/src/Makefile
|
||||
@@ -1,13 +1,14 @@
|
||||
# Sources
|
||||
DIR_SOURCES := svgtiny.c svgtiny_gradient.c svgtiny_list.c
|
||||
|
||||
-SOURCES := $(SOURCES) $(BUILDDIR)/src_colors.c
|
||||
+SOURCES := $(SOURCES)
|
||||
|
||||
-$(BUILDDIR)/src_colors.c: src/colors.gperf
|
||||
+$(DIR)autogenerated_colors.c: src/colors.gperf
|
||||
$(VQ)$(ECHO) " GPERF: $<"
|
||||
- $(Q)gperf --output-file=$@.tmp $<
|
||||
-# Hack for GCC 4.2 compatibility (gperf 3.0.4 solves this properly)
|
||||
- $(Q)$(SED) -e 's/#ifdef __GNUC_STDC_INLINE__/#if defined __GNUC_STDC_INLINE__ || defined __GNUC_GNU_INLINE__/' $@.tmp >$@
|
||||
- $(Q)$(RM) $@.tmp
|
||||
+ $(Q)gperf --output-file=$@ $<
|
||||
+
|
||||
+PRE_TARGETS := $(DIR)autogenerated_colors.c
|
||||
+
|
||||
+CLEAN_ITEMS := $(DIR)autogenerated_colors.c
|
||||
|
||||
include $(NSBUILD)/Makefile.subdir
|
||||
diff --git a/src/colors.gperf b/src/colors.gperf
|
||||
index 96d5b9e..a836787 100644
|
||||
--- a/src/colors.gperf
|
||||
+++ b/src/colors.gperf
|
||||
@@ -17,14 +17,6 @@
|
||||
#include "svgtiny.h"
|
||||
#include "svgtiny_internal.h"
|
||||
|
||||
-/* This unusual define shennanigan is to try and prevent the gperf
|
||||
- * generated function from being inlined. This is pointless given
|
||||
- * it (a) is in a separate .c file and (b) has external linkage.
|
||||
- */
|
||||
-#ifdef __inline
|
||||
-#undef __inline
|
||||
-#define __inline
|
||||
-#endif
|
||||
%}
|
||||
|
||||
struct svgtiny_named_color;
|
||||
diff --git a/src/svgtiny.c b/src/svgtiny.c
|
||||
index 4661a58..bbefb88 100644
|
||||
--- a/src/svgtiny.c
|
||||
+++ b/src/svgtiny.c
|
||||
@@ -20,6 +20,9 @@
|
||||
#include "svgtiny.h"
|
||||
#include "svgtiny_internal.h"
|
||||
|
||||
+/* Source file generated by `gperf`. */
|
||||
+#include "autogenerated_colors.c"
|
||||
+
|
||||
#ifndef M_PI
|
||||
#define M_PI 3.14159265358979323846
|
||||
#endif
|
||||
diff --git a/src/svgtiny_internal.h b/src/svgtiny_internal.h
|
||||
index 158d230..6bf5d64 100644
|
||||
--- a/src/svgtiny_internal.h
|
||||
+++ b/src/svgtiny_internal.h
|
||||
@@ -102,9 +102,4 @@ void *svgtiny_list_get(struct svgtiny_list *list,
|
||||
void *svgtiny_list_push(struct svgtiny_list *list);
|
||||
void svgtiny_list_free(struct svgtiny_list *list);
|
||||
|
||||
-/* colors.gperf */
|
||||
-const struct svgtiny_named_color *
|
||||
- svgtiny_color_lookup(register const char *str,
|
||||
- register unsigned int len);
|
||||
-
|
||||
#endif
|
||||
--
|
||||
cgit v1.2.1
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
config BR2_PACKAGE_LIBSVGTINY
|
||||
bool "libsvgtiny"
|
||||
select BR2_PACKAGE_LIBXML2
|
||||
help
|
||||
Libsvgtiny is an implementation of SVG Tiny, written in C.
|
||||
It is currently in development for use with NetSurf and is
|
||||
intended to be suitable for use in other projects too.
|
||||
|
||||
http://www.netsurf-browser.org/projects/libsvgtiny/
|
||||
@@ -0,0 +1,3 @@
|
||||
# Locally computed
|
||||
sha256 917850350d014c953f2af0fb92f0eeb25652619710922d467c98f8109fb92baf libsvgtiny-ea9d99fc8b231c22d06168135e181d61f4eb2f06-br1.tar.gz
|
||||
sha256 92b965c77be71661cae51425a6b40a5ca274f44cc13c723c90fb471a9a26a828 README
|
||||
@@ -0,0 +1,47 @@
|
||||
################################################################################
|
||||
#
|
||||
# libsvgtiny
|
||||
#
|
||||
################################################################################
|
||||
|
||||
LIBSVGTINY_SITE = http://git.netsurf-browser.org/libsvgtiny.git
|
||||
LIBSVGTINY_SITE_METHOD = git
|
||||
LIBSVGTINY_VERSION = ea9d99fc8b231c22d06168135e181d61f4eb2f06
|
||||
LIBSVGTINY_INSTALL_STAGING = YES
|
||||
LIBSVGTINY_DEPENDENCIES = \
|
||||
libxml2 host-gperf host-pkgconf host-netsurf-buildsystem
|
||||
LIBSVGTINY_LICENSE = MIT
|
||||
LIBSVGTINY_LICENSE_FILES = README
|
||||
|
||||
# The libsvgtiny build system cannot build both the shared and static
|
||||
# libraries. So when the Buildroot configuration requests to build
|
||||
# both the shared and static variants, we build only the shared one.
|
||||
ifeq ($(BR2_SHARED_LIBS)$(BR2_SHARED_STATIC_LIBS),y)
|
||||
LIBSVGTINY_COMPONENT_TYPE = lib-shared
|
||||
else
|
||||
LIBSVGTINY_COMPONENT_TYPE = lib-static
|
||||
endif
|
||||
|
||||
define LIBSVGTINY_CONFIGURE_CMDS
|
||||
ln -sf $(HOST_DIR)/share/netsurf-buildsystem $(@D)/build
|
||||
endef
|
||||
|
||||
# Use $(MAKE1) since parallel build fails
|
||||
define LIBSVGTINY_BUILD_CMDS
|
||||
$(TARGET_CONFIGURE_OPTS) $(MAKE1) -C $(@D) PREFIX=/usr \
|
||||
COMPONENT_TYPE=$(LIBSVGTINY_COMPONENT_TYPE)
|
||||
endef
|
||||
|
||||
define LIBSVGTINY_INSTALL_STAGING_CMDS
|
||||
$(TARGET_CONFIGURE_OPTS) \
|
||||
$(MAKE1) -C $(@D) PREFIX=/usr DESTDIR=$(STAGING_DIR) \
|
||||
COMPONENT_TYPE=$(LIBSVGTINY_COMPONENT_TYPE) install
|
||||
endef
|
||||
|
||||
define LIBSVGTINY_INSTALL_TARGET_CMDS
|
||||
$(TARGET_CONFIGURE_OPTS) \
|
||||
$(MAKE1) -C $(@D) PREFIX=/usr DESTDIR=$(TARGET_DIR) \
|
||||
COMPONENT_TYPE=$(LIBSVGTINY_COMPONENT_TYPE) install
|
||||
endef
|
||||
|
||||
$(eval $(generic-package))
|
||||
Reference in New Issue
Block a user