From 77cf4b81eea7bae561a491611f0ecc13a06a1257 Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Thu, 31 Oct 2024 14:41:06 +0100 Subject: colord-native: rename directory and drop unnecessary FILESEXTRAPATHS * ${BPN}-native is weird work around for ${P} and ${PN} being dropped from default FILESPATH in 2012 with: https://git.openembedded.org/openembedded-core/commit/?h=dylan&id=fb359583b659cda643973fa285002aaffb729a51 better to just rename directory to something which is included in the default value (like BPN) the filename are different in target and native colord build so they don't need to be in separate directories. Signed-off-by: Martin Jansa Signed-off-by: Khem Raj --- meta-oe/recipes-support/colord/colord-native.bb | 2 - ...nction-cd_icc_create_from_edid-to-avoid-u.patch | 163 --------------------- .../recipes-support/colord/colord-native/Makefile | 48 ------ ...nction-cd_icc_create_from_edid-to-avoid-u.patch | 163 +++++++++++++++++++++ meta-oe/recipes-support/colord/colord/Makefile | 48 ++++++ 5 files changed, 211 insertions(+), 213 deletions(-) delete mode 100644 meta-oe/recipes-support/colord/colord-native/0001-Move-the-function-cd_icc_create_from_edid-to-avoid-u.patch delete mode 100644 meta-oe/recipes-support/colord/colord-native/Makefile create mode 100644 meta-oe/recipes-support/colord/colord/0001-Move-the-function-cd_icc_create_from_edid-to-avoid-u.patch create mode 100644 meta-oe/recipes-support/colord/colord/Makefile diff --git a/meta-oe/recipes-support/colord/colord-native.bb b/meta-oe/recipes-support/colord/colord-native.bb index 64dd94a9ed..2c79be4957 100644 --- a/meta-oe/recipes-support/colord/colord-native.bb +++ b/meta-oe/recipes-support/colord/colord-native.bb @@ -1,7 +1,5 @@ require ${BPN}.inc -FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}-native:" - inherit meson pkgconfig native DEPENDS += " \ diff --git a/meta-oe/recipes-support/colord/colord-native/0001-Move-the-function-cd_icc_create_from_edid-to-avoid-u.patch b/meta-oe/recipes-support/colord/colord-native/0001-Move-the-function-cd_icc_create_from_edid-to-avoid-u.patch deleted file mode 100644 index a120b73114..0000000000 --- a/meta-oe/recipes-support/colord/colord-native/0001-Move-the-function-cd_icc_create_from_edid-to-avoid-u.patch +++ /dev/null @@ -1,163 +0,0 @@ -From d16aed3118bee1e0a7d0bc9e0f34c427a405a6d8 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Andreas=20M=C3=BCller?= -Date: Sun, 12 May 2019 21:58:02 +0200 -Subject: [PATCH] Move the function cd_icc_create_from_edid to avoid udev - dependeny -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -We do not have udev-native so it is a dependeny we cannot satisfy - -Upstream-Status: Inappropriate [OE specific] - -Signed-off-by: Andreas Müller ---- - lib/colord/cd-edid.c | 63 ++++++++++++++++++++++++++++++++++++++++++++ - lib/colord/cd-icc.c | 62 ------------------------------------------- - 2 files changed, 63 insertions(+), 62 deletions(-) - -diff --git a/lib/colord/cd-edid.c b/lib/colord/cd-edid.c -index a5e2328..dec509a 100644 ---- a/lib/colord/cd-edid.c -+++ b/lib/colord/cd-edid.c -@@ -687,3 +687,66 @@ cd_edid_new (void) - edid = g_object_new (CD_TYPE_EDID, NULL); - return CD_EDID (edid); - } -+ -+/** -+ * cd_icc_create_from_edid_data: -+ * @icc: A valid #CdIcc -+ * @edid: EDID data -+ * @error: A #GError, or %NULL -+ * -+ * Creates an ICC profile from EDID data. -+ * -+ * Return value: %TRUE for success -+ * -+ * Since: 1.1.2 -+ **/ -+gboolean -+cd_icc_create_from_edid_data (CdIcc *icc, CdEdid *edid, GError **error) -+{ -+ CdIccPrivate *priv = GET_PRIVATE (icc); -+ const gchar *data; -+ -+ /* not loaded */ -+ if (priv->lcms_profile != NULL) { -+ g_set_error_literal (error, -+ CD_ICC_ERROR, -+ CD_ICC_ERROR_FAILED_TO_CREATE, -+ "already loaded or generated"); -+ return FALSE; -+ } -+ -+ /* create from parsed object */ -+ if (!cd_icc_create_from_edid (icc, -+ cd_edid_get_gamma (edid), -+ cd_edid_get_red (edid), -+ cd_edid_get_green (edid), -+ cd_edid_get_blue (edid), -+ cd_edid_get_white (edid), -+ error)) { -+ return FALSE; -+ } -+ -+ /* set copyright */ -+ cd_icc_set_copyright (icc, NULL, -+ /* deliberately not translated */ -+ "This profile is free of known copyright restrictions."); -+ -+ /* set 'ICC meta Tag for Monitor Profiles' data */ -+ data = cd_edid_get_checksum (edid); -+ if (data != NULL) -+ cd_icc_add_metadata (icc, CD_PROFILE_METADATA_EDID_MD5, data); -+ data = cd_edid_get_monitor_name (edid); -+ if (data != NULL) -+ cd_icc_add_metadata (icc, CD_PROFILE_METADATA_EDID_MODEL, data); -+ data = cd_edid_get_serial_number (edid); -+ if (data != NULL) -+ cd_icc_add_metadata (icc, CD_PROFILE_METADATA_EDID_SERIAL, data); -+ data = cd_edid_get_pnp_id (edid); -+ if (data != NULL) -+ cd_icc_add_metadata (icc, CD_PROFILE_METADATA_EDID_MNFT, data); -+ data = cd_edid_get_vendor_name (edid); -+ if (data != NULL) -+ cd_icc_add_metadata (icc, CD_PROFILE_METADATA_EDID_VENDOR, data); -+ return TRUE; -+} -+ -diff --git a/lib/colord/cd-icc.c b/lib/colord/cd-icc.c -index 3937d8a..daf6f4d 100644 ---- a/lib/colord/cd-icc.c -+++ b/lib/colord/cd-icc.c -@@ -3117,68 +3117,6 @@ cd_icc_create_default (CdIcc *icc, GError **error) - return cd_icc_create_default_full (icc, CD_ICC_LOAD_FLAGS_NONE, error); - } - --/** -- * cd_icc_create_from_edid_data: -- * @icc: A valid #CdIcc -- * @edid: EDID data -- * @error: A #GError, or %NULL -- * -- * Creates an ICC profile from EDID data. -- * -- * Return value: %TRUE for success -- * -- * Since: 1.1.2 -- **/ --gboolean --cd_icc_create_from_edid_data (CdIcc *icc, CdEdid *edid, GError **error) --{ -- CdIccPrivate *priv = GET_PRIVATE (icc); -- const gchar *data; -- -- /* not loaded */ -- if (priv->lcms_profile != NULL) { -- g_set_error_literal (error, -- CD_ICC_ERROR, -- CD_ICC_ERROR_FAILED_TO_CREATE, -- "already loaded or generated"); -- return FALSE; -- } -- -- /* create from parsed object */ -- if (!cd_icc_create_from_edid (icc, -- cd_edid_get_gamma (edid), -- cd_edid_get_red (edid), -- cd_edid_get_green (edid), -- cd_edid_get_blue (edid), -- cd_edid_get_white (edid), -- error)) { -- return FALSE; -- } -- -- /* set copyright */ -- cd_icc_set_copyright (icc, NULL, -- /* deliberately not translated */ -- "This profile is free of known copyright restrictions."); -- -- /* set 'ICC meta Tag for Monitor Profiles' data */ -- data = cd_edid_get_checksum (edid); -- if (data != NULL) -- cd_icc_add_metadata (icc, CD_PROFILE_METADATA_EDID_MD5, data); -- data = cd_edid_get_monitor_name (edid); -- if (data != NULL) -- cd_icc_add_metadata (icc, CD_PROFILE_METADATA_EDID_MODEL, data); -- data = cd_edid_get_serial_number (edid); -- if (data != NULL) -- cd_icc_add_metadata (icc, CD_PROFILE_METADATA_EDID_SERIAL, data); -- data = cd_edid_get_pnp_id (edid); -- if (data != NULL) -- cd_icc_add_metadata (icc, CD_PROFILE_METADATA_EDID_MNFT, data); -- data = cd_edid_get_vendor_name (edid); -- if (data != NULL) -- cd_icc_add_metadata (icc, CD_PROFILE_METADATA_EDID_VENDOR, data); -- return TRUE; --} -- - /** - * cd_icc_create_from_edid: - * @icc: A valid #CdIcc diff --git a/meta-oe/recipes-support/colord/colord-native/Makefile b/meta-oe/recipes-support/colord/colord-native/Makefile deleted file mode 100644 index 1e29e4f670..0000000000 --- a/meta-oe/recipes-support/colord/colord-native/Makefile +++ /dev/null @@ -1,48 +0,0 @@ -# For native build cd_idt8, cd_create_profile and a tiny version of libcolord.so -# only. By reducing the library to what's necessary, we avoid dependencies on -# naitve udev and libgudev - -CFLAGS+=$(shell pkg-config-native --cflags gio-2.0) -CFLAGS+=$(shell pkg-config-native --cflags lcms2) -CFLAGS+=-std=c99 -I./lib -I./lib/colord -I$(DESTDIR) -DCD_COMPILATION - -LDFLAGS+=$(shell pkg-config-native --libs gio-2.0) -LDFLAGS+=$(shell pkg-config-native --libs lcms2) -LDFLAGS+=-lm - -all: cd_idt8 cd_create_profile - -LIBSOURCES = \ - lib/colord/cd-it8.c \ - lib/colord/cd-color.c \ - lib/colord/cd-spectrum.c \ - lib/colord/cd-math.c \ - lib/colord/cd-interp-akima.c \ - lib/colord/cd-context-lcms.c \ - lib/colord/cd-interp.c \ - lib/colord/cd-interp-linear.c \ - lib/colord/cd-it8-utils.c \ - lib/colord/cd-enum.c \ - lib/colord/cd-icc.c \ - lib/colord/cd-icc-utils.c \ - lib/colord/cd-dom.c - -libcolord.so: $(LIBSOURCES) - $(CC) $(CFLAGS) -L$(DESTDIR) -fPIC -shared -Wl,-soname,$@ $^ -o $(DESTDIR)/$@ $(LDFLAGS) - -cd_idt8.o: client/cd-it8.c - $(CC) $(CFLAGS) -c $^ -o $(DESTDIR)/$@ - -cd_idt8: libcolord.so cd_idt8.o - $(CC) $(DESTDIR)/cd_idt8.o -o $(DESTDIR)/$@ -L$(DESTDIR) -lcolord $(LDFLAGS) - -cd_create_profile.o: client/cd-create-profile.c - $(CC) $(CFLAGS) -c $^ -o $(DESTDIR)/$@ - -cd_create_profile: libcolord.so cd_create_profile.o - $(CC) $(DESTDIR)/cd_create_profile.o -o $(DESTDIR)/$@ -L$(DESTDIR) -lcolord $(LDFLAGS) - -.PHONY: clean - -clean: - rm -f $(DESTDIR)/libcolord.so $(DESTDIR)/*.o $(DESTDIR)/cd_idt8 $(DESTDIR)/cd_create_profile diff --git a/meta-oe/recipes-support/colord/colord/0001-Move-the-function-cd_icc_create_from_edid-to-avoid-u.patch b/meta-oe/recipes-support/colord/colord/0001-Move-the-function-cd_icc_create_from_edid-to-avoid-u.patch new file mode 100644 index 0000000000..a120b73114 --- /dev/null +++ b/meta-oe/recipes-support/colord/colord/0001-Move-the-function-cd_icc_create_from_edid-to-avoid-u.patch @@ -0,0 +1,163 @@ +From d16aed3118bee1e0a7d0bc9e0f34c427a405a6d8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andreas=20M=C3=BCller?= +Date: Sun, 12 May 2019 21:58:02 +0200 +Subject: [PATCH] Move the function cd_icc_create_from_edid to avoid udev + dependeny +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +We do not have udev-native so it is a dependeny we cannot satisfy + +Upstream-Status: Inappropriate [OE specific] + +Signed-off-by: Andreas Müller +--- + lib/colord/cd-edid.c | 63 ++++++++++++++++++++++++++++++++++++++++++++ + lib/colord/cd-icc.c | 62 ------------------------------------------- + 2 files changed, 63 insertions(+), 62 deletions(-) + +diff --git a/lib/colord/cd-edid.c b/lib/colord/cd-edid.c +index a5e2328..dec509a 100644 +--- a/lib/colord/cd-edid.c ++++ b/lib/colord/cd-edid.c +@@ -687,3 +687,66 @@ cd_edid_new (void) + edid = g_object_new (CD_TYPE_EDID, NULL); + return CD_EDID (edid); + } ++ ++/** ++ * cd_icc_create_from_edid_data: ++ * @icc: A valid #CdIcc ++ * @edid: EDID data ++ * @error: A #GError, or %NULL ++ * ++ * Creates an ICC profile from EDID data. ++ * ++ * Return value: %TRUE for success ++ * ++ * Since: 1.1.2 ++ **/ ++gboolean ++cd_icc_create_from_edid_data (CdIcc *icc, CdEdid *edid, GError **error) ++{ ++ CdIccPrivate *priv = GET_PRIVATE (icc); ++ const gchar *data; ++ ++ /* not loaded */ ++ if (priv->lcms_profile != NULL) { ++ g_set_error_literal (error, ++ CD_ICC_ERROR, ++ CD_ICC_ERROR_FAILED_TO_CREATE, ++ "already loaded or generated"); ++ return FALSE; ++ } ++ ++ /* create from parsed object */ ++ if (!cd_icc_create_from_edid (icc, ++ cd_edid_get_gamma (edid), ++ cd_edid_get_red (edid), ++ cd_edid_get_green (edid), ++ cd_edid_get_blue (edid), ++ cd_edid_get_white (edid), ++ error)) { ++ return FALSE; ++ } ++ ++ /* set copyright */ ++ cd_icc_set_copyright (icc, NULL, ++ /* deliberately not translated */ ++ "This profile is free of known copyright restrictions."); ++ ++ /* set 'ICC meta Tag for Monitor Profiles' data */ ++ data = cd_edid_get_checksum (edid); ++ if (data != NULL) ++ cd_icc_add_metadata (icc, CD_PROFILE_METADATA_EDID_MD5, data); ++ data = cd_edid_get_monitor_name (edid); ++ if (data != NULL) ++ cd_icc_add_metadata (icc, CD_PROFILE_METADATA_EDID_MODEL, data); ++ data = cd_edid_get_serial_number (edid); ++ if (data != NULL) ++ cd_icc_add_metadata (icc, CD_PROFILE_METADATA_EDID_SERIAL, data); ++ data = cd_edid_get_pnp_id (edid); ++ if (data != NULL) ++ cd_icc_add_metadata (icc, CD_PROFILE_METADATA_EDID_MNFT, data); ++ data = cd_edid_get_vendor_name (edid); ++ if (data != NULL) ++ cd_icc_add_metadata (icc, CD_PROFILE_METADATA_EDID_VENDOR, data); ++ return TRUE; ++} ++ +diff --git a/lib/colord/cd-icc.c b/lib/colord/cd-icc.c +index 3937d8a..daf6f4d 100644 +--- a/lib/colord/cd-icc.c ++++ b/lib/colord/cd-icc.c +@@ -3117,68 +3117,6 @@ cd_icc_create_default (CdIcc *icc, GError **error) + return cd_icc_create_default_full (icc, CD_ICC_LOAD_FLAGS_NONE, error); + } + +-/** +- * cd_icc_create_from_edid_data: +- * @icc: A valid #CdIcc +- * @edid: EDID data +- * @error: A #GError, or %NULL +- * +- * Creates an ICC profile from EDID data. +- * +- * Return value: %TRUE for success +- * +- * Since: 1.1.2 +- **/ +-gboolean +-cd_icc_create_from_edid_data (CdIcc *icc, CdEdid *edid, GError **error) +-{ +- CdIccPrivate *priv = GET_PRIVATE (icc); +- const gchar *data; +- +- /* not loaded */ +- if (priv->lcms_profile != NULL) { +- g_set_error_literal (error, +- CD_ICC_ERROR, +- CD_ICC_ERROR_FAILED_TO_CREATE, +- "already loaded or generated"); +- return FALSE; +- } +- +- /* create from parsed object */ +- if (!cd_icc_create_from_edid (icc, +- cd_edid_get_gamma (edid), +- cd_edid_get_red (edid), +- cd_edid_get_green (edid), +- cd_edid_get_blue (edid), +- cd_edid_get_white (edid), +- error)) { +- return FALSE; +- } +- +- /* set copyright */ +- cd_icc_set_copyright (icc, NULL, +- /* deliberately not translated */ +- "This profile is free of known copyright restrictions."); +- +- /* set 'ICC meta Tag for Monitor Profiles' data */ +- data = cd_edid_get_checksum (edid); +- if (data != NULL) +- cd_icc_add_metadata (icc, CD_PROFILE_METADATA_EDID_MD5, data); +- data = cd_edid_get_monitor_name (edid); +- if (data != NULL) +- cd_icc_add_metadata (icc, CD_PROFILE_METADATA_EDID_MODEL, data); +- data = cd_edid_get_serial_number (edid); +- if (data != NULL) +- cd_icc_add_metadata (icc, CD_PROFILE_METADATA_EDID_SERIAL, data); +- data = cd_edid_get_pnp_id (edid); +- if (data != NULL) +- cd_icc_add_metadata (icc, CD_PROFILE_METADATA_EDID_MNFT, data); +- data = cd_edid_get_vendor_name (edid); +- if (data != NULL) +- cd_icc_add_metadata (icc, CD_PROFILE_METADATA_EDID_VENDOR, data); +- return TRUE; +-} +- + /** + * cd_icc_create_from_edid: + * @icc: A valid #CdIcc diff --git a/meta-oe/recipes-support/colord/colord/Makefile b/meta-oe/recipes-support/colord/colord/Makefile new file mode 100644 index 0000000000..1e29e4f670 --- /dev/null +++ b/meta-oe/recipes-support/colord/colord/Makefile @@ -0,0 +1,48 @@ +# For native build cd_idt8, cd_create_profile and a tiny version of libcolord.so +# only. By reducing the library to what's necessary, we avoid dependencies on +# naitve udev and libgudev + +CFLAGS+=$(shell pkg-config-native --cflags gio-2.0) +CFLAGS+=$(shell pkg-config-native --cflags lcms2) +CFLAGS+=-std=c99 -I./lib -I./lib/colord -I$(DESTDIR) -DCD_COMPILATION + +LDFLAGS+=$(shell pkg-config-native --libs gio-2.0) +LDFLAGS+=$(shell pkg-config-native --libs lcms2) +LDFLAGS+=-lm + +all: cd_idt8 cd_create_profile + +LIBSOURCES = \ + lib/colord/cd-it8.c \ + lib/colord/cd-color.c \ + lib/colord/cd-spectrum.c \ + lib/colord/cd-math.c \ + lib/colord/cd-interp-akima.c \ + lib/colord/cd-context-lcms.c \ + lib/colord/cd-interp.c \ + lib/colord/cd-interp-linear.c \ + lib/colord/cd-it8-utils.c \ + lib/colord/cd-enum.c \ + lib/colord/cd-icc.c \ + lib/colord/cd-icc-utils.c \ + lib/colord/cd-dom.c + +libcolord.so: $(LIBSOURCES) + $(CC) $(CFLAGS) -L$(DESTDIR) -fPIC -shared -Wl,-soname,$@ $^ -o $(DESTDIR)/$@ $(LDFLAGS) + +cd_idt8.o: client/cd-it8.c + $(CC) $(CFLAGS) -c $^ -o $(DESTDIR)/$@ + +cd_idt8: libcolord.so cd_idt8.o + $(CC) $(DESTDIR)/cd_idt8.o -o $(DESTDIR)/$@ -L$(DESTDIR) -lcolord $(LDFLAGS) + +cd_create_profile.o: client/cd-create-profile.c + $(CC) $(CFLAGS) -c $^ -o $(DESTDIR)/$@ + +cd_create_profile: libcolord.so cd_create_profile.o + $(CC) $(DESTDIR)/cd_create_profile.o -o $(DESTDIR)/$@ -L$(DESTDIR) -lcolord $(LDFLAGS) + +.PHONY: clean + +clean: + rm -f $(DESTDIR)/libcolord.so $(DESTDIR)/*.o $(DESTDIR)/cd_idt8 $(DESTDIR)/cd_create_profile -- cgit v1.2.3-54-g00ecf