mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
* [ptxdist] [PATCH] libpng: Version bump. 1.6.48 -> 1.6.49
@ 2025-06-16 18:21 Christian Melki
  2025-06-27 10:41 ` Michael Olbrich
  0 siblings, 1 reply; 3+ messages in thread
From: Christian Melki @ 2025-06-16 18:21 UTC (permalink / raw)
  To: ptxdist

https://sourceforge.net/p/libpng/code/ci/libpng16/tree/CHANGES

* Add RISC-V vector option.

* Re-add lost ARM NEON optimization. I removed this, misunderstanding
the work done. This can be enabled for ARM64 where NEON
is an unconditional addition. I think it also could be enabled
for ARM NEON capable hard-float and soft-fp (not soft-float).

* Disable the automatic optimization. It seems to not get the ARM
NEON case right.

Signed-off-by: Christian Melki <christian.melki@t2data.com>
---
 rules/libpng.make | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/rules/libpng.make b/rules/libpng.make
index 07c6ea99b..824974289 100644
--- a/rules/libpng.make
+++ b/rules/libpng.make
@@ -16,8 +16,8 @@ PACKAGES-$(PTXCONF_LIBPNG) += libpng
 #
 # Paths and names
 #
-LIBPNG_VERSION	:= 1.6.48
-LIBPNG_MD5	:= 6ddbe2107e3811d51da698794b8fb4a2
+LIBPNG_VERSION	:= 1.6.49
+LIBPNG_MD5	:= 66c58f211e8e9fc66e621965960df19c
 LIBPNG		:= libpng-$(LIBPNG_VERSION)
 LIBPNG_SUFFIX	:= tar.xz
 LIBPNG_URL	:= $(call ptx/mirror, SF, libpng/$(LIBPNG).$(LIBPNG_SUFFIX))
@@ -41,11 +41,14 @@ LIBPNG_CONF_OPT := \
 	--enable-unversioned-links \
 	--enable-unversioned-libpng-pc \
 	--enable-unversioned-libpng-config \
+	--disable-hardware-optimizations \
+	--$(call ptx/endis, PTXCONF_ARCH_ARM64)-arm-neon \
 	--disable-mips-msa \
 	--disable-mips-mmi \
 	--$(call ptx/endis, PTXCONF_ARCH_X86)-intel-sse \
 	--disable-powerpc-vsx \
 	--disable-loongarch-lsx \
+	--$(call ptx/endis, PTXCONF_ARCH_RISCV)-riscv-rvv \
 	--with-binconfigs
 
 # ----------------------------------------------------------------------------
-- 
2.34.1




^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [ptxdist] [PATCH] libpng: Version bump. 1.6.48 -> 1.6.49
  2025-06-16 18:21 [ptxdist] [PATCH] libpng: Version bump. 1.6.48 -> 1.6.49 Christian Melki
@ 2025-06-27 10:41 ` Michael Olbrich
  2025-07-03 20:38   ` Christian Melki
  0 siblings, 1 reply; 3+ messages in thread
From: Michael Olbrich @ 2025-06-27 10:41 UTC (permalink / raw)
  To: Christian Melki; +Cc: ptxdist

On Mon, Jun 16, 2025 at 08:21:08PM +0200, Christian Melki wrote:
> https://sourceforge.net/p/libpng/code/ci/libpng16/tree/CHANGES
> 
> * Add RISC-V vector option.
> 
> * Re-add lost ARM NEON optimization. I removed this, misunderstanding
> the work done. This can be enabled for ARM64 where NEON
> is an unconditional addition. I think it also could be enabled
> for ARM NEON capable hard-float and soft-fp (not soft-float).
> 
> * Disable the automatic optimization. It seems to not get the ARM
> NEON case right.

What exactly did not work for you?

So I looked at that stuff, and I think, the correct way to handle this is
to _not_ specify --{en,dis}able-hardware-optimizations at all and then use
--enable-arm-neon=$(call ptx/ifdef, PTXCONF_ARCH_ARM_NEON,api,no)

Does that work in your case?

Michael

> Signed-off-by: Christian Melki <christian.melki@t2data.com>
> ---
>  rules/libpng.make | 7 +++++--
>  1 file changed, 5 insertions(+), 2 deletions(-)
> 
> diff --git a/rules/libpng.make b/rules/libpng.make
> index 07c6ea99b..824974289 100644
> --- a/rules/libpng.make
> +++ b/rules/libpng.make
> @@ -16,8 +16,8 @@ PACKAGES-$(PTXCONF_LIBPNG) += libpng
>  #
>  # Paths and names
>  #
> -LIBPNG_VERSION	:= 1.6.48
> -LIBPNG_MD5	:= 6ddbe2107e3811d51da698794b8fb4a2
> +LIBPNG_VERSION	:= 1.6.49
> +LIBPNG_MD5	:= 66c58f211e8e9fc66e621965960df19c
>  LIBPNG		:= libpng-$(LIBPNG_VERSION)
>  LIBPNG_SUFFIX	:= tar.xz
>  LIBPNG_URL	:= $(call ptx/mirror, SF, libpng/$(LIBPNG).$(LIBPNG_SUFFIX))
> @@ -41,11 +41,14 @@ LIBPNG_CONF_OPT := \
>  	--enable-unversioned-links \
>  	--enable-unversioned-libpng-pc \
>  	--enable-unversioned-libpng-config \
> +	--disable-hardware-optimizations \
> +	--$(call ptx/endis, PTXCONF_ARCH_ARM64)-arm-neon \
>  	--disable-mips-msa \
>  	--disable-mips-mmi \
>  	--$(call ptx/endis, PTXCONF_ARCH_X86)-intel-sse \
>  	--disable-powerpc-vsx \
>  	--disable-loongarch-lsx \
> +	--$(call ptx/endis, PTXCONF_ARCH_RISCV)-riscv-rvv \
>  	--with-binconfigs
>  
>  # ----------------------------------------------------------------------------
> -- 
> 2.34.1
> 
> 
> 

-- 
Pengutronix e.K.                           |                             |
Steuerwalder Str. 21                       | http://www.pengutronix.de/  |
31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [ptxdist] [PATCH] libpng: Version bump. 1.6.48 -> 1.6.49
  2025-06-27 10:41 ` Michael Olbrich
