summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornia <nia@pkgsrc.org>2022-06-23 07:08:36 +0000
committernia <nia@pkgsrc.org>2022-06-23 07:08:36 +0000
commitfb6f8b1ef57861809730ddef2097183de65e8fd4 (patch)
treef6f015833d9f359d2e243928913bdb580c644626
parent40b1f071e78f78f39d6ac66ffb0acce5f698fd7e (diff)
downloadpkgsrc-fb6f8b1ef57861809730ddef2097183de65e8fd4.tar.gz
darktable: Fix building with GCC on NetBSD.
-rw-r--r--graphics/darktable/Makefile33
-rw-r--r--graphics/darktable/hacks.mk23
2 files changed, 37 insertions, 19 deletions
diff --git a/graphics/darktable/Makefile b/graphics/darktable/Makefile
index bc941137ca5..14932a0390f 100644
--- a/graphics/darktable/Makefile
+++ b/graphics/darktable/Makefile
@@ -1,7 +1,7 @@
-# $NetBSD: Makefile,v 1.128 2022/04/18 19:11:15 adam Exp $
+# $NetBSD: Makefile,v 1.129 2022/06/23 07:08:36 nia Exp $
DISTNAME= darktable-3.6.1
-PKGREVISION= 2
+PKGREVISION= 3
CATEGORIES= graphics
MASTER_SITES= ${MASTER_SITE_GITHUB:=darktable-org/}
GITHUB_PROJECT= darktable
@@ -16,30 +16,34 @@ LICENSE= gnu-gpl-v3
USE_CMAKE= yes
USE_LANGUAGES= c c++
USE_PKGLOCALEDIR= yes
-USE_TOOLS+= gmake intltool msgfmt pkg-config bash
+USE_TOOLS+= gmake intltool msgfmt pkg-config bash:run
+
+REPLACE_BASH+= tools/common.sh
+REPLACE_BASH+= tools/purge_from_cache.sh
+REPLACE_BASH+= tools/purge_non_existing_images.sh
+REPLACE_BASH+= tools/purge_unused_tags.sh
-#CFLAGS+= -fopenmp
CFLAGS+= -Wno-reserved-id-macro
CMAKE_ARGS+= -DLENSFUN_INCLUDE_DIR:PATH=${BUILDLINK_PREFIX.glib2}/include/lensfun
CMAKE_ARGS+= -DGTHREAD_INCLUDE_DIR:PATH=${BUILDLINK_PREFIX.glib2}/include
CMAKE_ARGS+= -DGMODULE_INCLUDE_DIR:PATH=${BUILDLINK_PREFIX.glib2}/include
+# Honour system CFLAGS.
+CMAKE_ARGS+= -DCUSTOM_CFLAGS=ON
CMAKE_ARGS+= -DUSE_OPENCL=OFF
+CMAKE_ARGS+= -DUSE_OPENMP=OFF
CMAKE_ARGS+= -DCMAKE_BUILD_TYPE=Release
CMAKE_ARGS+= -DBINARY_PACKAGE_BUILD=Yes
CMAKE_ARGS+= -Wno-dev
-CMAKE_ARGS+= -DWITH_OPENMP=OFF
CMAKE_ARGS+= -DUSE_COLORD=OFF
CMAKE_ARGS+= -DRAWSPEED_ENABLE_WERROR=OFF
+CMAKE_ARGS+= -DTESTBUILD_OPENCL_PROGRAMS=OFF
CONFIGURE_DIRS= ../pkgsrc_build
CMAKE_ARG_PATH= ${WRKSRC}
LDFLAGS+= ${COMPILER_RPATH_FLAG}${PREFIX}/lib/darktable
-# NetBSD 6 libm is the first with exp2f(3)
-#NOT_FOR_PLATFORM= NetBSD-4*-* NetBSD-5.[0-8]*-*
-
# Hard-coded use of SSE2
ONLY_FOR_PLATFORM= *-*-i386 *-*-x86_64
@@ -48,17 +52,13 @@ ONLY_FOR_PLATFORM= *-*-i386 *-*-x86_64
# SSE alignment issues
GCC_REQD+= 4.2
CFLAGS+= -mstackrealign -msse2 -march=i686
+.elif ${MACHINE_ARCH} == "x86_64"
+CFLAGS+= -msse2
.endif
CFLAGS.NetBSD+= -D_NETBSD_SOURCE
CFLAGS.SunOS+= -D__SUNOS__=1
-.include "../../mk/compiler.mk"
-.if !empty(PKGSRC_COMPILER:Mgcc)
-# gdk_pixbuf_new_from_inline
-CFLAGS+= -Wno-error=deprecated-declarations
-.endif
-
CHECK_PORTABILITY_SKIP+= packaging/macosx/start
pre-configure:
@@ -86,14 +86,9 @@ BUILDLINK_API_DEPENDS.zlib+= zlib>=1.2.11
.include "../../graphics/openjpeg/buildlink3.mk"
.include "../../graphics/png/buildlink3.mk"
.include "../../graphics/tiff/buildlink3.mk"
-PKG_CC= ${PREFIX}/bin/clang
-PKG_CXX= ${PREFIX}/bin/clang++
-BUILDLINK_DEPMETHOD.clang= build
-.include "../../lang/clang/buildlink3.mk"
.include "../../lang/lua53/buildlink3.mk"
.include "../../net/flickcurl/buildlink3.mk"
.include "../../net/libsoup/buildlink3.mk"
-.include "../../parallel/openmp/buildlink3.mk"
.include "../../print/cups-base/buildlink3.mk"
.include "../../security/libsecret/buildlink3.mk"
.include "../../sysutils/desktop-file-utils/desktopdb.mk"
diff --git a/graphics/darktable/hacks.mk b/graphics/darktable/hacks.mk
new file mode 100644
index 00000000000..3836654a10a
--- /dev/null
+++ b/graphics/darktable/hacks.mk
@@ -0,0 +1,23 @@
+# $NetBSD: hacks.mk,v 1.1 2022/06/23 07:08:36 nia Exp $
+
+.if !defined(DARKTABLE_HACKS_MK)
+DARKTABLE_HACKS_MK:=
+
+. include "../../mk/bsd.fast.prefs.mk"
+. if ${OPSYS} == "NetBSD"
+PKG_HACKS+= disable-graphite-opt
+# Disable some of the more ridiculous compiler flags being used, that are
+# creating build failures with the system compiler on NetBSD due to the
+# assumption that the isl/graphite optimizer is available.
+CFLAGS+= -Wno-unknown-pragmas
+SUBST_CLASSES+= opt
+SUBST_MESSAGE.opt= Disabling excessive forced optimizations.
+SUBST_STAGE.opt+= pre-configure
+SUBST_SED.opt+= -e "s,pragma GCC optimize,pragma GCC nooptimize,g"
+SUBST_FILES.opt+= src/iop/*.c
+SUBST_FILES.opt+= src/iop/*.h
+SUBST_FILES.opt+= src/develop/blends/*.c
+SUBST_FILES.opt+= src/common/*.c
+SUBST_FILES.opt+= src/common/*.h
+. endif
+.endif