Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 16 May 2022 19:00:03 GMT
From:      Adriaan de Groot <adridg@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: 78989b4e694c - main - multimedia/nymphcast: fix build on ARMv7
Message-ID:  <202205161900.24GJ03T8093987@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by adridg:

URL: https://cgit.FreeBSD.org/ports/commit/?id=78989b4e694c2a8264975fb6d64e3bf1c13762c2

commit 78989b4e694c2a8264975fb6d64e3bf1c13762c2
Author:     Robert Clausecker <fuz@fuz.su>
AuthorDate: 2022-05-16 15:00:32 +0000
Commit:     Adriaan de Groot <adridg@FreeBSD.org>
CommitDate: 2022-05-16 18:57:54 +0000

    multimedia/nymphcast: fix build on ARMv7
    
    nymphcast has a bundled copy of angelscript (TODO: use the
    one from ports instead) that doesn't build nicely on ARM
    because it passes in invalid compiler flags.
    
    PR:             263953
    Reported by:    Robert Clausecker
---
 multimedia/nymphcast/Makefile          |  1 +
 multimedia/nymphcast/files/patch-armv7 | 58 ++++++++++++++++++++++++++++++++++
 2 files changed, 59 insertions(+)

diff --git a/multimedia/nymphcast/Makefile b/multimedia/nymphcast/Makefile
index 03d14fed7298..6577b830fbf3 100644
--- a/multimedia/nymphcast/Makefile
+++ b/multimedia/nymphcast/Makefile
@@ -1,5 +1,6 @@
 PORTNAME=	NymphCast
 DISTVERSION=	v0.1
+PORTREVISION=	1
 CATEGORIES=	multimedia
 
 MAINTAINER=	adridg@FreeBSD.org
diff --git a/multimedia/nymphcast/files/patch-armv7 b/multimedia/nymphcast/files/patch-armv7
new file mode 100644
index 000000000000..38dda98732cc
--- /dev/null
+++ b/multimedia/nymphcast/files/patch-armv7
@@ -0,0 +1,58 @@
+From a72070398fb731f56ef57b19d8911158b0268029 Mon Sep 17 00:00:00 2001
+From: Robert Clausecker <fuz@fuz.su>
+Date: Fri, 13 May 2022 04:30:51 +0200
+Subject: [PATCH] multimedia/nymphcast: fix build on armv7
+
+The build failed due to an unsupported compiler option
+-Wa,-mimplicit-it=thumb.  This option is not needed when
+building with clang, doubly so when building in ARM mode,
+which we do.
+---
+ ...pt_angelscript_projects_cmake_CMakeLists.txt | 10 ++++++++++
+ ...gelscript_angelscript_projects_gnuc_Makefile | 17 +++++++++++++++++
+ 2 files changed, 27 insertions(+)
+ create mode 100644 multimedia/nymphcast/files/patch-angelscript_angelscript_projects_cmake_CMakeLists.txt
+ create mode 100644 multimedia/nymphcast/files/patch-angelscript_angelscript_projects_gnuc_Makefile
+
+diff --git a/multimedia/nymphcast/files/patch-angelscript_angelscript_projects_cmake_CMakeLists.txt b/multimedia/nymphcast/files/patch-angelscript_angelscript_projects_cmake_CMakeLists.txt
+new file mode 100644
+index 000000000000..3bc3c1339c0d
+--- /dev/null
++++ b/multimedia/nymphcast/files/patch-angelscript_angelscript_projects_cmake_CMakeLists.txt
+@@ -0,0 +1,10 @@
++--- angelscript/angelscript/projects/cmake/CMakeLists.txt.orig	2022-05-12 21:14:16 UTC
+++++ angelscript/angelscript/projects/cmake/CMakeLists.txt
++@@ -110,7 +110,6 @@ if(${CMAKE_SYSTEM_PROCESSOR} MATCHES "^arm")
++     enable_language(ASM)
++     if(CMAKE_ASM_COMPILER_WORKS)
++         set(ANGELSCRIPT_SOURCE ${ANGELSCRIPT_SOURCE} ../../source/as_callfunc_arm.cpp ../../source/as_callfunc_arm_gcc.S)
++-        set_property(SOURCE ../../source/as_callfunc_arm_gcc.S APPEND PROPERTY COMPILE_FLAGS " -Wa,-mimplicit-it=always")
++     else()
++         message(FATAL ERROR "ARM target requires a working assembler")
++     endif()
+diff --git a/multimedia/nymphcast/files/patch-angelscript_angelscript_projects_gnuc_Makefile b/multimedia/nymphcast/files/patch-angelscript_angelscript_projects_gnuc_Makefile
+new file mode 100644
+index 000000000000..bc8359c1e348
+--- /dev/null
++++ b/multimedia/nymphcast/files/patch-angelscript_angelscript_projects_gnuc_Makefile
+@@ -0,0 +1,17 @@
++--- angelscript/angelscript/projects/gnuc/Makefile.orig	2022-05-12 21:13:19 UTC
+++++ angelscript/angelscript/projects/gnuc/Makefile
++@@ -89,14 +89,8 @@ else
++ 	CXXFLAGS += $(PLATFORM_FLAGS)
++ endif
++ 
++-## Detect if targeting ARM CPU and if so tell assembler to accept implicit IT constructs in thumb mode
++ GCC_ARCH := $(shell $(CXX) -dumpmachine)
++ $(info GCC ARCH: $(GCC_ARCH))
++-ifneq (,$(findstring arm-,$(GCC_ARCH)))
++-	CXXFLAGS += -Wa,-mimplicit-it=thumb
++-else ifneq (,$(findstring armv7-, $(GCC_ARCH)))
++-	CXXFLAGS += -Wa,-mimplicit-it=thumb
++-endif
++ 
++ ## toolchain
++ AR ?= ar
+-- 
+2.35.2
+



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202205161900.24GJ03T8093987>