@ 2025-07-03 20:38   ` Christian Melki
  0 siblings, 0 replies; 3+ messages in thread
From: Christian Melki @ 2025-07-03 20:38 UTC (permalink / raw)
  To: Michael Olbrich; +Cc: ptxdist

On 6/27/25 12:41 PM, Michael Olbrich wrote:
> On Mon, Jun 16, 2025 at 08:21:08PM +0200, Christian Melki wrote:
>> https://sourceforge.net/p/libpng/code/ci/libpng16/tree/CHANGES
>>
>> * Add RISC-V vector option.
>>
>> * Re-add lost ARM NEON optimization. I removed this, misunderstanding
>> the work done. This can be enabled for ARM64 where NEON
>> is an unconditional addition. I think it also could be enabled
>> for ARM NEON capable hard-float and soft-fp (not soft-float).
>>
>> * Disable the automatic optimization. It seems to not get the ARM
>> NEON case right.
> 
> What exactly did not work for you?
> 
> So I looked at that stuff, and I think, the correct way to handle this is
> to _not_ specify --{en,dis}able-hardware-optimizations at all and then use
> --enable-arm-neon=$(call ptx/ifdef, PTXCONF_ARCH_ARM_NEON,api,no)
> 
> Does that work in your case?
> 
> Michael
> 

I think the ARM neon case is slightly more complex than it looks.
If I enable it, it breaks on my builds. Maybe I need a way to discern if
the toolchain is generating hard floats or soft-fp with neon or not?

Not sure how to formulate it, that's why the update ignores ARM for now.

Christian

>> Signed-off-by: Christian Melki <christian.melki@t2data.com>
>> ---
>>  rules/libpng.make | 7 +++++--
>>  1 file changed, 5 insertions(+), 2 deletions(-)
>>
>> diff --git a/rules/libpng.make b/rules/libpng.make
>> index 07c6ea99b..824974289 100644
>> --- a/rules/libpng.make
>> +++ b/rules/libpng.make
>> @@ -16,8 +16,8 @@ PACKAGES-$(PTXCONF_LIBPNG) += libpng
>>  #
>>  # Paths and names
>>  #
>> -LIBPNG_VERSION	:= 1.6.48
>> -LIBPNG_MD5	:= 6ddbe2107e3811d51da698794b8fb4a2
>> +LIBPNG_VERSION	:= 1.6.49
>> +LIBPNG_MD5	:= 66c58f211e8e9fc66e621965960df19c
>>  LIBPNG		:= libpng-$(LIBPNG_VERSION)
>>  LIBPNG_SUFFIX	:= tar.xz
>>  LIBPNG_URL	:= $(call ptx/mirror, SF, libpng/$(LIBPNG).$(LIBPNG_SUFFIX))
>> @@ -41,11 +41,14 @@ LIBPNG_CONF_OPT := \
>>  	--enable-unversioned-links \
>>  	--enable-unversioned-libpng-pc \
>>  	--enable-unversioned-libpng-config \
>> +	--disable-hardware-optimizations \
>> +	--$(call ptx/endis, PTXCONF_ARCH_ARM64)-arm-neon \
>>  	--disable-mips-msa \
>>  	--disable-mips-mmi \
>>  	--$(call ptx/endis, PTXCONF_ARCH_X86)-intel-sse \
>>  	--disable-powerpc-vsx \
>>  	--disable-loongarch-lsx \
>> +	--$(call ptx/endis, PTXCONF_ARCH_RISCV)-riscv-rvv \
>>  	--with-binconfigs
>>  
>>  # ----------------------------------------------------------------------------
>> -- 
>> 2.34.1
>>
>>
>>
> 




^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2025-07-03 20:39 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-06-16 18:21 [ptxdist] [PATCH] libpng: Version bump. 1.6.48 -> 1.6.49 Christian Melki
2025-06-27 10:41 ` Michael Olbrich
2025-07-03 20:38   ` Christian Melki

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox