Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lightzone-4.2.4 compilation issue #48791

Closed
zenny opened this issue Feb 17, 2024 · 4 comments
Closed

Lightzone-4.2.4 compilation issue #48791

zenny opened this issue Feb 17, 2024 · 4 comments
Labels

Comments

@zenny
Copy link

zenny commented Feb 17, 2024

Hi,

I am trying to build LightZone 4.2.4 from using xbps-src, but it ends up at:

     [exec] g++ -c -fno-PIE -mtune=generic -O2 -pipe    -ffile-prefix-map=/builddir/lightzone-4.2.4=. -g -fPIC -march=athlon64 -msse2 -mfpmath=sse -O3 -fno-trapping-math -fo
mit-frame-pointer -std=c++14 -DJNILIB  -g -fPIC -march=athlon64 -msse2 -mfpmath=sse -O3 -fno-trapping-math -fomit-frame-pointer -std=c++14 -DJNILIB   -I/usr/lib/jvm/default-
jdk/include -I/usr/lib/jvm/default-jdk/include/linux -I../../../lightcrafts -I../../../lightcrafts/jnisrc/jniutils  -I/usr/include/lensfun -I/usr/include/glib-2.0 -I/usr/lib
64/glib-2.0/include LC_lensfun.cpp
     [exec] LC_lensfun.cpp: In function 'jlong Java_com_lightcrafts_utils_Lensfun_init(JNIEnv*, jobject, jstring)':
     [exec] LC_lensfun.cpp:57:29: error: 'uintptr_t' does not name a type
     [exec]    57 |     return reinterpret_cast<uintptr_t>(lf);
     [exec]       |                             ^~~~~~~~~
     [exec] LC_lensfun.cpp:16:1: note: 'uintptr_t' is defined in header '<cstdint>'; did you forget to '#include <cstdint>'?
     [exec]    15 | #include "interpolation.h"
     [exec]   +++ |+#include <cstdint>
     [exec]    16 |
     [exec] make[2]: *** [../../../lightcrafts/mk/sources.mk:134: LC_lensfun.o] Error 1
     [exec] make[1]: *** [../jni.mk:198: mk_target] Error 2
     [exec] make: *** [../mk/recurse.mk:29: lensfun] Error 1

BUILD FAILED
/builddir/lightzone-4.2.4/linux/build.xml:37: The following error occurred while executing this line:
/builddir/lightzone-4.2.4/lightcrafts/build.xml:140: exec returned: 2

Total time: 1 minute 12 seconds
/void-packages/common/xbps-src/shutils/common.sh: line 149: printf: `m': invalid format character
=> ERROR: lightzone-4.2.4_1: do_build: 'TARGET=${XBPS_TARGET_MACHINE=> ERROR:   in do_build() at srcpkgs/lightzone/template:33

I modified the xbps-src template by @orphaned to:

# Template file for 'lightzone'
pkgname=lightzone
version=4.2.4
revision=1
_ivy_version=2.4.0
hostmakedepends="automake git openjdk11 apache-ant javahelp2 rsync pkg-config"
makedepends="libgomp-devel lcms2-devel libjpeg-turbo-devel tiff-devel libX11-devel lensfun-devel"
depends="openjdk11 javahelp2 liblzma tiff"
short_desc="Professional-level digital darkroom and photo editor"
maintainer="Orphaned <orphan@voidlinux.org>"
license="BSD-3-Clause"
homepage="http://www.lightzoneproject.org/"
distfiles="https://github.com/ktgw0316/LightZone/archive/${version}.tar.gz>${pkgname}-${version}.tar.gz
 https://repo1.maven.org/maven2/org/apache/ivy/ivy/${_ivy_version}/ivy-${_ivy_version}.jar"
checksum="49421b45a8a5a5ec17c4bc688e4699d851bb19c22080f154143ef23038425dd0
 ce81cb234406b093b5b8de9f6f5b2a50ed0824d6a235891353e8d3e941a53970"
skip_extraction="ivy-${_ivy_version}.jar"
# JNI binaries are not PIE
nopie=yes
replaces="lightzone-bin>=0"

do_build() {
	mkdir -p lightcrafts/lib
	ln -sf $XBPS_SRCDISTDIR/${pkgname}-${version}/ivy-${_ivy_version}.jar \
		lightcrafts/lib/ivy.jar

	# Fix for cross building
	vsed -i lightcrafts/jnisrc/tiff/GNUmakefile \
		-e "s;\./configure;& --host=${XBPS_MACHINE%-musl};"

	. /etc/profile.d/jdk.sh
	cd linux
	TARGET=${XBPS_TARGET_MACHINE%-musl} ant jar
}

do_install() {
	vbin linux/products/lightzone

	vmkdir usr/share
	cp -pHR linux/icons ${DESTDIR}/usr/share
	vinstall linux/products/lightzone.desktop 644 usr/share/applications

	# Install shared libraries
	for f in linux/products/*.so; do
		vinstall $f 755 usr/lib/lightzone
	done

	# Install helpers
	for f in LightZone-forkd dcraw_lz; do
		vinstall linux/products/$f 755 usr/lib/lightzone
	done

	# Install jars
	for f in linux/products/*.jar; do
		vinstall $f 644 usr/share/java/lightzone
	done

	vlicense COPYING
}
@classabbyamp
Copy link
Member

classabbyamp commented Feb 17, 2024

[exec] LC_lensfun.cpp:16:1: note: 'uintptr_t' is defined in header '<cstdint>'; did you forget to '#include <cstdint>'?

patch that file to include cstdint

@zenny
Copy link
Author

zenny commented Feb 18, 2024

[exec] LC_lensfun.cpp:16:1: note: 'uintptr_t' is defined in header '<cstdint>'; did you forget to '#include <cstdint>'?

patch that file to include cstdint

Thanks @classabbyamp, but where to inside the patch file, provided by upstream as of below?

Fixes bad macro checks, breaking altivec build.

--- a/lightcrafts/jnisrc/jai/bilateralFilter_sse.c
+++ b/lightcrafts/jnisrc/jai/bilateralFilter_sse.c
@@ -188,7 +188,7 @@ static inline void reset_denormals(csr_context oldMXCSR) {

 #endif // defined(__i386__) || defined(__x86_64__)

-#if defined(__ppc__) || defined(__ppc64__)
+#if defined(__powerpc__) || defined(__powerpc64__)
 #include <altivec.h>

 static inline vFloat loadUnalignedFloat( float *target )
@@ -253,7 +253,7 @@ static void reset_denormals( csr_context oldJavaMode ) {
     vec_mtvscr ( oldJavaMode );
 }

-#endif // defined(__ppc__) || defined(__ppc64__)
+#endif // defined(__powerpc__) || defined(__powerpc64__)
 #endif // defined(__SSE2__) || defined (__VEC__)

 #if USE_VECTOR

@classabbyamp
Copy link
Member

you make your own patch and put it in srcpkgs/$pkgname/patches

Copy link

Issues become stale 90 days after last activity and are closed 14 days after that. If this issue is still relevant bump it or assign it.

@github-actions github-actions bot added the Stale label May 19, 2024
@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Jun 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants