From 5f6cae918f265b22bae01869c52f8bc2a7020264 Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Sat, 30 Mar 2024 16:41:33 +0100 Subject: [PATCH 01/62] Add meta.yaml for libglvnd --- recipes/libglvnd/meta.yaml | 46 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 recipes/libglvnd/meta.yaml diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml new file mode 100644 index 0000000000000..accd4e3d1bd92 --- /dev/null +++ b/recipes/libglvnd/meta.yaml @@ -0,0 +1,46 @@ +{% set name = "libglvnd" %} +{% set version = "1.7.0" %} + +package: + name: {{ name }} + version: {{ version }} + +source: + - url: https://gitlab.freedesktop.org/glvnd/libglvnd/-/archive/v{{ version }}/libglvnd-v{{ version }}.tar.bz2 + sha256: a4bf29598fe6a127188e2675b5600eeb5ca0e77413c7f745eb353a9ddb6b0119 + patches: + - libglvnd_look_for_egl_icd_in_system_location.patch + +build: + skip: true # [not linux] + number: 0 + run_exports: + - {{ pin_subpackage(name, max_pin='x') }} + +requirements: + build: + - {{ compiler('c') }} + - meson + - pkg-config + - ninja + host: + - xorg-xext + - xorg-libx11 + - xorg-xorgproto + +test: + commands: + - test -f $PREFIX/lib/pkgconfig/gl.pc + - test -f $PREFIX/include/GL/gl.h + - test -f $PREFIX/lib/libGL.so.1 + + +about: + home: https://gitlab.freedesktop.org/glvnd/libglvnd + license: LicenseRef-TODO-Sort-Out-Correct-License + license_file: README.md + summary: The GL Vendor-Neutral Dispatch library + +extra: + recipe-maintainers: + - traversaro From 13b321c937cffaf5f1faf4fc44bcb13f7255f7be Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Sat, 30 Mar 2024 16:43:01 +0100 Subject: [PATCH 02/62] Create libglvnd_look_for_egl_icd_in_system_location.patch --- ..._look_for_egl_icd_in_system_location.patch | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch diff --git a/recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch b/recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch new file mode 100644 index 0000000000000..fa35f915a65a6 --- /dev/null +++ b/recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch @@ -0,0 +1,19 @@ +diff --git a/src/EGL/meson.build b/src/EGL/meson.build +index c90f0ca..3cf618a 100644 +--- a/src/EGL/meson.build ++++ b/src/EGL/meson.build +@@ -39,9 +39,12 @@ if host_machine.system() in ['haiku'] + egl_vendor_config_dirs += ':/boot/system/non-packaged/add-ons/opengl/egl_vendor.d' + egl_vendor_config_dirs += ':/boot/system/add-ons/opengl/egl_vendor.d' + else ++ # conda-forge specific patch: in conda-forge we do not ship any EGL implementation ++ # as a conda-forge package, so we patch the DEFAULT_EGL_VENDOR_CONFIG_DIRS to point ++ # to the system one, where we assume that glvnd is installed with /usr prefix + egl_vendor_config_dirs = '@0@/glvnd/egl_vendor.d:@1@/glvnd/egl_vendor.d'.format( +- join_paths(get_option('prefix'),get_option('sysconfdir')), +- join_paths(get_option('prefix'),get_option('datadir'))) ++ join_paths('/usr',get_option('sysconfdir')), ++ join_paths('/usr',get_option('datadir'))) + endif + + libEGL = shared_library( From 74c4f7c5acc22a6d2bbaa9dfe543f4747da5b925 Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Sat, 30 Mar 2024 16:46:39 +0100 Subject: [PATCH 03/62] Add build.sh for libglvnd --- recipes/libglvnd/build.sh | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 recipes/libglvnd/build.sh diff --git a/recipes/libglvnd/build.sh b/recipes/libglvnd/build.sh new file mode 100644 index 0000000000000..a5fa8e3637492 --- /dev/null +++ b/recipes/libglvnd/build.sh @@ -0,0 +1,11 @@ +#! /bin/bash + +set -ex + +# get meson to find pkg-config when cross compiling +export PKG_CONFIG=$BUILD_PREFIX/bin/pkg-config + +meson ${MESON_ARGS} builddir --prefix=$PREFIX +meson configure builddir +ninja -v -C builddir +ninja -C builddir install From c3c8ca153a1e9ba6de2807857905ace0560a9dae Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Sat, 30 Mar 2024 16:57:11 +0100 Subject: [PATCH 04/62] Update meta.yaml --- recipes/libglvnd/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index accd4e3d1bd92..9a779c960c748 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -24,7 +24,7 @@ requirements: - pkg-config - ninja host: - - xorg-xext + - xorg-libxext - xorg-libx11 - xorg-xorgproto From df1e9c948c6fdacc63599f20a317e54f0bdbb054 Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Sat, 30 Mar 2024 16:57:29 +0100 Subject: [PATCH 05/62] Update meta.yaml --- recipes/libglvnd/meta.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 9a779c960c748..2213176f9ea69 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -27,6 +27,7 @@ requirements: - xorg-libxext - xorg-libx11 - xorg-xorgproto + - wayland-protocols test: commands: From c4418b268a2ba83ca01d23b0010438b29d8547fa Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Sat, 30 Mar 2024 17:03:26 +0100 Subject: [PATCH 06/62] Update meta.yaml --- recipes/libglvnd/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 2213176f9ea69..f17bcc891c73e 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -7,7 +7,7 @@ package: source: - url: https://gitlab.freedesktop.org/glvnd/libglvnd/-/archive/v{{ version }}/libglvnd-v{{ version }}.tar.bz2 - sha256: a4bf29598fe6a127188e2675b5600eeb5ca0e77413c7f745eb353a9ddb6b0119 + sha256: d0e1925a3c9aee0143b8c181ac31d5637c8faa081759c277b8e16c7075612c11 patches: - libglvnd_look_for_egl_icd_in_system_location.patch From e0d66b41d98ae7b4b5682ee756caa921b85d6c1d Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sat, 27 Jul 2024 18:24:42 +0900 Subject: [PATCH 07/62] Add improvements --- recipes/libglvnd/build.sh | 6 +++--- recipes/libglvnd/meta.yaml | 43 ++++++++++++++++++++++++++++++++++---- 2 files changed, 42 insertions(+), 7 deletions(-) diff --git a/recipes/libglvnd/build.sh b/recipes/libglvnd/build.sh index a5fa8e3637492..5d070ce0c63f5 100644 --- a/recipes/libglvnd/build.sh +++ b/recipes/libglvnd/build.sh @@ -1,11 +1,11 @@ #! /bin/bash -set -ex +set -e -x # get meson to find pkg-config when cross compiling -export PKG_CONFIG=$BUILD_PREFIX/bin/pkg-config +export PKG_CONFIG="${BUILD_PREFIX}/bin/pkg-config" -meson ${MESON_ARGS} builddir --prefix=$PREFIX +meson setup ${MESON_ARGS} builddir --prefix="${PREFIX}" -Dasm=enabled -Dx11=enabled -Degl=true -Dglx=true -Dgles1=true -Dgles2=true -Dtls=true -Ddispatch-tls=true -Dheaders=true meson configure builddir ninja -v -C builddir ninja -C builddir install diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index f17bcc891c73e..a73c973a9ca23 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -31,17 +31,52 @@ requirements: test: commands: + - test -f $PREFIX/lib/libEGL.so.1 + - test -f $PREFIX/lib/libGL.so.1 + - test -f $PREFIX/lib/libGLESv1_CM.so.1 + - test -f $PREFIX/lib/libGLESv2.so.2 + - test -f $PREFIX/lib/libGLX.so.0 + - test -f $PREFIX/lib/libOpenGL.so.0 + - test -f $PREFIX/lib/libGLdispatch.so.0 + - test -f $PREFIX/lib/pkgconfig/egl.pc - test -f $PREFIX/lib/pkgconfig/gl.pc + - test -f $PREFIX/lib/pkgconfig/glesv1_cm.pc + - test -f $PREFIX/lib/pkgconfig/glesv2.pc + - test -f $PREFIX/lib/pkgconfig/glx.pc + - test -f $PREFIX/lib/pkgconfig/opengl.pc + - test -f $PREFIX/lib/pkgconfig/libglvnd.pc + - test -f $PREFIX/include/EGL/egl.h + - test -f $PREFIX/include/EGL/eglext.h + - test -f $PREFIX/include/EGL/eglplatform.h - test -f $PREFIX/include/GL/gl.h - - test -f $PREFIX/lib/libGL.so.1 - + - test -f $PREFIX/include/GL/glcorearb.h + - test -f $PREFIX/include/GL/glext.h + - test -f $PREFIX/include/GL/glx.h + - test -f $PREFIX/include/GL/glxext.h + - test -f $PREFIX/include/GLES/egl.h + - test -f $PREFIX/include/GLES/gl.h + - test -f $PREFIX/include/GLES/glext.h + - test -f $PREFIX/include/GLES/glplatform.h + - test -f $PREFIX/include/GLES2/gl2.h + - test -f $PREFIX/include/GLES2/gl2ext.h + - test -f $PREFIX/include/GLES2/gl2platform.h + - test -f $PREFIX/include/GLES3/gl3.h + - test -f $PREFIX/include/GLES3/gl31.h + - test -f $PREFIX/include/GLES3/gl32.h + - test -f $PREFIX/include/GLES3/gl3ext.h + - test -f $PREFIX/include/GLES3/gl3platform.h + - test -f $PREFIX/include/KHR/khrplatform.h + - test -f $PREFIX/include/glvnd/GLdispatchABI.h + - test -f $PREFIX/include/glvnd/libeglabi.h + - test -f $PREFIX/include/glvnd/libglxabi.h about: home: https://gitlab.freedesktop.org/glvnd/libglvnd - license: LicenseRef-TODO-Sort-Out-Correct-License + license: MIT license_file: README.md - summary: The GL Vendor-Neutral Dispatch library + summary: GL Vendor-Neutral Dispatch library extra: recipe-maintainers: - traversaro + - ehfd From 6aacdb101cb3adaa15bd89ba07b3fe0d04cbbf68 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sat, 27 Jul 2024 18:34:27 +0900 Subject: [PATCH 08/62] Improve libglvnd --- ...glvnd_look_for_egl_icd_in_system_location.patch | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch b/recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch index fa35f915a65a6..c1c0f402b3491 100644 --- a/recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch +++ b/recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch @@ -6,14 +6,14 @@ index c90f0ca..3cf618a 100644 egl_vendor_config_dirs += ':/boot/system/non-packaged/add-ons/opengl/egl_vendor.d' egl_vendor_config_dirs += ':/boot/system/add-ons/opengl/egl_vendor.d' else -+ # conda-forge specific patch: in conda-forge we do not ship any EGL implementation -+ # as a conda-forge package, so we patch the DEFAULT_EGL_VENDOR_CONFIG_DIRS to point -+ # to the system one, where we assume that glvnd is installed with /usr prefix - egl_vendor_config_dirs = '@0@/glvnd/egl_vendor.d:@1@/glvnd/egl_vendor.d'.format( -- join_paths(get_option('prefix'),get_option('sysconfdir')), +- egl_vendor_config_dirs = '@0@/glvnd/egl_vendor.d:@1@/glvnd/egl_vendor.d'.format( ++ egl_vendor_config_dirs = egl_vendor_config_dirs = '@0@/glvnd/egl_vendor.d:@1@/glvnd/egl_vendor.d:@2@/glvnd/egl_vendor.d:@3@/glvnd/egl_vendor.d:@4@/glvnd/egl_vendor.d'.format( + join_paths(get_option('prefix'),get_option('sysconfdir')), - join_paths(get_option('prefix'),get_option('datadir'))) ++ join_paths(get_option('prefix'),get_option('datadir')), + join_paths('/usr',get_option('sysconfdir')), -+ join_paths('/usr',get_option('datadir'))) ++ join_paths('/usr',get_option('datadir')), ++ '/etc') endif - + libEGL = shared_library( From 0d0e15a6144b0e7261dde2e63c37a0f518945b5b Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sat, 27 Jul 2024 18:48:16 +0900 Subject: [PATCH 09/62] Fix Meson options --- recipes/libglvnd/build.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/libglvnd/build.sh b/recipes/libglvnd/build.sh index 5d070ce0c63f5..5b4d2f9f105cb 100644 --- a/recipes/libglvnd/build.sh +++ b/recipes/libglvnd/build.sh @@ -5,7 +5,7 @@ set -e -x # get meson to find pkg-config when cross compiling export PKG_CONFIG="${BUILD_PREFIX}/bin/pkg-config" -meson setup ${MESON_ARGS} builddir --prefix="${PREFIX}" -Dasm=enabled -Dx11=enabled -Degl=true -Dglx=true -Dgles1=true -Dgles2=true -Dtls=true -Ddispatch-tls=true -Dheaders=true +meson setup ${MESON_ARGS} builddir --prefix="${PREFIX}" -Dasm=enabled -Dx11=enabled -Degl=true -Dglx=enabled -Dgles1=true -Dgles2=true -Dtls=true -Ddispatch-tls=true -Dheaders=true meson configure builddir ninja -v -C builddir ninja -C builddir install From c7a99daf2088bba1f292951cf2ae4c021b115451 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sat, 27 Jul 2024 18:54:32 +0900 Subject: [PATCH 10/62] Fix diff patch --- .../libglvnd_look_for_egl_icd_in_system_location.patch | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch b/recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch index c1c0f402b3491..921f8e3569afa 100644 --- a/recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch +++ b/recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch @@ -7,13 +7,12 @@ index c90f0ca..3cf618a 100644 egl_vendor_config_dirs += ':/boot/system/add-ons/opengl/egl_vendor.d' else - egl_vendor_config_dirs = '@0@/glvnd/egl_vendor.d:@1@/glvnd/egl_vendor.d'.format( -+ egl_vendor_config_dirs = egl_vendor_config_dirs = '@0@/glvnd/egl_vendor.d:@1@/glvnd/egl_vendor.d:@2@/glvnd/egl_vendor.d:@3@/glvnd/egl_vendor.d:@4@/glvnd/egl_vendor.d'.format( ++ egl_vendor_config_dirs = egl_vendor_config_dirs = '@0@/glvnd/egl_vendor.d:@1@/glvnd/egl_vendor.d:@2@/glvnd/egl_vendor.d:@3@/glvnd/egl_vendor.d'.format( join_paths(get_option('prefix'),get_option('sysconfdir')), - join_paths(get_option('prefix'),get_option('datadir'))) + join_paths(get_option('prefix'),get_option('datadir')), + join_paths('/usr',get_option('sysconfdir')), -+ join_paths('/usr',get_option('datadir')), -+ '/etc') ++ join_paths('/usr',get_option('datadir'))) endif libEGL = shared_library( From 05b29096c25e8585fcf79c26f9cf75e6a1a30da1 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sat, 27 Jul 2024 19:00:17 +0900 Subject: [PATCH 11/62] Restore previous patch --- ...libglvnd_look_for_egl_icd_in_system_location.patch | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch b/recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch index 921f8e3569afa..fa35f915a65a6 100644 --- a/recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch +++ b/recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch @@ -6,13 +6,14 @@ index c90f0ca..3cf618a 100644 egl_vendor_config_dirs += ':/boot/system/non-packaged/add-ons/opengl/egl_vendor.d' egl_vendor_config_dirs += ':/boot/system/add-ons/opengl/egl_vendor.d' else -- egl_vendor_config_dirs = '@0@/glvnd/egl_vendor.d:@1@/glvnd/egl_vendor.d'.format( -+ egl_vendor_config_dirs = egl_vendor_config_dirs = '@0@/glvnd/egl_vendor.d:@1@/glvnd/egl_vendor.d:@2@/glvnd/egl_vendor.d:@3@/glvnd/egl_vendor.d'.format( - join_paths(get_option('prefix'),get_option('sysconfdir')), ++ # conda-forge specific patch: in conda-forge we do not ship any EGL implementation ++ # as a conda-forge package, so we patch the DEFAULT_EGL_VENDOR_CONFIG_DIRS to point ++ # to the system one, where we assume that glvnd is installed with /usr prefix + egl_vendor_config_dirs = '@0@/glvnd/egl_vendor.d:@1@/glvnd/egl_vendor.d'.format( +- join_paths(get_option('prefix'),get_option('sysconfdir')), - join_paths(get_option('prefix'),get_option('datadir'))) -+ join_paths(get_option('prefix'),get_option('datadir')), + join_paths('/usr',get_option('sysconfdir')), + join_paths('/usr',get_option('datadir'))) endif - + libEGL = shared_library( From d22bf684a83dafcb5d9d27315f52a7b0a79b9771 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sat, 27 Jul 2024 19:16:31 +0900 Subject: [PATCH 12/62] Fix paths for ICD --- .../libglvnd_look_for_egl_icd_in_system_location.patch | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch b/recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch index fa35f915a65a6..48da2cb992b09 100644 --- a/recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch +++ b/recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch @@ -12,8 +12,8 @@ index c90f0ca..3cf618a 100644 egl_vendor_config_dirs = '@0@/glvnd/egl_vendor.d:@1@/glvnd/egl_vendor.d'.format( - join_paths(get_option('prefix'),get_option('sysconfdir')), - join_paths(get_option('prefix'),get_option('datadir'))) -+ join_paths('/usr',get_option('sysconfdir')), -+ join_paths('/usr',get_option('datadir'))) ++ join_paths('/usr',get_option('datadir')), ++ '/etc') endif libEGL = shared_library( From d5656f4c6afc6f774c07f353218c8ebaa4ef0f2e Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sat, 27 Jul 2024 19:23:39 +0900 Subject: [PATCH 13/62] Change maintainer --- recipes/libglvnd/meta.yaml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index a73c973a9ca23..73f0ab1fe4f2c 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -72,11 +72,10 @@ test: about: home: https://gitlab.freedesktop.org/glvnd/libglvnd - license: MIT + license: BSD-like license_file: README.md summary: GL Vendor-Neutral Dispatch library extra: recipe-maintainers: - - traversaro - ehfd From 82e5c39aa8c7a2cabf7758fbcdc08d481cc19047 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sat, 27 Jul 2024 19:29:56 +0900 Subject: [PATCH 14/62] Fix LicenseRef --- recipes/libglvnd/meta.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 73f0ab1fe4f2c..c97c6d7e3e97b 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -20,6 +20,7 @@ build: requirements: build: - {{ compiler('c') }} + - {{ stdlib('c') }} - meson - pkg-config - ninja @@ -72,7 +73,7 @@ test: about: home: https://gitlab.freedesktop.org/glvnd/libglvnd - license: BSD-like + license: LicenseRef-NVIDIA-libglvnd license_file: README.md summary: GL Vendor-Neutral Dispatch library From 4f51f7c03b2f2653e905310829084e0965dfa5b6 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sat, 27 Jul 2024 21:17:33 +0900 Subject: [PATCH 15/62] Change host dependency --- recipes/libglvnd/meta.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index c97c6d7e3e97b..30ce9f171c02c 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -27,8 +27,8 @@ requirements: host: - xorg-libxext - xorg-libx11 - - xorg-xorgproto - - wayland-protocols + - xorg-glproto + - wayland-protocols # [linux] test: commands: From c34cb8490d96379745d1b7ffcca79c8379365867 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sat, 27 Jul 2024 21:19:21 +0900 Subject: [PATCH 16/62] Change dependencies --- recipes/libglvnd/meta.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 30ce9f171c02c..beb39829ccf2c 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -28,7 +28,6 @@ requirements: - xorg-libxext - xorg-libx11 - xorg-glproto - - wayland-protocols # [linux] test: commands: From 3e1586d9e15ae75bbb5fd51087618aab8d43e34e Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sat, 27 Jul 2024 22:31:58 +0900 Subject: [PATCH 17/62] Clarify runtime dependency --- recipes/libglvnd/meta.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index beb39829ccf2c..16796c50fca5d 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -28,6 +28,9 @@ requirements: - xorg-libxext - xorg-libx11 - xorg-glproto + run: + - xorg-libxext + - xorg-glproto test: commands: From c12302406fe7aec16affaf22c41e3896ad6694b4 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sat, 27 Jul 2024 22:42:50 +0900 Subject: [PATCH 18/62] Clarify dependencies --- recipes/libglvnd/meta.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 16796c50fca5d..336d5f3418617 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -25,11 +25,13 @@ requirements: - pkg-config - ninja host: - - xorg-libxext - xorg-libx11 + - xorg-libxext + - xorg-xextproto - xorg-glproto run: - xorg-libxext + - xorg-xextproto - xorg-glproto test: From 48a46af6ca945942b51ea14349ee3410731fa9da Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sun, 28 Jul 2024 13:39:24 +0900 Subject: [PATCH 19/62] Remove runtime dependencies --- recipes/libglvnd/meta.yaml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 336d5f3418617..cafc186de2135 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -29,10 +29,6 @@ requirements: - xorg-libxext - xorg-xextproto - xorg-glproto - run: - - xorg-libxext - - xorg-xextproto - - xorg-glproto test: commands: From e19b5c7d2f072a199523ace9f06a05c0e8a1552f Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sun, 28 Jul 2024 18:05:27 +0900 Subject: [PATCH 20/62] Cosmetic edits --- recipes/libglvnd/build.sh | 13 ++++++++++++- recipes/libglvnd/meta.yaml | 3 ++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/recipes/libglvnd/build.sh b/recipes/libglvnd/build.sh index 5b4d2f9f105cb..90dc544b3bccd 100644 --- a/recipes/libglvnd/build.sh +++ b/recipes/libglvnd/build.sh @@ -5,7 +5,18 @@ set -e -x # get meson to find pkg-config when cross compiling export PKG_CONFIG="${BUILD_PREFIX}/bin/pkg-config" -meson setup ${MESON_ARGS} builddir --prefix="${PREFIX}" -Dasm=enabled -Dx11=enabled -Degl=true -Dglx=enabled -Dgles1=true -Dgles2=true -Dtls=true -Ddispatch-tls=true -Dheaders=true +meson setup builddir \ + ${MESON_ARGS} \ + --prefix="${PREFIX}" \ + -Dasm=enabled \ + -Dx11=enabled \ + -Degl=true \ + -Dglx=enabled \ + -Dgles1=true \ + -Dgles2=true \ + -Dtls=true \ + -Ddispatch-tls=true \ + -Dheaders=true meson configure builddir ninja -v -C builddir ninja -C builddir install diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index cafc186de2135..72225266b5b56 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -73,10 +73,11 @@ test: about: home: https://gitlab.freedesktop.org/glvnd/libglvnd - license: LicenseRef-NVIDIA-libglvnd + license: LicenseRef-libglvnd license_file: README.md summary: GL Vendor-Neutral Dispatch library extra: recipe-maintainers: - ehfd + - hmaarrfk From 85633d685ff3b5091002faeec1d19c2a0ac41429 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sun, 28 Jul 2024 18:05:44 +0900 Subject: [PATCH 21/62] Cosmetic edits --- recipes/libglvnd/build.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/libglvnd/build.sh b/recipes/libglvnd/build.sh index 90dc544b3bccd..1694204852d61 100644 --- a/recipes/libglvnd/build.sh +++ b/recipes/libglvnd/build.sh @@ -1,4 +1,4 @@ -#! /bin/bash +#!/bin/bash set -e -x From 4c21ce7603c6410b34e6a791fd0fba97d98c9164 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sun, 28 Jul 2024 18:07:00 +0900 Subject: [PATCH 22/62] Cosmetic edits --- recipes/libglvnd/build.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/recipes/libglvnd/build.sh b/recipes/libglvnd/build.sh index 1694204852d61..63f6830e16d91 100644 --- a/recipes/libglvnd/build.sh +++ b/recipes/libglvnd/build.sh @@ -1,5 +1,4 @@ #!/bin/bash - set -e -x # get meson to find pkg-config when cross compiling From 11684606e968274be1af883bfa978b9b01987b18 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sun, 28 Jul 2024 18:07:08 +0900 Subject: [PATCH 23/62] Cosmetic edits --- recipes/libglvnd/build.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/libglvnd/build.sh b/recipes/libglvnd/build.sh index 63f6830e16d91..292a66dea7f99 100644 --- a/recipes/libglvnd/build.sh +++ b/recipes/libglvnd/build.sh @@ -1,7 +1,7 @@ #!/bin/bash set -e -x -# get meson to find pkg-config when cross compiling +# Get meson to find pkg-config when cross compiling export PKG_CONFIG="${BUILD_PREFIX}/bin/pkg-config" meson setup builddir \ From c4b9eaea838b005e9cfa71177b2df98dd96e2265 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Mon, 29 Jul 2024 13:14:23 +0900 Subject: [PATCH 24/62] Change ICD priority --- .../libglvnd_look_for_egl_icd_in_system_location.patch | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch b/recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch index 48da2cb992b09..d2380bf5f6574 100644 --- a/recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch +++ b/recipes/libglvnd/libglvnd_look_for_egl_icd_in_system_location.patch @@ -12,8 +12,8 @@ index c90f0ca..3cf618a 100644 egl_vendor_config_dirs = '@0@/glvnd/egl_vendor.d:@1@/glvnd/egl_vendor.d'.format( - join_paths(get_option('prefix'),get_option('sysconfdir')), - join_paths(get_option('prefix'),get_option('datadir'))) -+ join_paths('/usr',get_option('datadir')), -+ '/etc') ++ '/etc', ++ join_paths('/usr',get_option('datadir'))) endif libEGL = shared_library( From 9cdeda90807d7302954cc8fd28874b2f7b5d992f Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sat, 3 Aug 2024 21:02:49 +0900 Subject: [PATCH 25/62] Try multi-output recipe --- recipes/libglvnd/meta.yaml | 109 ++++++++++++++++++++++--------------- 1 file changed, 65 insertions(+), 44 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 72225266b5b56..d9bb90cd4404f 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -1,8 +1,7 @@ -{% set name = "libglvnd" %} {% set version = "1.7.0" %} package: - name: {{ name }} + name: libglvnd version: {{ version }} source: @@ -14,8 +13,6 @@ source: build: skip: true # [not linux] number: 0 - run_exports: - - {{ pin_subpackage(name, max_pin='x') }} requirements: build: @@ -30,46 +27,69 @@ requirements: - xorg-xextproto - xorg-glproto -test: - commands: - - test -f $PREFIX/lib/libEGL.so.1 - - test -f $PREFIX/lib/libGL.so.1 - - test -f $PREFIX/lib/libGLESv1_CM.so.1 - - test -f $PREFIX/lib/libGLESv2.so.2 - - test -f $PREFIX/lib/libGLX.so.0 - - test -f $PREFIX/lib/libOpenGL.so.0 - - test -f $PREFIX/lib/libGLdispatch.so.0 - - test -f $PREFIX/lib/pkgconfig/egl.pc - - test -f $PREFIX/lib/pkgconfig/gl.pc - - test -f $PREFIX/lib/pkgconfig/glesv1_cm.pc - - test -f $PREFIX/lib/pkgconfig/glesv2.pc - - test -f $PREFIX/lib/pkgconfig/glx.pc - - test -f $PREFIX/lib/pkgconfig/opengl.pc - - test -f $PREFIX/lib/pkgconfig/libglvnd.pc - - test -f $PREFIX/include/EGL/egl.h - - test -f $PREFIX/include/EGL/eglext.h - - test -f $PREFIX/include/EGL/eglplatform.h - - test -f $PREFIX/include/GL/gl.h - - test -f $PREFIX/include/GL/glcorearb.h - - test -f $PREFIX/include/GL/glext.h - - test -f $PREFIX/include/GL/glx.h - - test -f $PREFIX/include/GL/glxext.h - - test -f $PREFIX/include/GLES/egl.h - - test -f $PREFIX/include/GLES/gl.h - - test -f $PREFIX/include/GLES/glext.h - - test -f $PREFIX/include/GLES/glplatform.h - - test -f $PREFIX/include/GLES2/gl2.h - - test -f $PREFIX/include/GLES2/gl2ext.h - - test -f $PREFIX/include/GLES2/gl2platform.h - - test -f $PREFIX/include/GLES3/gl3.h - - test -f $PREFIX/include/GLES3/gl31.h - - test -f $PREFIX/include/GLES3/gl32.h - - test -f $PREFIX/include/GLES3/gl3ext.h - - test -f $PREFIX/include/GLES3/gl3platform.h - - test -f $PREFIX/include/KHR/khrplatform.h - - test -f $PREFIX/include/glvnd/GLdispatchABI.h - - test -f $PREFIX/include/glvnd/libeglabi.h - - test -f $PREFIX/include/glvnd/libglxabi.h +outputs: + - name: libglvnd + files: + - **/*.so + test: + commands: + - test -f $PREFIX/lib/libEGL.so.1 + - test -f $PREFIX/lib/libGL.so.1 + - test -f $PREFIX/lib/libGLESv1_CM.so.1 + - test -f $PREFIX/lib/libGLESv2.so.2 + - test -f $PREFIX/lib/libGLX.so.0 + - test -f $PREFIX/lib/libOpenGL.so.0 + - test -f $PREFIX/lib/libGLdispatch.so.0 + - name: libgl-devel + requirements: + - {{ pin_subpackage('libglvnd', exact=True) }} + - xorg-xextproto + - xorg-glproto + files: + include: + - ** + exclude: + - **/*.so + test: + commands: + - test ! -f $PREFIX/lib/libEGL.so.1 + - test ! -f $PREFIX/lib/libGL.so.1 + - test ! -f $PREFIX/lib/libGLESv1_CM.so.1 + - test ! -f $PREFIX/lib/libGLESv2.so.2 + - test ! -f $PREFIX/lib/libGLX.so.0 + - test ! -f $PREFIX/lib/libOpenGL.so.0 + - test ! -f $PREFIX/lib/libGLdispatch.so.0 + - test -f $PREFIX/lib/pkgconfig/egl.pc + - test -f $PREFIX/lib/pkgconfig/gl.pc + - test -f $PREFIX/lib/pkgconfig/glesv1_cm.pc + - test -f $PREFIX/lib/pkgconfig/glesv2.pc + - test -f $PREFIX/lib/pkgconfig/glx.pc + - test -f $PREFIX/lib/pkgconfig/opengl.pc + - test -f $PREFIX/lib/pkgconfig/libglvnd.pc + - test -f $PREFIX/include/EGL/egl.h + - test -f $PREFIX/include/EGL/eglext.h + - test -f $PREFIX/include/EGL/eglplatform.h + - test -f $PREFIX/include/GL/gl.h + - test -f $PREFIX/include/GL/glcorearb.h + - test -f $PREFIX/include/GL/glext.h + - test -f $PREFIX/include/GL/glx.h + - test -f $PREFIX/include/GL/glxext.h + - test -f $PREFIX/include/GLES/egl.h + - test -f $PREFIX/include/GLES/gl.h + - test -f $PREFIX/include/GLES/glext.h + - test -f $PREFIX/include/GLES/glplatform.h + - test -f $PREFIX/include/GLES2/gl2.h + - test -f $PREFIX/include/GLES2/gl2ext.h + - test -f $PREFIX/include/GLES2/gl2platform.h + - test -f $PREFIX/include/GLES3/gl3.h + - test -f $PREFIX/include/GLES3/gl31.h + - test -f $PREFIX/include/GLES3/gl32.h + - test -f $PREFIX/include/GLES3/gl3ext.h + - test -f $PREFIX/include/GLES3/gl3platform.h + - test -f $PREFIX/include/KHR/khrplatform.h + - test -f $PREFIX/include/glvnd/GLdispatchABI.h + - test -f $PREFIX/include/glvnd/libeglabi.h + - test -f $PREFIX/include/glvnd/libglxabi.h about: home: https://gitlab.freedesktop.org/glvnd/libglvnd @@ -80,4 +100,5 @@ about: extra: recipe-maintainers: - ehfd + - traversaro - hmaarrfk From 738e1d102b5d893c918d4afba017b6299c75c73a Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sat, 3 Aug 2024 21:18:03 +0900 Subject: [PATCH 26/62] Fix multi-output recipe --- recipes/libglvnd/meta.yaml | 45 +++++++++++++++++++++++++++++--------- 1 file changed, 35 insertions(+), 10 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index d9bb90cd4404f..06f76f7ca57c7 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -40,11 +40,43 @@ outputs: - test -f $PREFIX/lib/libGLX.so.0 - test -f $PREFIX/lib/libOpenGL.so.0 - test -f $PREFIX/lib/libGLdispatch.so.0 + - test ! -f $PREFIX/lib/pkgconfig/egl.pc + - test ! -f $PREFIX/lib/pkgconfig/gl.pc + - test ! -f $PREFIX/lib/pkgconfig/glesv1_cm.pc + - test ! -f $PREFIX/lib/pkgconfig/glesv2.pc + - test ! -f $PREFIX/lib/pkgconfig/glx.pc + - test ! -f $PREFIX/lib/pkgconfig/opengl.pc + - test ! -f $PREFIX/lib/pkgconfig/libglvnd.pc + - test ! -f $PREFIX/include/EGL/egl.h + - test ! -f $PREFIX/include/EGL/eglext.h + - test ! -f $PREFIX/include/EGL/eglplatform.h + - test ! -f $PREFIX/include/GL/gl.h + - test ! -f $PREFIX/include/GL/glcorearb.h + - test ! -f $PREFIX/include/GL/glext.h + - test ! -f $PREFIX/include/GL/glx.h + - test ! -f $PREFIX/include/GL/glxext.h + - test ! -f $PREFIX/include/GLES/egl.h + - test ! -f $PREFIX/include/GLES/gl.h + - test ! -f $PREFIX/include/GLES/glext.h + - test ! -f $PREFIX/include/GLES/glplatform.h + - test ! -f $PREFIX/include/GLES2/gl2.h + - test ! -f $PREFIX/include/GLES2/gl2ext.h + - test ! -f $PREFIX/include/GLES2/gl2platform.h + - test ! -f $PREFIX/include/GLES3/gl3.h + - test ! -f $PREFIX/include/GLES3/gl31.h + - test ! -f $PREFIX/include/GLES3/gl32.h + - test ! -f $PREFIX/include/GLES3/gl3ext.h + - test ! -f $PREFIX/include/GLES3/gl3platform.h + - test ! -f $PREFIX/include/KHR/khrplatform.h + - test ! -f $PREFIX/include/glvnd/GLdispatchABI.h + - test ! -f $PREFIX/include/glvnd/libeglabi.h + - test ! -f $PREFIX/include/glvnd/libglxabi.h - name: libgl-devel requirements: - - {{ pin_subpackage('libglvnd', exact=True) }} - - xorg-xextproto - - xorg-glproto + run: + - {{ pin_subpackage('libglvnd', exact=True) }} + - xorg-xextproto + - xorg-glproto files: include: - ** @@ -52,13 +84,6 @@ outputs: - **/*.so test: commands: - - test ! -f $PREFIX/lib/libEGL.so.1 - - test ! -f $PREFIX/lib/libGL.so.1 - - test ! -f $PREFIX/lib/libGLESv1_CM.so.1 - - test ! -f $PREFIX/lib/libGLESv2.so.2 - - test ! -f $PREFIX/lib/libGLX.so.0 - - test ! -f $PREFIX/lib/libOpenGL.so.0 - - test ! -f $PREFIX/lib/libGLdispatch.so.0 - test -f $PREFIX/lib/pkgconfig/egl.pc - test -f $PREFIX/lib/pkgconfig/gl.pc - test -f $PREFIX/lib/pkgconfig/glesv1_cm.pc From 94e9ebb276d1c25d80357467144b2520da6cb0e8 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sat, 3 Aug 2024 21:21:18 +0900 Subject: [PATCH 27/62] Add run exports --- recipes/libglvnd/meta.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 06f76f7ca57c7..8e62fbca4c7af 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -29,6 +29,8 @@ requirements: outputs: - name: libglvnd + run_exports: + - {{ pin_subpackage('libglvnd', max_pin='x') }} files: - **/*.so test: From 50a0d0fc77986797cdb826ac03e9e4966757ae22 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sat, 3 Aug 2024 21:31:01 +0900 Subject: [PATCH 28/62] Try changing package name --- recipes/libglvnd/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 8e62fbca4c7af..a211258b88128 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -1,7 +1,7 @@ {% set version = "1.7.0" %} package: - name: libglvnd + name: libglvnd-build version: {{ version }} source: From 82d7645bfd79d1d26fa50d988667c3d736ecf4a7 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sat, 3 Aug 2024 21:35:20 +0900 Subject: [PATCH 29/62] Changing topmost package does nothing --- recipes/libglvnd/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index a211258b88128..8e62fbca4c7af 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -1,7 +1,7 @@ {% set version = "1.7.0" %} package: - name: libglvnd-build + name: libglvnd version: {{ version }} source: From 48a8757a0d18d913a9b7ee836d57f31a071e6391 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sat, 3 Aug 2024 21:36:37 +0900 Subject: [PATCH 30/62] Fix run exports --- recipes/libglvnd/meta.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 8e62fbca4c7af..62f1928cf19b1 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -29,8 +29,9 @@ requirements: outputs: - name: libglvnd - run_exports: - - {{ pin_subpackage('libglvnd', max_pin='x') }} + build: + run_exports: + - {{ pin_subpackage('libglvnd', max_pin='x') }} files: - **/*.so test: From 7685b3916077d7eee5ef83263cedeb9bccf12717 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sat, 3 Aug 2024 23:46:53 +0900 Subject: [PATCH 31/62] Fix glob --- recipes/libglvnd/meta.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 62f1928cf19b1..9375fa9c3ef4b 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -1,7 +1,7 @@ {% set version = "1.7.0" %} package: - name: libglvnd + name: libglvnd-split version: {{ version }} source: @@ -33,7 +33,7 @@ outputs: run_exports: - {{ pin_subpackage('libglvnd', max_pin='x') }} files: - - **/*.so + - "**/*.so" test: commands: - test -f $PREFIX/lib/libEGL.so.1 @@ -82,9 +82,9 @@ outputs: - xorg-glproto files: include: - - ** + - "**" exclude: - - **/*.so + - "**/*.so" test: commands: - test -f $PREFIX/lib/pkgconfig/egl.pc From 7b61602a1e364a1382b8b33d3d06682b1ec344ae Mon Sep 17 00:00:00 2001 From: Mark Harfouche Date: Sat, 3 Aug 2024 11:00:34 -0400 Subject: [PATCH 32/62] Specify feedstock name --- recipes/libglvnd/meta.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 9375fa9c3ef4b..00ddf169f8570 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -126,6 +126,7 @@ about: summary: GL Vendor-Neutral Dispatch library extra: + feedstock-name: libglvnd recipe-maintainers: - ehfd - traversaro From b442dd16f3c2fbcd8bbb5f1e25fa556a00893ed9 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sun, 4 Aug 2024 00:13:52 +0900 Subject: [PATCH 33/62] Add host dependencies --- recipes/libglvnd/meta.yaml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 00ddf169f8570..4a0aac5e94826 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -32,6 +32,12 @@ outputs: build: run_exports: - {{ pin_subpackage('libglvnd', max_pin='x') }} + requirements: + host: + - xorg-libx11 + - xorg-libxext + - xorg-xextproto + - xorg-glproto files: - "**/*.so" test: @@ -76,6 +82,11 @@ outputs: - test ! -f $PREFIX/include/glvnd/libglxabi.h - name: libgl-devel requirements: + host: + - xorg-libx11 + - xorg-libxext + - xorg-xextproto + - xorg-glproto run: - {{ pin_subpackage('libglvnd', exact=True) }} - xorg-xextproto From d4d4524e0fb102be825328727174b3d80e26fcfa Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sun, 4 Aug 2024 00:21:35 +0900 Subject: [PATCH 34/62] Try to add sysroot --- recipes/libglvnd/meta.yaml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 4a0aac5e94826..2054ea2105e9e 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -33,6 +33,12 @@ outputs: run_exports: - {{ pin_subpackage('libglvnd', max_pin='x') }} requirements: + build: + - {{ compiler('c') }} + - {{ stdlib('c') }} + - meson + - pkg-config + - ninja host: - xorg-libx11 - xorg-libxext @@ -82,6 +88,12 @@ outputs: - test ! -f $PREFIX/include/glvnd/libglxabi.h - name: libgl-devel requirements: + build: + - {{ compiler('c') }} + - {{ stdlib('c') }} + - meson + - pkg-config + - ninja host: - xorg-libx11 - xorg-libxext From 82d8e4220fbc9f9031639bae7a403f675bf0c6ce Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sun, 4 Aug 2024 00:39:36 +0900 Subject: [PATCH 35/62] Build recipe separately --- recipes/libglvnd/meta.yaml | 15 ++------------- 1 file changed, 2 insertions(+), 13 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 2054ea2105e9e..371e665a320d4 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -14,21 +14,9 @@ build: skip: true # [not linux] number: 0 -requirements: - build: - - {{ compiler('c') }} - - {{ stdlib('c') }} - - meson - - pkg-config - - ninja - host: - - xorg-libx11 - - xorg-libxext - - xorg-xextproto - - xorg-glproto - outputs: - name: libglvnd + script: build.sh build: run_exports: - {{ pin_subpackage('libglvnd', max_pin='x') }} @@ -87,6 +75,7 @@ outputs: - test ! -f $PREFIX/include/glvnd/libeglabi.h - test ! -f $PREFIX/include/glvnd/libglxabi.h - name: libgl-devel + script: build.sh requirements: build: - {{ compiler('c') }} From 8077cae8c9837fc6ab1bb3eac61766b073130419 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sun, 4 Aug 2024 00:46:19 +0900 Subject: [PATCH 36/62] Revert back --- recipes/libglvnd/meta.yaml | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 371e665a320d4..2054ea2105e9e 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -14,9 +14,21 @@ build: skip: true # [not linux] number: 0 +requirements: + build: + - {{ compiler('c') }} + - {{ stdlib('c') }} + - meson + - pkg-config + - ninja + host: + - xorg-libx11 + - xorg-libxext + - xorg-xextproto + - xorg-glproto + outputs: - name: libglvnd - script: build.sh build: run_exports: - {{ pin_subpackage('libglvnd', max_pin='x') }} @@ -75,7 +87,6 @@ outputs: - test ! -f $PREFIX/include/glvnd/libeglabi.h - test ! -f $PREFIX/include/glvnd/libglxabi.h - name: libgl-devel - script: build.sh requirements: build: - {{ compiler('c') }} From 362070d4de8beac2ccbdcecc0282118fc22f7b02 Mon Sep 17 00:00:00 2001 From: Mark Harfouche Date: Sat, 3 Aug 2024 13:59:43 -0400 Subject: [PATCH 37/62] Change the strategy --- recipes/libglvnd/build.sh | 1 - recipes/libglvnd/build_libgl_devel.sh | 2 ++ recipes/libglvnd/build_libglvnd.sh | 4 ++++ recipes/libglvnd/meta.yaml | 13 ++++++------- 4 files changed, 12 insertions(+), 8 deletions(-) create mode 100644 recipes/libglvnd/build_libgl_devel.sh create mode 100644 recipes/libglvnd/build_libglvnd.sh diff --git a/recipes/libglvnd/build.sh b/recipes/libglvnd/build.sh index 292a66dea7f99..47e667ed0d482 100644 --- a/recipes/libglvnd/build.sh +++ b/recipes/libglvnd/build.sh @@ -18,4 +18,3 @@ meson setup builddir \ -Dheaders=true meson configure builddir ninja -v -C builddir -ninja -C builddir install diff --git a/recipes/libglvnd/build_libgl_devel.sh b/recipes/libglvnd/build_libgl_devel.sh new file mode 100644 index 0000000000000..4cd9644fd3b4e --- /dev/null +++ b/recipes/libglvnd/build_libgl_devel.sh @@ -0,0 +1,2 @@ +set -ex +ninja -C builddir install diff --git a/recipes/libglvnd/build_libglvnd.sh b/recipes/libglvnd/build_libglvnd.sh new file mode 100644 index 0000000000000..20ec6179de613 --- /dev/null +++ b/recipes/libglvnd/build_libglvnd.sh @@ -0,0 +1,4 @@ +set -ex +ninja -C builddir install +rm -rf ${PREFIX}/include +rm -rf ${PREFIX}/lib/pkgconfig diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 2054ea2105e9e..b9f27b1575449 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -29,6 +29,7 @@ requirements: outputs: - name: libglvnd + script: build_libglvnd.sh build: run_exports: - {{ pin_subpackage('libglvnd', max_pin='x') }} @@ -44,8 +45,6 @@ outputs: - xorg-libxext - xorg-xextproto - xorg-glproto - files: - - "**/*.so" test: commands: - test -f $PREFIX/lib/libEGL.so.1 @@ -87,6 +86,10 @@ outputs: - test ! -f $PREFIX/include/glvnd/libeglabi.h - test ! -f $PREFIX/include/glvnd/libglxabi.h - name: libgl-devel + script: build_libgl_devel.sh + build: + run_exports: + - {{ pin_subpackage('libglvnd', max_pin='x') }} requirements: build: - {{ compiler('c') }} @@ -99,15 +102,11 @@ outputs: - xorg-libxext - xorg-xextproto - xorg-glproto + - libglvnd run: - {{ pin_subpackage('libglvnd', exact=True) }} - xorg-xextproto - xorg-glproto - files: - include: - - "**" - exclude: - - "**/*.so" test: commands: - test -f $PREFIX/lib/pkgconfig/egl.pc From 7681ae14a3c560d8e3188c786b94a4629a93382b Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sun, 4 Aug 2024 13:33:08 +0900 Subject: [PATCH 38/62] Minor edits --- recipes/libglvnd/build_libgl_devel.sh | 4 +++- recipes/libglvnd/build_libglvnd.sh | 9 ++++++--- recipes/libglvnd/meta.yaml | 2 +- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/recipes/libglvnd/build_libgl_devel.sh b/recipes/libglvnd/build_libgl_devel.sh index 4cd9644fd3b4e..b4414e4d1f054 100644 --- a/recipes/libglvnd/build_libgl_devel.sh +++ b/recipes/libglvnd/build_libgl_devel.sh @@ -1,2 +1,4 @@ -set -ex +#!/bin/bash +set -e -x + ninja -C builddir install diff --git a/recipes/libglvnd/build_libglvnd.sh b/recipes/libglvnd/build_libglvnd.sh index 20ec6179de613..becad750863d4 100644 --- a/recipes/libglvnd/build_libglvnd.sh +++ b/recipes/libglvnd/build_libglvnd.sh @@ -1,4 +1,7 @@ -set -ex +#!/bin/bash +set -e -x + ninja -C builddir install -rm -rf ${PREFIX}/include -rm -rf ${PREFIX}/lib/pkgconfig + +rm -rf "${PREFIX}/include" +rm -rf "${PREFIX}/lib/pkgconfig" diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index b9f27b1575449..0246e24928420 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -104,9 +104,9 @@ outputs: - xorg-glproto - libglvnd run: - - {{ pin_subpackage('libglvnd', exact=True) }} - xorg-xextproto - xorg-glproto + - {{ pin_subpackage('libglvnd', exact=True) }} test: commands: - test -f $PREFIX/lib/pkgconfig/egl.pc From 6eaa4b34c79a656bc3ce0412b5901bba7f71e1bc Mon Sep 17 00:00:00 2001 From: Mark Harfouche Date: Sun, 4 Aug 2024 11:29:31 -0400 Subject: [PATCH 39/62] cleanup a little more --- recipes/libglvnd/meta.yaml | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 0246e24928420..b4e78b6655a37 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -5,10 +5,10 @@ package: version: {{ version }} source: - - url: https://gitlab.freedesktop.org/glvnd/libglvnd/-/archive/v{{ version }}/libglvnd-v{{ version }}.tar.bz2 - sha256: d0e1925a3c9aee0143b8c181ac31d5637c8faa081759c277b8e16c7075612c11 - patches: - - libglvnd_look_for_egl_icd_in_system_location.patch + url: https://gitlab.freedesktop.org/glvnd/libglvnd/-/archive/v{{ version }}/libglvnd-v{{ version }}.tar.bz2 + sha256: d0e1925a3c9aee0143b8c181ac31d5637c8faa081759c277b8e16c7075612c11 + patches: + - libglvnd_look_for_egl_icd_in_system_location.patch build: skip: true # [not linux] @@ -30,9 +30,6 @@ requirements: outputs: - name: libglvnd script: build_libglvnd.sh - build: - run_exports: - - {{ pin_subpackage('libglvnd', max_pin='x') }} requirements: build: - {{ compiler('c') }} From 446c86a3cfe37d8d11eb0900bf37b2a84162651d Mon Sep 17 00:00:00 2001 From: Mark Harfouche Date: Sun, 4 Aug 2024 12:03:24 -0400 Subject: [PATCH 40/62] Remove 1 line --- recipes/libglvnd/build.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/recipes/libglvnd/build.sh b/recipes/libglvnd/build.sh index 47e667ed0d482..0cb4db6b5bdb1 100644 --- a/recipes/libglvnd/build.sh +++ b/recipes/libglvnd/build.sh @@ -6,7 +6,6 @@ export PKG_CONFIG="${BUILD_PREFIX}/bin/pkg-config" meson setup builddir \ ${MESON_ARGS} \ - --prefix="${PREFIX}" \ -Dasm=enabled \ -Dx11=enabled \ -Degl=true \ From b3f89907ee11c430129ab800ca2f434f028c95b4 Mon Sep 17 00:00:00 2001 From: Mark Harfouche Date: Sun, 4 Aug 2024 21:19:15 -0400 Subject: [PATCH 41/62] Apply suggestions to recipe organization for test sections Co-authored-by: h-vetinari --- recipes/libglvnd/meta.yaml | 80 +++++++++++--------------------------- 1 file changed, 22 insertions(+), 58 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index b4e78b6655a37..f1f6cc33e3266 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -58,30 +58,19 @@ outputs: - test ! -f $PREFIX/lib/pkgconfig/glx.pc - test ! -f $PREFIX/lib/pkgconfig/opengl.pc - test ! -f $PREFIX/lib/pkgconfig/libglvnd.pc - - test ! -f $PREFIX/include/EGL/egl.h - - test ! -f $PREFIX/include/EGL/eglext.h - - test ! -f $PREFIX/include/EGL/eglplatform.h - - test ! -f $PREFIX/include/GL/gl.h - - test ! -f $PREFIX/include/GL/glcorearb.h - - test ! -f $PREFIX/include/GL/glext.h - - test ! -f $PREFIX/include/GL/glx.h - - test ! -f $PREFIX/include/GL/glxext.h - - test ! -f $PREFIX/include/GLES/egl.h - - test ! -f $PREFIX/include/GLES/gl.h - - test ! -f $PREFIX/include/GLES/glext.h - - test ! -f $PREFIX/include/GLES/glplatform.h - - test ! -f $PREFIX/include/GLES2/gl2.h - - test ! -f $PREFIX/include/GLES2/gl2ext.h - - test ! -f $PREFIX/include/GLES2/gl2platform.h - - test ! -f $PREFIX/include/GLES3/gl3.h - - test ! -f $PREFIX/include/GLES3/gl31.h - - test ! -f $PREFIX/include/GLES3/gl32.h - - test ! -f $PREFIX/include/GLES3/gl3ext.h - - test ! -f $PREFIX/include/GLES3/gl3platform.h - - test ! -f $PREFIX/include/KHR/khrplatform.h - - test ! -f $PREFIX/include/glvnd/GLdispatchABI.h - - test ! -f $PREFIX/include/glvnd/libeglabi.h - - test ! -f $PREFIX/include/glvnd/libglxabi.h + # absence of headers (need to go into -devel output) + {% set headers = [ + 'EGL/egl.h', 'EGL/eglext.h', 'EGL/eglplatform.h', + 'GL/gl.h', 'GL/glcorearb.h', 'GL/glext.h', 'GL/glx.h', 'GL/glxext.h', + 'GLES/egl.h', 'GLES/gl.h', 'GLES/glext.h', 'GLES/glplatform.h', + 'GLES2/gl2.h', 'GLES2/gl2ext.h', 'GLES2/gl2platform.h', + 'GLES3/gl3.h', 'GLES3/gl31.h', 'GLES3/gl32.h', 'GLES3/gl3ext.h', + 'GLES3/gl3platform.h', 'KHR/khrplatform.h', + 'glvnd/GLdispatchABI.h', 'glvnd/libeglabi.h', 'glvnd/libglxabi.h' + ] %} + {% for each_header in headers %} + - test ! -f $PREFIX/include/{{ each_header }} + {% endfor %} - name: libgl-devel script: build_libgl_devel.sh build: @@ -99,44 +88,19 @@ outputs: - xorg-libxext - xorg-xextproto - xorg-glproto - - libglvnd + - {{ pin_subpackage('libglvnd', exact=True) }} run: - - xorg-xextproto - - xorg-glproto - {{ pin_subpackage('libglvnd', exact=True) }} test: + requires: + - pkg-config commands: - - test -f $PREFIX/lib/pkgconfig/egl.pc - - test -f $PREFIX/lib/pkgconfig/gl.pc - - test -f $PREFIX/lib/pkgconfig/glesv1_cm.pc - - test -f $PREFIX/lib/pkgconfig/glesv2.pc - - test -f $PREFIX/lib/pkgconfig/glx.pc - - test -f $PREFIX/lib/pkgconfig/opengl.pc - - test -f $PREFIX/lib/pkgconfig/libglvnd.pc - - test -f $PREFIX/include/EGL/egl.h - - test -f $PREFIX/include/EGL/eglext.h - - test -f $PREFIX/include/EGL/eglplatform.h - - test -f $PREFIX/include/GL/gl.h - - test -f $PREFIX/include/GL/glcorearb.h - - test -f $PREFIX/include/GL/glext.h - - test -f $PREFIX/include/GL/glx.h - - test -f $PREFIX/include/GL/glxext.h - - test -f $PREFIX/include/GLES/egl.h - - test -f $PREFIX/include/GLES/gl.h - - test -f $PREFIX/include/GLES/glext.h - - test -f $PREFIX/include/GLES/glplatform.h - - test -f $PREFIX/include/GLES2/gl2.h - - test -f $PREFIX/include/GLES2/gl2ext.h - - test -f $PREFIX/include/GLES2/gl2platform.h - - test -f $PREFIX/include/GLES3/gl3.h - - test -f $PREFIX/include/GLES3/gl31.h - - test -f $PREFIX/include/GLES3/gl32.h - - test -f $PREFIX/include/GLES3/gl3ext.h - - test -f $PREFIX/include/GLES3/gl3platform.h - - test -f $PREFIX/include/KHR/khrplatform.h - - test -f $PREFIX/include/glvnd/GLdispatchABI.h - - test -f $PREFIX/include/glvnd/libeglabi.h - - test -f $PREFIX/include/glvnd/libglxabi.h + {% for each_lib in libraries %} + - pkg-config --print-errors --exact-version "{{ version }}" {{ each_lib | lower }} + {% endfor %} + {% for each_header in headers %} + - test -f $PREFIX/include/{{ each_header }} + {% endfor %} about: home: https://gitlab.freedesktop.org/glvnd/libglvnd From 5fda822635e5595d930f5deb5cf57ce9901914ca Mon Sep 17 00:00:00 2001 From: Mark Harfouche Date: Sun, 4 Aug 2024 22:03:10 -0400 Subject: [PATCH 42/62] Add more jinja --- recipes/libglvnd/meta.yaml | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index f1f6cc33e3266..b772d52444323 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -51,12 +51,10 @@ outputs: - test -f $PREFIX/lib/libGLX.so.0 - test -f $PREFIX/lib/libOpenGL.so.0 - test -f $PREFIX/lib/libGLdispatch.so.0 - - test ! -f $PREFIX/lib/pkgconfig/egl.pc - - test ! -f $PREFIX/lib/pkgconfig/gl.pc - - test ! -f $PREFIX/lib/pkgconfig/glesv1_cm.pc - - test ! -f $PREFIX/lib/pkgconfig/glesv2.pc - - test ! -f $PREFIX/lib/pkgconfig/glx.pc - - test ! -f $PREFIX/lib/pkgconfig/opengl.pc + {% set libraries = ["EGL", "GL", "GLESv1_CM", "GLESv2", "GLX", "OpenGL", "GLdispatch"] %} + {% for each_library in libraries %} + - test ! -f $PREFIX/lib/pkgconfig/{{ each_library | lower }}.pc + {% endfor %} - test ! -f $PREFIX/lib/pkgconfig/libglvnd.pc # absence of headers (need to go into -devel output) {% set headers = [ From 7c1d8ac607dfae164ef4d23390d0dc09592763b2 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Mon, 5 Aug 2024 13:11:18 +1100 Subject: [PATCH 43/62] more jinja --- .../flang-activation/conda_build_config.yaml | 14 +++ recipes/flang-activation/meta.yaml | 95 +++++++++++++++++++ recipes/libglvnd/meta.yaml | 25 ++--- 3 files changed, 123 insertions(+), 11 deletions(-) create mode 100644 recipes/flang-activation/conda_build_config.yaml create mode 100644 recipes/flang-activation/meta.yaml diff --git a/recipes/flang-activation/conda_build_config.yaml b/recipes/flang-activation/conda_build_config.yaml new file mode 100644 index 0000000000000..0ad69657a5b0e --- /dev/null +++ b/recipes/flang-activation/conda_build_config.yaml @@ -0,0 +1,14 @@ +CBUILD: + - x86_64-conda-linux-gnu # [linux] + - x86_64-pc-windows-msvc # [win] + +cross_target_platform: + - linux-64 # [linux] + # - emscripten-wasm32 # [linux] + - win-64 # [win] + +channel_targets: + - conda-forge llvm_rc + +channel_sources: + - conda-forge/label/llvm_rc,conda-forge diff --git a/recipes/flang-activation/meta.yaml b/recipes/flang-activation/meta.yaml new file mode 100644 index 0000000000000..66aa12c04c2b9 --- /dev/null +++ b/recipes/flang-activation/meta.yaml @@ -0,0 +1,95 @@ +# Note: there are many handy hints in comments in this example -- remove them when you've finalized your recipe +# If your package is python based, we recommend using Grayskull to generate it instead: +# https://github.com/conda-incubator/grayskull + +# Jinja variables help maintain the recipe as you'll update the version only here. +# Using the name variable with the URL in line 16 is convenient +# when copying and pasting from another recipe, but not really needed. +{% set name = "simplejson" %} +{% set version = "3.8.2" %} + +package: + name: {{ name|lower }} + version: {{ version }} + +source: + url: https://pypi.io/packages/source/{{ name[0] }}/{{ name }}/{{ name }}-{{ version }}.tar.gz + # If getting the source from GitHub, remove the line above, + # uncomment the line below, and modify as needed. Use releases if available: + # url: https://github.com/simplejson/simplejson/releases/download/{{ version }}/simplejson-{{ version }}.tar.gz + # and otherwise fall back to archive: + # url: https://github.com/simplejson/simplejson/archive/v{{ version }}.tar.gz + sha256: 2b3a0c466fb4a1014ea131c2b8ea7c519f9278eba73d6fcb361b7bdb4fd494e9 + # sha256 is the preferred checksum -- you can get it for a file with: + # `openssl sha256 `. + # You may need the openssl package, available on conda-forge: + # `conda install openssl -c conda-forge`` + +build: + # Uncomment the following line if the package is pure Python and the recipe is exactly the same for all platforms. + # It is okay if the dependencies are not built for all platforms/versions, although selectors are still not allowed. + # See https://conda-forge.org/docs/maintainer/knowledge_base.html#noarch-python for more details. + # noarch: python + # If the installation is complex, or different between Unix and Windows, use separate bld.bat and build.sh files instead of this key. + # By default, the package will be built for the Python versions supported by conda-forge and for all major OSs. + # Add the line "skip: True # [py<35]" (for example) to limit to Python 3.5 and newer, or "skip: True # [not win]" to limit to Windows. + # More info about selectors can be found in the conda-build docs: + # https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html#preprocessing-selectors + script: {{ PYTHON }} -m pip install . -vv + number: 0 + +requirements: + build: + # If your project compiles code (such as a C extension) then add the required compilers as separate entries here. + # Compilers are named 'c', 'cxx' and 'fortran'. + - {{ compiler('c') }} + host: + - python + - pip + run: + - python + +test: + # Some packages might need a `test/commands` key to check CLI. + # List all the packages/modules that `run_test.py` imports. + imports: + - simplejson + - simplejson.tests + # For python packages, it is useful to run pip check. However, sometimes the + # metadata used by pip is out of date. Thus this section is optional if it is + # failing. + requires: + - pip + commands: + - pip check + +about: + home: https://github.com/simplejson/simplejson + summary: 'Simple, fast, extensible JSON encoder/decoder for Python' + description: | + simplejson is a simple, fast, complete, correct and extensible + JSON encoder and decoder for Python 2.5+ and + Python 3.3+. It is pure Python code with no dependencies, but includes + an optional C extension for a serious speed boost. + # Remember to specify the license variants for BSD, Apache, GPL, and LGPL. + # Use the SPDX identifier, e.g: GPL-2.0-only instead of GNU General Public License version 2.0 + # See https://spdx.org/licenses/ + license: MIT + # The license_family, i.e. "BSD" if license is "BSD-3-Clause". + # Optional + license_family: MIT + # It is required to include a license file in the package, + # (even if the license doesn't require it) using the license_file entry. + # Please also note that some projects have multiple license files which all need to be added using a valid yaml list. + # See https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html#license-file + license_file: LICENSE.txt + # The doc_url and dev_url are optional. + doc_url: https://simplejson.readthedocs.io/ + dev_url: https://github.com/simplejson/simplejson + +extra: + recipe-maintainers: + # GitHub IDs for maintainers of the recipe. + # Always check with the people listed below if they are OK becoming maintainers of the recipe. (There will be spam!) + - LisaSimpson + - LandoCalrissian diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index b772d52444323..51d00a9819902 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -44,18 +44,21 @@ outputs: - xorg-glproto test: commands: - - test -f $PREFIX/lib/libEGL.so.1 - - test -f $PREFIX/lib/libGL.so.1 - - test -f $PREFIX/lib/libGLESv1_CM.so.1 - - test -f $PREFIX/lib/libGLESv2.so.2 - - test -f $PREFIX/lib/libGLX.so.0 - - test -f $PREFIX/lib/libOpenGL.so.0 - - test -f $PREFIX/lib/libGLdispatch.so.0 - {% set libraries = ["EGL", "GL", "GLESv1_CM", "GLESv2", "GLX", "OpenGL", "GLdispatch"] %} - {% for each_library in libraries %} - - test ! -f $PREFIX/lib/pkgconfig/{{ each_library | lower }}.pc + # shared libraries (change in any SOVER means we need to react on run-export) + {% set libraries = [ + "EGL.so.1", "GL.so.1", "GLESv1_CM.so.1", "GLESv2.so.2", + "GLX.so.0", "OpenGL.so.0", "GLdispatch.so.0" + ] %} + {% for each_lib in libraries %} + - test -f $PREFIX/lib/lib{{ each_lib }} + {% endfor %} + + # absence of pkg-config metadata (needs to go into -devel output) + {% for each_lib in libraries %} + - test ! -f $PREFIX/lib/pkgconfig/{{ each_lib.split(".")[0]|lower }}.pc {% endfor %} - test ! -f $PREFIX/lib/pkgconfig/libglvnd.pc + # absence of headers (need to go into -devel output) {% set headers = [ 'EGL/egl.h', 'EGL/eglext.h', 'EGL/eglplatform.h', @@ -94,7 +97,7 @@ outputs: - pkg-config commands: {% for each_lib in libraries %} - - pkg-config --print-errors --exact-version "{{ version }}" {{ each_lib | lower }} + - pkg-config --print-errors --exact-version "{{ version }}" {{ each_lib.split(".")[0]|lower }} {% endfor %} {% for each_header in headers %} - test -f $PREFIX/include/{{ each_header }} From 6b621a76483a946cb621ec0739994fc7b9b6902d Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Mon, 5 Aug 2024 13:11:44 +1100 Subject: [PATCH 44/62] do not require exact version match in pkg-config check (as versions differ) --- recipes/libglvnd/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 51d00a9819902..909308eecaae3 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -97,7 +97,7 @@ outputs: - pkg-config commands: {% for each_lib in libraries %} - - pkg-config --print-errors --exact-version "{{ version }}" {{ each_lib.split(".")[0]|lower }} + - pkg-config --print-errors {{ each_lib.split(".")[0]|lower }} {% endfor %} {% for each_header in headers %} - test -f $PREFIX/include/{{ each_header }} From 49cf06bef3598d6536d5f1d07c0b1f4093423eb2 Mon Sep 17 00:00:00 2001 From: Mark Harfouche Date: Sun, 4 Aug 2024 22:17:47 -0400 Subject: [PATCH 45/62] don't do flang --- .../flang-activation/conda_build_config.yaml | 14 --- recipes/flang-activation/meta.yaml | 95 ------------------- 2 files changed, 109 deletions(-) delete mode 100644 recipes/flang-activation/conda_build_config.yaml delete mode 100644 recipes/flang-activation/meta.yaml diff --git a/recipes/flang-activation/conda_build_config.yaml b/recipes/flang-activation/conda_build_config.yaml deleted file mode 100644 index 0ad69657a5b0e..0000000000000 --- a/recipes/flang-activation/conda_build_config.yaml +++ /dev/null @@ -1,14 +0,0 @@ -CBUILD: - - x86_64-conda-linux-gnu # [linux] - - x86_64-pc-windows-msvc # [win] - -cross_target_platform: - - linux-64 # [linux] - # - emscripten-wasm32 # [linux] - - win-64 # [win] - -channel_targets: - - conda-forge llvm_rc - -channel_sources: - - conda-forge/label/llvm_rc,conda-forge diff --git a/recipes/flang-activation/meta.yaml b/recipes/flang-activation/meta.yaml deleted file mode 100644 index 66aa12c04c2b9..0000000000000 --- a/recipes/flang-activation/meta.yaml +++ /dev/null @@ -1,95 +0,0 @@ -# Note: there are many handy hints in comments in this example -- remove them when you've finalized your recipe -# If your package is python based, we recommend using Grayskull to generate it instead: -# https://github.com/conda-incubator/grayskull - -# Jinja variables help maintain the recipe as you'll update the version only here. -# Using the name variable with the URL in line 16 is convenient -# when copying and pasting from another recipe, but not really needed. -{% set name = "simplejson" %} -{% set version = "3.8.2" %} - -package: - name: {{ name|lower }} - version: {{ version }} - -source: - url: https://pypi.io/packages/source/{{ name[0] }}/{{ name }}/{{ name }}-{{ version }}.tar.gz - # If getting the source from GitHub, remove the line above, - # uncomment the line below, and modify as needed. Use releases if available: - # url: https://github.com/simplejson/simplejson/releases/download/{{ version }}/simplejson-{{ version }}.tar.gz - # and otherwise fall back to archive: - # url: https://github.com/simplejson/simplejson/archive/v{{ version }}.tar.gz - sha256: 2b3a0c466fb4a1014ea131c2b8ea7c519f9278eba73d6fcb361b7bdb4fd494e9 - # sha256 is the preferred checksum -- you can get it for a file with: - # `openssl sha256 `. - # You may need the openssl package, available on conda-forge: - # `conda install openssl -c conda-forge`` - -build: - # Uncomment the following line if the package is pure Python and the recipe is exactly the same for all platforms. - # It is okay if the dependencies are not built for all platforms/versions, although selectors are still not allowed. - # See https://conda-forge.org/docs/maintainer/knowledge_base.html#noarch-python for more details. - # noarch: python - # If the installation is complex, or different between Unix and Windows, use separate bld.bat and build.sh files instead of this key. - # By default, the package will be built for the Python versions supported by conda-forge and for all major OSs. - # Add the line "skip: True # [py<35]" (for example) to limit to Python 3.5 and newer, or "skip: True # [not win]" to limit to Windows. - # More info about selectors can be found in the conda-build docs: - # https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html#preprocessing-selectors - script: {{ PYTHON }} -m pip install . -vv - number: 0 - -requirements: - build: - # If your project compiles code (such as a C extension) then add the required compilers as separate entries here. - # Compilers are named 'c', 'cxx' and 'fortran'. - - {{ compiler('c') }} - host: - - python - - pip - run: - - python - -test: - # Some packages might need a `test/commands` key to check CLI. - # List all the packages/modules that `run_test.py` imports. - imports: - - simplejson - - simplejson.tests - # For python packages, it is useful to run pip check. However, sometimes the - # metadata used by pip is out of date. Thus this section is optional if it is - # failing. - requires: - - pip - commands: - - pip check - -about: - home: https://github.com/simplejson/simplejson - summary: 'Simple, fast, extensible JSON encoder/decoder for Python' - description: | - simplejson is a simple, fast, complete, correct and extensible - JSON encoder and decoder for Python 2.5+ and - Python 3.3+. It is pure Python code with no dependencies, but includes - an optional C extension for a serious speed boost. - # Remember to specify the license variants for BSD, Apache, GPL, and LGPL. - # Use the SPDX identifier, e.g: GPL-2.0-only instead of GNU General Public License version 2.0 - # See https://spdx.org/licenses/ - license: MIT - # The license_family, i.e. "BSD" if license is "BSD-3-Clause". - # Optional - license_family: MIT - # It is required to include a license file in the package, - # (even if the license doesn't require it) using the license_file entry. - # Please also note that some projects have multiple license files which all need to be added using a valid yaml list. - # See https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html#license-file - license_file: LICENSE.txt - # The doc_url and dev_url are optional. - doc_url: https://simplejson.readthedocs.io/ - dev_url: https://github.com/simplejson/simplejson - -extra: - recipe-maintainers: - # GitHub IDs for maintainers of the recipe. - # Always check with the people listed below if they are OK becoming maintainers of the recipe. (There will be spam!) - - LisaSimpson - - LandoCalrissian From 44eb66370791c04873e6dc6f8571da088caac045 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Mon, 5 Aug 2024 13:31:32 +1100 Subject: [PATCH 46/62] gldispatch doesn't have matching name for pkgconfig --- recipes/libglvnd/meta.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 909308eecaae3..2f4ecd03e93d0 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -97,8 +97,10 @@ outputs: - pkg-config commands: {% for each_lib in libraries %} - - pkg-config --print-errors {{ each_lib.split(".")[0]|lower }} + {% set libname = "libglvnd" if each_lib == "GLdispatch.so.0" else each_lib.split(".")[0]|lower %} + - pkg-config --print-errors {{ libname }} {% endfor %} + {% for each_header in headers %} - test -f $PREFIX/include/{{ each_header }} {% endfor %} From d2bf7b7fb11db1f46f0fca485cfd9d8d3015a121 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Mon, 5 Aug 2024 17:14:39 +0900 Subject: [PATCH 47/62] Clarify dependencies --- .../{build_libglvnd.sh => install_libglvnd.sh} | 0 ...ld_libgl_devel.sh => install_libglvnd_devel.sh} | 0 recipes/libglvnd/meta.yaml | 14 ++++++++------ 3 files changed, 8 insertions(+), 6 deletions(-) rename recipes/libglvnd/{build_libglvnd.sh => install_libglvnd.sh} (100%) rename recipes/libglvnd/{build_libgl_devel.sh => install_libglvnd_devel.sh} (100%) diff --git a/recipes/libglvnd/build_libglvnd.sh b/recipes/libglvnd/install_libglvnd.sh similarity index 100% rename from recipes/libglvnd/build_libglvnd.sh rename to recipes/libglvnd/install_libglvnd.sh diff --git a/recipes/libglvnd/build_libgl_devel.sh b/recipes/libglvnd/install_libglvnd_devel.sh similarity index 100% rename from recipes/libglvnd/build_libgl_devel.sh rename to recipes/libglvnd/install_libglvnd_devel.sh diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 2f4ecd03e93d0..a0da815df0cfc 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -29,7 +29,7 @@ requirements: outputs: - name: libglvnd - script: build_libglvnd.sh + script: install_libglvnd.sh requirements: build: - {{ compiler('c') }} @@ -44,7 +44,7 @@ outputs: - xorg-glproto test: commands: - # shared libraries (change in any SOVER means we need to react on run-export) + # Shared libraries (change in any SOVER means we need to react on run-export) {% set libraries = [ "EGL.so.1", "GL.so.1", "GLESv1_CM.so.1", "GLESv2.so.2", "GLX.so.0", "OpenGL.so.0", "GLdispatch.so.0" @@ -53,13 +53,13 @@ outputs: - test -f $PREFIX/lib/lib{{ each_lib }} {% endfor %} - # absence of pkg-config metadata (needs to go into -devel output) + # Absence of pkg-config metadata (needs to go into -devel output) {% for each_lib in libraries %} - test ! -f $PREFIX/lib/pkgconfig/{{ each_lib.split(".")[0]|lower }}.pc {% endfor %} - test ! -f $PREFIX/lib/pkgconfig/libglvnd.pc - # absence of headers (need to go into -devel output) + # Absence of headers (need to go into -devel output) {% set headers = [ 'EGL/egl.h', 'EGL/eglext.h', 'EGL/eglplatform.h', 'GL/gl.h', 'GL/glcorearb.h', 'GL/glext.h', 'GL/glx.h', 'GL/glxext.h', @@ -72,8 +72,8 @@ outputs: {% for each_header in headers %} - test ! -f $PREFIX/include/{{ each_header }} {% endfor %} - - name: libgl-devel - script: build_libgl_devel.sh + - name: libglvnd-devel + script: install_libglvnd_devel.sh build: run_exports: - {{ pin_subpackage('libglvnd', max_pin='x') }} @@ -91,6 +91,8 @@ outputs: - xorg-glproto - {{ pin_subpackage('libglvnd', exact=True) }} run: + - xorg-xextproto + - xorg-glproto - {{ pin_subpackage('libglvnd', exact=True) }} test: requires: From 1f92ce4608aa170e3fa93d3591f116a9de82719f Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Mon, 5 Aug 2024 17:38:08 +0900 Subject: [PATCH 48/62] Add comments --- recipes/libglvnd/meta.yaml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index a0da815df0cfc..37855942b399b 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -45,6 +45,7 @@ outputs: test: commands: # Shared libraries (change in any SOVER means we need to react on run-export) + # OpenGL applications typically link to the shared object library with the major SOVER attached {% set libraries = [ "EGL.so.1", "GL.so.1", "GLESv1_CM.so.1", "GLESv2.so.2", "GLX.so.0", "OpenGL.so.0", "GLdispatch.so.0" @@ -55,9 +56,8 @@ outputs: # Absence of pkg-config metadata (needs to go into -devel output) {% for each_lib in libraries %} - - test ! -f $PREFIX/lib/pkgconfig/{{ each_lib.split(".")[0]|lower }}.pc + - test ! -f $PREFIX/lib/pkgconfig/{{ "libglvnd" if each_lib == "GLdispatch.so.0" else each_lib.split(".")[0]|lower }}.pc {% endfor %} - - test ! -f $PREFIX/lib/pkgconfig/libglvnd.pc # Absence of headers (need to go into -devel output) {% set headers = [ @@ -91,6 +91,7 @@ outputs: - xorg-glproto - {{ pin_subpackage('libglvnd', exact=True) }} run: + # xorg-xextproto and xorg-glproto are dependencies to the libglvnd headers - xorg-xextproto - xorg-glproto - {{ pin_subpackage('libglvnd', exact=True) }} @@ -119,3 +120,4 @@ extra: - ehfd - traversaro - hmaarrfk + - h-vetinari From 5bc3dbbaa4daae4e459024038d56979addde127b Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Mon, 5 Aug 2024 09:45:57 -0500 Subject: [PATCH 49/62] WIP split --- recipes/libglvnd/meta.yaml | 99 +++++++++++++++++++++----------------- 1 file changed, 55 insertions(+), 44 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 37855942b399b..57055afbca4ff 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -29,7 +29,8 @@ requirements: outputs: - name: libglvnd - script: install_libglvnd.sh + files: + - lib/libGLdispatch.so.* requirements: build: - {{ compiler('c') }} @@ -37,46 +38,40 @@ outputs: - meson - pkg-config - ninja - host: - - xorg-libx11 - - xorg-libxext - - xorg-xextproto - - xorg-glproto test: commands: # Shared libraries (change in any SOVER means we need to react on run-export) - # OpenGL applications typically link to the shared object library with the major SOVER attached - {% set libraries = [ - "EGL.so.1", "GL.so.1", "GLESv1_CM.so.1", "GLESv2.so.2", - "GLX.so.0", "OpenGL.so.0", "GLdispatch.so.0" - ] %} - {% for each_lib in libraries %} - - test -f $PREFIX/lib/lib{{ each_lib }} - {% endfor %} + - test -f $PREFIX/lib/libGLdispatch.so.0 - # Absence of pkg-config metadata (needs to go into -devel output) - {% for each_lib in libraries %} - - test ! -f $PREFIX/lib/pkgconfig/{{ "libglvnd" if each_lib == "GLdispatch.so.0" else each_lib.split(".")[0]|lower }}.pc - {% endfor %} - - # Absence of headers (need to go into -devel output) - {% set headers = [ - 'EGL/egl.h', 'EGL/eglext.h', 'EGL/eglplatform.h', - 'GL/gl.h', 'GL/glcorearb.h', 'GL/glext.h', 'GL/glx.h', 'GL/glxext.h', - 'GLES/egl.h', 'GLES/gl.h', 'GLES/glext.h', 'GLES/glplatform.h', - 'GLES2/gl2.h', 'GLES2/gl2ext.h', 'GLES2/gl2platform.h', - 'GLES3/gl3.h', 'GLES3/gl31.h', 'GLES3/gl32.h', 'GLES3/gl3ext.h', - 'GLES3/gl3platform.h', 'KHR/khrplatform.h', - 'glvnd/GLdispatchABI.h', 'glvnd/libeglabi.h', 'glvnd/libglxabi.h' - ] %} - {% for each_header in headers %} - - test ! -f $PREFIX/include/{{ each_header }} - {% endfor %} - name: libglvnd-devel - script: install_libglvnd_devel.sh + files: + - lib/pkgconfig/libglvnd.pc + - lib/libGLdispatch.so + - include/glvnd build: run_exports: - {{ pin_subpackage('libglvnd', max_pin='x') }} + requirements: + build: + - {{ compiler('c') }} + - {{ stdlib('c') }} + - meson + - pkg-config + - ninja + host: + - {{ pin_subpackage('libglvnd', exact=True) }} + run: + - {{ pin_subpackage('libglvnd', exact=True) }} + test: + requires: + - pkg-config + commands: + - pkg-config --print-errors libglvnd + - test -f $PREFIX/include/glvnd/GLdispatchABI.h + + - name: libglx + files: + - lib/libGLX.so.* requirements: build: - {{ compiler('c') }} @@ -91,22 +86,38 @@ outputs: - xorg-glproto - {{ pin_subpackage('libglvnd', exact=True) }} run: - # xorg-xextproto and xorg-glproto are dependencies to the libglvnd headers - - xorg-xextproto - - xorg-glproto - {{ pin_subpackage('libglvnd', exact=True) }} + test: + commands: + # Shared libraries (change in any SOVER means we need to react on run-export) + - test -f $PREFIX/lib/libGLX.so.0 + + - name: libglx-devel + files: + - lib/pkgconfig/libglx.pc + - lib/libGLX.so + - include/GL/glx* + build: + run_exports: + - {{ pin_subpackage('libglx', max_pin='x') }} + requirements: + build: + - {{ compiler('c') }} + - {{ stdlib('c') }} + - meson + - pkg-config + - ninja + host: + - {{ pin_subpackage('libglx', exact=True) }} + run: + - {{ pin_subpackage('libglx', exact=True) }} test: requires: - pkg-config commands: - {% for each_lib in libraries %} - {% set libname = "libglvnd" if each_lib == "GLdispatch.so.0" else each_lib.split(".")[0]|lower %} - - pkg-config --print-errors {{ libname }} - {% endfor %} - - {% for each_header in headers %} - - test -f $PREFIX/include/{{ each_header }} - {% endfor %} + - pkg-config --print-errors libglx + - test -f $PREFIX/include/GL/glx.h + - test -f $PREFIX/include/GL/glxext.h about: home: https://gitlab.freedesktop.org/glvnd/libglvnd From 6cd20fed4e1107969ebf8e38876738b495434b75 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Mon, 5 Aug 2024 09:48:30 -0500 Subject: [PATCH 50/62] WIP 2 --- recipes/libglvnd/build.sh | 2 ++ recipes/libglvnd/install_libglvnd.sh | 7 ------- recipes/libglvnd/install_libglvnd_devel.sh | 4 ---- 3 files changed, 2 insertions(+), 11 deletions(-) delete mode 100644 recipes/libglvnd/install_libglvnd.sh delete mode 100644 recipes/libglvnd/install_libglvnd_devel.sh diff --git a/recipes/libglvnd/build.sh b/recipes/libglvnd/build.sh index 0cb4db6b5bdb1..0a8700f2f75db 100644 --- a/recipes/libglvnd/build.sh +++ b/recipes/libglvnd/build.sh @@ -17,3 +17,5 @@ meson setup builddir \ -Dheaders=true meson configure builddir ninja -v -C builddir + +ninja -C builddir install diff --git a/recipes/libglvnd/install_libglvnd.sh b/recipes/libglvnd/install_libglvnd.sh deleted file mode 100644 index becad750863d4..0000000000000 --- a/recipes/libglvnd/install_libglvnd.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash -set -e -x - -ninja -C builddir install - -rm -rf "${PREFIX}/include" -rm -rf "${PREFIX}/lib/pkgconfig" diff --git a/recipes/libglvnd/install_libglvnd_devel.sh b/recipes/libglvnd/install_libglvnd_devel.sh deleted file mode 100644 index b4414e4d1f054..0000000000000 --- a/recipes/libglvnd/install_libglvnd_devel.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/bash -set -e -x - -ninja -C builddir install From 5d98859358c5acb8c1212dec6ca598c1c50c734f Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sun, 11 Aug 2024 19:58:56 +0900 Subject: [PATCH 51/62] Overhaul and split libraries --- recipes/libglvnd/meta.yaml | 265 +++++++++++++++++++++++++++++++++++-- 1 file changed, 254 insertions(+), 11 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 57055afbca4ff..1a6404c29d33f 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -30,7 +30,7 @@ requirements: outputs: - name: libglvnd files: - - lib/libGLdispatch.so.* + - "lib/libGLdispatch.so.*" requirements: build: - {{ compiler('c') }} @@ -43,11 +43,30 @@ outputs: # Shared libraries (change in any SOVER means we need to react on run-export) - test -f $PREFIX/lib/libGLdispatch.so.0 - - name: libglvnd-devel + - name: libglvnd-core-devel files: - lib/pkgconfig/libglvnd.pc - - lib/libGLdispatch.so - include/glvnd + requirements: + build: + - {{ compiler('c') }} + - {{ stdlib('c') }} + - meson + - pkg-config + - ninja + test: + commands: + # The libglvnd-core-devel package is a bootstrap trick for Mesa + # which wants to build against the libglvnd headers + # but does not link against any of its libraries + - test -f $PREFIX/lib/pkgconfig/libglvnd.pc + - test -f $PREFIX/include/glvnd/GLdispatchABI.h + - test -f $PREFIX/include/glvnd/libeglabi.h + - test -f $PREFIX/include/glvnd/libglxabi.h + + - name: libglvnd-devel + files: + - lib/libGLdispatch.so build: run_exports: - {{ pin_subpackage('libglvnd', max_pin='x') }} @@ -60,18 +79,62 @@ outputs: - ninja host: - {{ pin_subpackage('libglvnd', exact=True) }} + - {{ pin_subpackage('libglvnd-core-devel', exact=True) }} run: - {{ pin_subpackage('libglvnd', exact=True) }} + - {{ pin_subpackage('libglvnd-core-devel', exact=True) }} test: requires: - pkg-config commands: - pkg-config --print-errors libglvnd - - test -f $PREFIX/include/glvnd/GLdispatchABI.h + + - name: libopengl + files: + - "lib/libOpenGL.so.*" + requirements: + build: + - {{ compiler('c') }} + - {{ stdlib('c') }} + - meson + - pkg-config + - ninja + host: + - {{ pin_subpackage('libglvnd', exact=True) }} + run: + - {{ pin_subpackage('libglvnd', exact=True) }} + test: + commands: + # Shared libraries (change in any SOVER means we need to react on run-export) + - test -f $PREFIX/lib/libOpenGL.so.0 + + - name: libopengl-devel + files: + - lib/libOpenGL.so + - lib/pkgconfig/opengl.pc + build: + run_exports: + - {{ pin_subpackage('libopengl', max_pin='x') }} + requirements: + build: + - {{ compiler('c') }} + - {{ stdlib('c') }} + - meson + - pkg-config + - ninja + host: + - {{ pin_subpackage('libopengl', exact=True) }} + run: + - {{ pin_subpackage('libopengl', exact=True) }} + test: + requires: + - pkg-config + commands: + - pkg-config --print-errors opengl - name: libglx files: - - lib/libGLX.so.* + - "lib/libGLX.so.*" requirements: build: - {{ compiler('c') }} @@ -80,11 +143,8 @@ outputs: - pkg-config - ninja host: - - xorg-libx11 - - xorg-libxext - - xorg-xextproto - - xorg-glproto - {{ pin_subpackage('libglvnd', exact=True) }} + - xorg-libx11 run: - {{ pin_subpackage('libglvnd', exact=True) }} test: @@ -94,9 +154,9 @@ outputs: - name: libglx-devel files: - - lib/pkgconfig/libglx.pc - lib/libGLX.so - - include/GL/glx* + - lib/pkgconfig/libglx.pc + - "include/GL/glx*" build: run_exports: - {{ pin_subpackage('libglx', max_pin='x') }} @@ -108,8 +168,13 @@ outputs: - pkg-config - ninja host: + - xorg-libxext + - xorg-xextproto + - xorg-glproto - {{ pin_subpackage('libglx', exact=True) }} run: + - xorg-xextproto + - xorg-glproto - {{ pin_subpackage('libglx', exact=True) }} test: requires: @@ -119,6 +184,183 @@ outputs: - test -f $PREFIX/include/GL/glx.h - test -f $PREFIX/include/GL/glxext.h + - name: libgl + files: + - "lib/libGL.so.*" + requirements: + build: + - {{ compiler('c') }} + - {{ stdlib('c') }} + - meson + - pkg-config + - ninja + host: + - {{ pin_subpackage('libglvnd', exact=True) }} + - {{ pin_subpackage('libglx', exact=True) }} + run: + - {{ pin_subpackage('libglvnd', exact=True) }} + - {{ pin_subpackage('libglx', exact=True) }} + test: + commands: + # Shared libraries (change in any SOVER means we need to react on run-export) + - test -f $PREFIX/lib/libGL.so.0 + + - name: libgl-devel + files: + - lib/libGL.so + - lib/pkgconfig/libgl.pc + - include/GL + - include/KHR + build: + run_exports: + - {{ pin_subpackage('libgl', max_pin='x') }} + requirements: + build: + - {{ compiler('c') }} + - {{ stdlib('c') }} + - meson + - pkg-config + - ninja + host: + - {{ pin_subpackage('libgl', exact=True) }} + - {{ pin_subpackage('libglx-devel', exact=True) }} + run: + - {{ pin_subpackage('libgl', exact=True) }} + - {{ pin_subpackage('libglx-devel', exact=True) }} + test: + requires: + - pkg-config + commands: + - pkg-config --print-errors libgl + - test -f $PREFIX/include/GL/gl.h + - test -f $PREFIX/include/GL/glcorearb.h + - test -f $PREFIX/include/GL/glext.h + - test -f $PREFIX/include/KHR/khrplatform.h + + - name: libegl + files: + - "lib/libEGL.so.*" + requirements: + build: + - {{ compiler('c') }} + - {{ stdlib('c') }} + - meson + - pkg-config + - ninja + host: + - {{ pin_subpackage('libglvnd', exact=True) }} + run: + - {{ pin_subpackage('libglvnd', exact=True) }} + test: + commands: + # Shared libraries (change in any SOVER means we need to react on run-export) + - test -f $PREFIX/lib/libEGL.so.0 + + - name: libegl-devel + files: + - lib/libEGL.so + - lib/pkgconfig/libegl.pc + - include/EGL + build: + run_exports: + - {{ pin_subpackage('libegl', max_pin='x') }} + ignore_run_exports_from: + - libgl-devel + - xorg-libx11 + requirements: + build: + - {{ compiler('c') }} + - {{ stdlib('c') }} + - meson + - pkg-config + - ninja + host: + - {{ pin_subpackage('libegl', exact=True) }} + - {{ pin_subpackage('libgl-devel', exact=True) }} + - xorg-libx11 + run: + - {{ pin_subpackage('libegl', exact=True) }} + - {{ pin_subpackage('libgl-devel', exact=True) }} + - xorg-libx11 + test: + requires: + - pkg-config + commands: + - pkg-config --print-errors libegl + - test -f $PREFIX/include/EGL/egl.h + - test -f $PREFIX/include/EGL/eglext.h + - test -f $PREFIX/include/EGL/eglplatform.h + + - name: libgles + files: + - "lib/libGLESv1_CM.so.*" + - "lib/libGLESv2.so.*" + requirements: + build: + - {{ compiler('c') }} + - {{ stdlib('c') }} + - meson + - pkg-config + - ninja + host: + - {{ pin_subpackage('libglvnd', exact=True) }} + run: + - {{ pin_subpackage('libglvnd', exact=True) }} + test: + commands: + # Shared libraries (change in any SOVER means we need to react on run-export) + - test -f $PREFIX/lib/libGLESv1_CM.so.1 + - test -f $PREFIX/lib/libGLESv2.so.2 + + - name: libgles-devel + files: + - lib/libGLESv1_CM.so + - lib/libGLESv2.so + - lib/pkgconfig/glesv1_cm.pc + - lib/pkgconfig/glesv2.pc + - include/GLES + - include/GLES2 + - include/GLES3 + build: + run_exports: + - {{ pin_subpackage('libgles', max_pin='x') }} + ignore_run_exports_from: + - libegl-devel + - libgl-devel + requirements: + build: + - {{ compiler('c') }} + - {{ stdlib('c') }} + - meson + - pkg-config + - ninja + host: + - {{ pin_subpackage('libgles', exact=True) }} + - {{ pin_subpackage('libegl-devel', exact=True) }} + - {{ pin_subpackage('libgl-devel', exact=True) }} + run: + - {{ pin_subpackage('libgles', exact=True) }} + - {{ pin_subpackage('libegl-devel', exact=True) }} + - {{ pin_subpackage('libgl-devel', exact=True) }} + test: + requires: + - pkg-config + commands: + - pkg-config --print-errors glesv1_cm + - pkg-config --print-errors glesv2 + - test -f $PREFIX/include/GLES/egl.h + - test -f $PREFIX/include/GLES/gl.h + - test -f $PREFIX/include/GLES/glext.h + - test -f $PREFIX/include/GLES/glplatform.h + - test -f $PREFIX/include/GLES2/gl2.h + - test -f $PREFIX/include/GLES2/gl2ext.h + - test -f $PREFIX/include/GLES2/gl2platform.h + - test -f $PREFIX/include/GLES3/gl3.h + - test -f $PREFIX/include/GLES3/gl31.h + - test -f $PREFIX/include/GLES3/gl32.h + - test -f $PREFIX/include/GLES3/gl3ext.h + - test -f $PREFIX/include/GLES3/gl3platform.h + about: home: https://gitlab.freedesktop.org/glvnd/libglvnd license: LicenseRef-libglvnd @@ -132,3 +374,4 @@ extra: - traversaro - hmaarrfk - h-vetinari + - isuruf From f9e72e95afbca4c7e7fa41146d3bfbe8d80933cb Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sun, 11 Aug 2024 20:02:17 +0900 Subject: [PATCH 52/62] Minor edit --- recipes/libglvnd/build.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/recipes/libglvnd/build.sh b/recipes/libglvnd/build.sh index 0a8700f2f75db..dd7337a268664 100644 --- a/recipes/libglvnd/build.sh +++ b/recipes/libglvnd/build.sh @@ -2,7 +2,7 @@ set -e -x # Get meson to find pkg-config when cross compiling -export PKG_CONFIG="${BUILD_PREFIX}/bin/pkg-config" +export PKG_CONFIG="${PREFIX}/bin/pkg-config:${BUILD_PREFIX}/bin/pkg-config" meson setup builddir \ ${MESON_ARGS} \ @@ -17,5 +17,4 @@ meson setup builddir \ -Dheaders=true meson configure builddir ninja -v -C builddir - ninja -C builddir install From 3929544343b492366091e8e5740045610ad789be Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sun, 11 Aug 2024 20:03:45 +0900 Subject: [PATCH 53/62] Minor edit --- recipes/libglvnd/build.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/libglvnd/build.sh b/recipes/libglvnd/build.sh index dd7337a268664..72a6beacadebd 100644 --- a/recipes/libglvnd/build.sh +++ b/recipes/libglvnd/build.sh @@ -2,7 +2,7 @@ set -e -x # Get meson to find pkg-config when cross compiling -export PKG_CONFIG="${PREFIX}/bin/pkg-config:${BUILD_PREFIX}/bin/pkg-config" +export PKG_CONFIG="${BUILD_PREFIX}/bin/pkg-config" meson setup builddir \ ${MESON_ARGS} \ From 358b035b5cac2fca3da36f7046c6b7e442835c14 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sun, 11 Aug 2024 20:12:09 +0900 Subject: [PATCH 54/62] Fix pkg-config --- recipes/libglvnd/meta.yaml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 1a6404c29d33f..ae0a98defc9fd 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -155,7 +155,7 @@ outputs: - name: libglx-devel files: - lib/libGLX.so - - lib/pkgconfig/libglx.pc + - lib/pkgconfig/glx.pc - "include/GL/glx*" build: run_exports: @@ -180,7 +180,7 @@ outputs: requires: - pkg-config commands: - - pkg-config --print-errors libglx + - pkg-config --print-errors glx - test -f $PREFIX/include/GL/glx.h - test -f $PREFIX/include/GL/glxext.h @@ -208,7 +208,7 @@ outputs: - name: libgl-devel files: - lib/libGL.so - - lib/pkgconfig/libgl.pc + - lib/pkgconfig/gl.pc - include/GL - include/KHR build: @@ -231,7 +231,7 @@ outputs: requires: - pkg-config commands: - - pkg-config --print-errors libgl + - pkg-config --print-errors gl - test -f $PREFIX/include/GL/gl.h - test -f $PREFIX/include/GL/glcorearb.h - test -f $PREFIX/include/GL/glext.h @@ -259,7 +259,7 @@ outputs: - name: libegl-devel files: - lib/libEGL.so - - lib/pkgconfig/libegl.pc + - lib/pkgconfig/egl.pc - include/EGL build: run_exports: @@ -286,7 +286,7 @@ outputs: requires: - pkg-config commands: - - pkg-config --print-errors libegl + - pkg-config --print-errors egl - test -f $PREFIX/include/EGL/egl.h - test -f $PREFIX/include/EGL/eglext.h - test -f $PREFIX/include/EGL/eglplatform.h From beff77e0bb42bb05f60b86665a5ec07006b4a27f Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sun, 11 Aug 2024 20:25:55 +0900 Subject: [PATCH 55/62] Reduce build dependencies in install --- recipes/libglvnd/meta.yaml | 59 ++++---------------------------------- 1 file changed, 5 insertions(+), 54 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index ae0a98defc9fd..327a975d1ca40 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -33,11 +33,7 @@ outputs: - "lib/libGLdispatch.so.*" requirements: build: - - {{ compiler('c') }} - {{ stdlib('c') }} - - meson - - pkg-config - - ninja test: commands: # Shared libraries (change in any SOVER means we need to react on run-export) @@ -49,11 +45,7 @@ outputs: - include/glvnd requirements: build: - - {{ compiler('c') }} - {{ stdlib('c') }} - - meson - - pkg-config - - ninja test: commands: # The libglvnd-core-devel package is a bootstrap trick for Mesa @@ -72,11 +64,7 @@ outputs: - {{ pin_subpackage('libglvnd', max_pin='x') }} requirements: build: - - {{ compiler('c') }} - {{ stdlib('c') }} - - meson - - pkg-config - - ninja host: - {{ pin_subpackage('libglvnd', exact=True) }} - {{ pin_subpackage('libglvnd-core-devel', exact=True) }} @@ -94,11 +82,7 @@ outputs: - "lib/libOpenGL.so.*" requirements: build: - - {{ compiler('c') }} - {{ stdlib('c') }} - - meson - - pkg-config - - ninja host: - {{ pin_subpackage('libglvnd', exact=True) }} run: @@ -117,11 +101,7 @@ outputs: - {{ pin_subpackage('libopengl', max_pin='x') }} requirements: build: - - {{ compiler('c') }} - {{ stdlib('c') }} - - meson - - pkg-config - - ninja host: - {{ pin_subpackage('libopengl', exact=True) }} run: @@ -137,11 +117,7 @@ outputs: - "lib/libGLX.so.*" requirements: build: - - {{ compiler('c') }} - {{ stdlib('c') }} - - meson - - pkg-config - - ninja host: - {{ pin_subpackage('libglvnd', exact=True) }} - xorg-libx11 @@ -160,22 +136,21 @@ outputs: build: run_exports: - {{ pin_subpackage('libglx', max_pin='x') }} + ignore_run_exports_from: + - xorg-libxext requirements: build: - - {{ compiler('c') }} - {{ stdlib('c') }} - - meson - - pkg-config - - ninja host: + - {{ pin_subpackage('libglx', exact=True) }} + - xorg-libx11 - xorg-libxext - xorg-xextproto - xorg-glproto - - {{ pin_subpackage('libglx', exact=True) }} run: + - {{ pin_subpackage('libglx', exact=True) }} - xorg-xextproto - xorg-glproto - - {{ pin_subpackage('libglx', exact=True) }} test: requires: - pkg-config @@ -189,11 +164,7 @@ outputs: - "lib/libGL.so.*" requirements: build: - - {{ compiler('c') }} - {{ stdlib('c') }} - - meson - - pkg-config - - ninja host: - {{ pin_subpackage('libglvnd', exact=True) }} - {{ pin_subpackage('libglx', exact=True) }} @@ -216,11 +187,7 @@ outputs: - {{ pin_subpackage('libgl', max_pin='x') }} requirements: build: - - {{ compiler('c') }} - {{ stdlib('c') }} - - meson - - pkg-config - - ninja host: - {{ pin_subpackage('libgl', exact=True) }} - {{ pin_subpackage('libglx-devel', exact=True) }} @@ -242,11 +209,7 @@ outputs: - "lib/libEGL.so.*" requirements: build: - - {{ compiler('c') }} - {{ stdlib('c') }} - - meson - - pkg-config - - ninja host: - {{ pin_subpackage('libglvnd', exact=True) }} run: @@ -269,11 +232,7 @@ outputs: - xorg-libx11 requirements: build: - - {{ compiler('c') }} - {{ stdlib('c') }} - - meson - - pkg-config - - ninja host: - {{ pin_subpackage('libegl', exact=True) }} - {{ pin_subpackage('libgl-devel', exact=True) }} @@ -297,11 +256,7 @@ outputs: - "lib/libGLESv2.so.*" requirements: build: - - {{ compiler('c') }} - {{ stdlib('c') }} - - meson - - pkg-config - - ninja host: - {{ pin_subpackage('libglvnd', exact=True) }} run: @@ -329,11 +284,7 @@ outputs: - libgl-devel requirements: build: - - {{ compiler('c') }} - {{ stdlib('c') }} - - meson - - pkg-config - - ninja host: - {{ pin_subpackage('libgles', exact=True) }} - {{ pin_subpackage('libegl-devel', exact=True) }} From 5437847fafaf4574da5368eaf7bf0f69ecab8a06 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sun, 11 Aug 2024 20:28:48 +0900 Subject: [PATCH 56/62] Fix tests --- recipes/libglvnd/meta.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 327a975d1ca40..f3773f7bed4ac 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -174,7 +174,7 @@ outputs: test: commands: # Shared libraries (change in any SOVER means we need to react on run-export) - - test -f $PREFIX/lib/libGL.so.0 + - test -f $PREFIX/lib/libGL.so.1 - name: libgl-devel files: @@ -217,7 +217,7 @@ outputs: test: commands: # Shared libraries (change in any SOVER means we need to react on run-export) - - test -f $PREFIX/lib/libEGL.so.0 + - test -f $PREFIX/lib/libEGL.so.1 - name: libegl-devel files: From f18a50ebabd82ff93398219d61b894c2915ee3ba Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sun, 11 Aug 2024 20:39:04 +0900 Subject: [PATCH 57/62] Use Debian-like package structure --- recipes/libglvnd/meta.yaml | 58 ++++++++++++++++++++++++-------------- 1 file changed, 37 insertions(+), 21 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index f3773f7bed4ac..8e48e2b889f99 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -56,27 +56,6 @@ outputs: - test -f $PREFIX/include/glvnd/libeglabi.h - test -f $PREFIX/include/glvnd/libglxabi.h - - name: libglvnd-devel - files: - - lib/libGLdispatch.so - build: - run_exports: - - {{ pin_subpackage('libglvnd', max_pin='x') }} - requirements: - build: - - {{ stdlib('c') }} - host: - - {{ pin_subpackage('libglvnd', exact=True) }} - - {{ pin_subpackage('libglvnd-core-devel', exact=True) }} - run: - - {{ pin_subpackage('libglvnd', exact=True) }} - - {{ pin_subpackage('libglvnd-core-devel', exact=True) }} - test: - requires: - - pkg-config - commands: - - pkg-config --print-errors libglvnd - - name: libopengl files: - "lib/libOpenGL.so.*" @@ -312,6 +291,43 @@ outputs: - test -f $PREFIX/include/GLES3/gl3ext.h - test -f $PREFIX/include/GLES3/gl3platform.h + - name: libglvnd-devel + files: + - lib/libGLdispatch.so + build: + run_exports: + - {{ pin_subpackage('libglvnd', max_pin='x') }} + ignore_run_exports_from: + - libopengl-devel + - libglx-devel + - libgl-devel + - libegl-devel + - libgles-devel + requirements: + build: + - {{ stdlib('c') }} + host: + - {{ pin_subpackage('libglvnd', exact=True) }} + - {{ pin_subpackage('libglvnd-core-devel', exact=True) }} + - {{ pin_subpackage('libopengl-devel', exact=True) }} + - {{ pin_subpackage('libglx-devel', exact=True) }} + - {{ pin_subpackage('libgl-devel', exact=True) }} + - {{ pin_subpackage('libegl-devel', exact=True) }} + - {{ pin_subpackage('libgles-devel', exact=True) }} + run: + - {{ pin_subpackage('libglvnd', exact=True) }} + - {{ pin_subpackage('libglvnd-core-devel', exact=True) }} + - {{ pin_subpackage('libopengl-devel', exact=True) }} + - {{ pin_subpackage('libglx-devel', exact=True) }} + - {{ pin_subpackage('libgl-devel', exact=True) }} + - {{ pin_subpackage('libegl-devel', exact=True) }} + - {{ pin_subpackage('libgles-devel', exact=True) }} + test: + requires: + - pkg-config + commands: + - pkg-config --print-errors libglvnd + about: home: https://gitlab.freedesktop.org/glvnd/libglvnd license: LicenseRef-libglvnd From 483b8c06b064d939a89f7d1e54854862c961dc13 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sun, 11 Aug 2024 20:54:07 +0900 Subject: [PATCH 58/62] Fix clobbering files --- recipes/libglvnd/meta.yaml | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 8e48e2b889f99..1db2671a4ca41 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -109,9 +109,17 @@ outputs: - name: libglx-devel files: - - lib/libGLX.so - - lib/pkgconfig/glx.pc - - "include/GL/glx*" + include: + - lib/libGLX.so + - lib/pkgconfig/glx.pc + - "include/GL/glx*" + exclude: + # xorg-glproto headers + - include/GL/glxint.h + - include/GL/glxmd.h + - include/GL/glxproto.h + - include/GL/glxtokens.h + - include/GL/internal/glcore.h build: run_exports: - {{ pin_subpackage('libglx', max_pin='x') }} @@ -157,10 +165,15 @@ outputs: - name: libgl-devel files: - - lib/libGL.so - - lib/pkgconfig/gl.pc - - include/GL - - include/KHR + include: + - lib/libGL.so + - lib/pkgconfig/gl.pc + - include/GL + - include/KHR + exclude: + - "include/GL/glx*" + # xorg-glproto headers + - include/GL/internal/glcore.h build: run_exports: - {{ pin_subpackage('libgl', max_pin='x') }} From 35ad1fe121ab7af80ba6129d2be5a5cc1ccd8da0 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sun, 11 Aug 2024 21:15:19 +0900 Subject: [PATCH 59/62] Prevent clobbering completely --- recipes/libglvnd/meta.yaml | 30 ++++++++++-------------------- 1 file changed, 10 insertions(+), 20 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 1db2671a4ca41..1146e88de8699 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -109,17 +109,10 @@ outputs: - name: libglx-devel files: - include: - - lib/libGLX.so - - lib/pkgconfig/glx.pc - - "include/GL/glx*" - exclude: - # xorg-glproto headers - - include/GL/glxint.h - - include/GL/glxmd.h - - include/GL/glxproto.h - - include/GL/glxtokens.h - - include/GL/internal/glcore.h + - lib/libGLX.so + - lib/pkgconfig/glx.pc + - include/GL/glx.h + - include/GL/glxext.h build: run_exports: - {{ pin_subpackage('libglx', max_pin='x') }} @@ -165,15 +158,12 @@ outputs: - name: libgl-devel files: - include: - - lib/libGL.so - - lib/pkgconfig/gl.pc - - include/GL - - include/KHR - exclude: - - "include/GL/glx*" - # xorg-glproto headers - - include/GL/internal/glcore.h + - lib/libGL.so + - lib/pkgconfig/gl.pc + - include/GL/gl.h + - include/GL/glcorearb.h + - include/GL/glext.h + - include/KHR/khrplatform.h build: run_exports: - {{ pin_subpackage('libgl', max_pin='x') }} From 746501d1b13b476b2332b3967d43b9ab729b9383 Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sun, 11 Aug 2024 21:30:50 +0900 Subject: [PATCH 60/62] Add comments --- recipes/libglvnd/meta.yaml | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 1146e88de8699..337e048fb4358 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -48,9 +48,9 @@ outputs: - {{ stdlib('c') }} test: commands: - # The libglvnd-core-devel package is a bootstrap trick for Mesa - # which wants to build against the libglvnd headers - # but does not link against any of its libraries + # The libglvnd-core-devel package is a bootstrap trick + # for Mesa which wants to build against the libglvnd + # headers but does not link against any of its libraries - test -f $PREFIX/lib/pkgconfig/libglvnd.pc - test -f $PREFIX/include/glvnd/GLdispatchABI.h - test -f $PREFIX/include/glvnd/libeglabi.h @@ -117,6 +117,7 @@ outputs: run_exports: - {{ pin_subpackage('libglx', max_pin='x') }} ignore_run_exports_from: + # Only need the headers during development build - xorg-libxext requirements: build: @@ -210,6 +211,7 @@ outputs: run_exports: - {{ pin_subpackage('libegl', max_pin='x') }} ignore_run_exports_from: + # Only need the headers during development build - libgl-devel - xorg-libx11 requirements: @@ -262,6 +264,7 @@ outputs: run_exports: - {{ pin_subpackage('libgles', max_pin='x') }} ignore_run_exports_from: + # Only need the headers during development build - libegl-devel - libgl-devel requirements: @@ -301,6 +304,7 @@ outputs: run_exports: - {{ pin_subpackage('libglvnd', max_pin='x') }} ignore_run_exports_from: + # Only need the headers during development build - libopengl-devel - libglx-devel - libgl-devel From a209eb31d1b0447e0e88e50a7089709e88c6bf5a Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Sun, 11 Aug 2024 21:33:25 +0900 Subject: [PATCH 61/62] Make behavior even closer to Debian --- recipes/libglvnd/meta.yaml | 3 --- 1 file changed, 3 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 337e048fb4358..49b39d083d26e 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -43,9 +43,6 @@ outputs: files: - lib/pkgconfig/libglvnd.pc - include/glvnd - requirements: - build: - - {{ stdlib('c') }} test: commands: # The libglvnd-core-devel package is a bootstrap trick From ad04b5adf86f0a149ded4001ccd584662aacd6fa Mon Sep 17 00:00:00 2001 From: Seungmin Kim <8457324+ehfd@users.noreply.github.com> Date: Mon, 12 Aug 2024 00:36:46 +0900 Subject: [PATCH 62/62] Remove libglvnd-core-devel --- recipes/libglvnd/meta.yaml | 58 ++++++++++---------------------------- 1 file changed, 15 insertions(+), 43 deletions(-) diff --git a/recipes/libglvnd/meta.yaml b/recipes/libglvnd/meta.yaml index 49b39d083d26e..a1869e1e41a06 100644 --- a/recipes/libglvnd/meta.yaml +++ b/recipes/libglvnd/meta.yaml @@ -39,16 +39,26 @@ outputs: # Shared libraries (change in any SOVER means we need to react on run-export) - test -f $PREFIX/lib/libGLdispatch.so.0 - - name: libglvnd-core-devel + - name: libglvnd-devel files: + - lib/libGLdispatch.so - lib/pkgconfig/libglvnd.pc - include/glvnd + build: + run_exports: + - {{ pin_subpackage('libglvnd', max_pin='x') }} + requirements: + build: + - {{ stdlib('c') }} + host: + - {{ pin_subpackage('libglvnd', exact=True) }} + run: + - {{ pin_subpackage('libglvnd', exact=True) }} test: + requires: + - pkg-config commands: - # The libglvnd-core-devel package is a bootstrap trick - # for Mesa which wants to build against the libglvnd - # headers but does not link against any of its libraries - - test -f $PREFIX/lib/pkgconfig/libglvnd.pc + - pkg-config --print-errors libglvnd - test -f $PREFIX/include/glvnd/GLdispatchABI.h - test -f $PREFIX/include/glvnd/libeglabi.h - test -f $PREFIX/include/glvnd/libglxabi.h @@ -294,44 +304,6 @@ outputs: - test -f $PREFIX/include/GLES3/gl3ext.h - test -f $PREFIX/include/GLES3/gl3platform.h - - name: libglvnd-devel - files: - - lib/libGLdispatch.so - build: - run_exports: - - {{ pin_subpackage('libglvnd', max_pin='x') }} - ignore_run_exports_from: - # Only need the headers during development build - - libopengl-devel - - libglx-devel - - libgl-devel - - libegl-devel - - libgles-devel - requirements: - build: - - {{ stdlib('c') }} - host: - - {{ pin_subpackage('libglvnd', exact=True) }} - - {{ pin_subpackage('libglvnd-core-devel', exact=True) }} - - {{ pin_subpackage('libopengl-devel', exact=True) }} - - {{ pin_subpackage('libglx-devel', exact=True) }} - - {{ pin_subpackage('libgl-devel', exact=True) }} - - {{ pin_subpackage('libegl-devel', exact=True) }} - - {{ pin_subpackage('libgles-devel', exact=True) }} - run: - - {{ pin_subpackage('libglvnd', exact=True) }} - - {{ pin_subpackage('libglvnd-core-devel', exact=True) }} - - {{ pin_subpackage('libopengl-devel', exact=True) }} - - {{ pin_subpackage('libglx-devel', exact=True) }} - - {{ pin_subpackage('libgl-devel', exact=True) }} - - {{ pin_subpackage('libegl-devel', exact=True) }} - - {{ pin_subpackage('libgles-devel', exact=True) }} - test: - requires: - - pkg-config - commands: - - pkg-config --print-errors libglvnd - about: home: https://gitlab.freedesktop.org/glvnd/libglvnd license: LicenseRef-libglvnd