svn commit: r569222 - in head/misc/free42: . files

Piotr Kubaj pkubaj at FreeBSD.org
Thu Mar 25 19:09:37 UTC 2021


Author: pkubaj
Date: Thu Mar 25 19:09:35 2021
New Revision: 569222
URL: https://svnweb.freebsd.org/changeset/ports/569222

Log:
  misc/free42: fix build on non-x86
  
  1. fexcept_t is available on FreeBSD via fenv.h.
  2. new_g and new_rad in core_commands6.cc actually need signed char.
  3. Add FreeBSD's names for ARM and POWER to build-intel-lib.sh.
  
  PR:		254556
  Approved by:	yuri (maintainer)

Added:
  head/misc/free42/files/patch-common_bid__functions.h   (contents, props changed)
  head/misc/free42/files/patch-common_core__commands6.cc   (contents, props changed)
  head/misc/free42/files/patch-gtk_IntelRDFPMathLib20U1_LIBRARY_src_bid__functions.h   (contents, props changed)
  head/misc/free42/files/patch-gtk_IntelRDFPMathLib20U1_TESTS_test__bid__functions.h   (contents, props changed)
  head/misc/free42/files/patch-gtk_build-intel-lib.sh   (contents, props changed)
  head/misc/free42/files/patch-gtk_intel-lib-freebsd.patch   (contents, props changed)
Modified:
  head/misc/free42/Makefile

Modified: head/misc/free42/Makefile
==============================================================================
--- head/misc/free42/Makefile	Thu Mar 25 18:58:14 2021	(r569221)
+++ head/misc/free42/Makefile	Thu Mar 25 19:09:35 2021	(r569222)
@@ -12,19 +12,13 @@ COMMENT=	Simulation of the HP-42S scientific calculato
 LICENSE=	GPLv2
 LICENSE_FILE=	${WRKSRC}/COPYING
 
-BROKEN_aarch64=		fails to link: c++: error: no such file or directory: 'gcc111libbid.a'
-BROKEN_armv6=		fails to link: c++: error: no such file or directory: 'gcc111libbid.a'
-BROKEN_mips64=		fails to link: c++: error: no such file or directory: 'gcc111libbid.a'
-BROKEN_powerpc64=	fails to link: c++: error: no such file or directory: 'gcc111libbid.a'
-BROKEN_riscv64=		fails to link: c++: error: no such file or directory: 'gcc111libbid.a'
-
 LIB_DEPENDS=	libfontconfig.so:x11-fonts/fontconfig \
 		libfreetype.so:print/freetype2
 
 USES=		compiler dos2unix gmake gnome localbase pkgconfig tar:tgz xorg
 USE_GNOME=	atk cairo gdkpixbuf2 gtk30 pango
 USE_XORG=	x11 xmu
-DOS2UNIX_FILES=	gtk/IntelRDFPMathLib20U1/LIBRARY/float128/op_system.h gtk/IntelRDFPMathLib20U1/LIBRARY/float128/architecture.h
+DOS2UNIX_FILES=	gtk/IntelRDFPMathLib20U1/LIBRARY/float128/op_system.h gtk/IntelRDFPMathLib20U1/LIBRARY/float128/architecture.h gtk/IntelRDFPMathLib20U1/LIBRARY/src/bid_functions.h common/bid_functions.h gtk/IntelRDFPMathLib20U1/TESTS/test_bid_functions.h
 
 CXXFLAGS+=	${CXXFLAGS_${CHOSEN_COMPILER_TYPE}}
 CXXFLAGS_clang=	-Wno-c++11-narrowing -Wno-constant-conversion # to accommodate some code breaking with clang-50

Added: head/misc/free42/files/patch-common_bid__functions.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/misc/free42/files/patch-common_bid__functions.h	Thu Mar 25 19:09:35 2021	(r569222)
@@ -0,0 +1,14 @@
+--- common/bid_functions.h.orig	2021-03-25 17:43:15 UTC
++++ common/bid_functions.h
+@@ -159,11 +159,7 @@ typedef unsigned    long fexcept_t;
+ typedef unsigned bid__int64 fexcept_t;
+ #endif
+ #else
+-#ifdef __QNX__
+ #include <fenv.h>
+-#else
+-typedef unsigned short int fexcept_t;
+-#endif
+ #endif
+ #endif
+ 

Added: head/misc/free42/files/patch-common_core__commands6.cc
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/misc/free42/files/patch-common_core__commands6.cc	Thu Mar 25 19:09:35 2021	(r569222)
@@ -0,0 +1,13 @@
+--- common/core_commands6.cc.orig	2021-03-17 00:38:17 UTC
++++ common/core_commands6.cc
+@@ -1096,8 +1096,8 @@ int docmd_stoflag(arg_struct *arg) {
+         p <<= 1;
+     }
+ 
+-    char new_g = !flags.f.rad && flags.f.grad;
+-    char new_rad = flags.f.rad || flags.f.grad;
++    signed char new_g = !flags.f.rad && flags.f.grad;
++    signed char new_rad = flags.f.rad || flags.f.grad;
+     if (new_g == old_g)
+         new_g = -1;
+     if (new_rad == old_rad)

Added: head/misc/free42/files/patch-gtk_IntelRDFPMathLib20U1_LIBRARY_src_bid__functions.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/misc/free42/files/patch-gtk_IntelRDFPMathLib20U1_LIBRARY_src_bid__functions.h	Thu Mar 25 19:09:35 2021	(r569222)
@@ -0,0 +1,14 @@
+--- gtk/IntelRDFPMathLib20U1/LIBRARY/src/bid_functions.h.orig	2021-03-25 17:43:14 UTC
++++ gtk/IntelRDFPMathLib20U1/LIBRARY/src/bid_functions.h
+@@ -159,11 +159,7 @@ typedef unsigned    long fexcept_t;
+ typedef unsigned bid__int64 fexcept_t;
+ #endif
+ #else
+-#ifdef __QNX__
+ #include <fenv.h>
+-#else
+-typedef unsigned short int fexcept_t;
+-#endif
+ #endif
+ #endif
+ 

Added: head/misc/free42/files/patch-gtk_IntelRDFPMathLib20U1_TESTS_test__bid__functions.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/misc/free42/files/patch-gtk_IntelRDFPMathLib20U1_TESTS_test__bid__functions.h	Thu Mar 25 19:09:35 2021	(r569222)
@@ -0,0 +1,14 @@
+--- gtk/IntelRDFPMathLib20U1/TESTS/test_bid_functions.h.orig	2021-03-25 17:58:53 UTC
++++ gtk/IntelRDFPMathLib20U1/TESTS/test_bid_functions.h
+@@ -165,11 +165,7 @@ typedef unsigned    long fexcept_t;
+ typedef unsigned bid__int64 fexcept_t;
+ #endif
+ #else
+-#ifdef __QNX__
+ #include <fenv.h>
+-#else
+-typedef unsigned short int fexcept_t;
+-#endif
+ #endif
+ #endif
+ 

Added: head/misc/free42/files/patch-gtk_build-intel-lib.sh
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/misc/free42/files/patch-gtk_build-intel-lib.sh	Thu Mar 25 19:09:35 2021	(r569222)
@@ -0,0 +1,26 @@
+--- gtk/build-intel-lib.sh.orig	2021-03-05 01:52:42 UTC
++++ gtk/build-intel-lib.sh
+@@ -43,6 +43,8 @@ fi
+ 
+ tar xvfz ../inteldecimal/IntelRDFPMathLib20U1.tar.gz
+ cd IntelRDFPMathLib20U1
++sed -i '' -e 's/\r//g' LIBRARY/src/bid_functions.h
++patch -p0 <../intel-lib-freebsd.patch
+ patch -p0 <../intel-lib-linux.patch
+ 
+ # When building for architectures other than x86 or x86_64, I remove the
+@@ -55,11 +58,11 @@ patch -p0 <../intel-lib-linux.patch
+ # it to x86_64 works when targeting arm64, a 64-bit platform.
+ # Of course, proceed with caution. Your mileage may vary.
+ 
+-case `uname -m` in
+-  armv7|armv7l|ppc)
++case `uname -p` in
++  armv6|armv7|armv7l|ppc|powerpc|powerpcspe|mips)
+     patch -p0 <../intel-lib-unknown-32bit.patch
+     ;;
+-  aarch64|arm64|i86pc)
++  aarch64|arm64|i86pc|powerpc64|powerpc64le|mips64|riscv64)
+     patch -p0 <../intel-lib-unknown-64bit.patch
+     ;;
+ esac

Added: head/misc/free42/files/patch-gtk_intel-lib-freebsd.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/misc/free42/files/patch-gtk_intel-lib-freebsd.patch	Thu Mar 25 19:09:35 2021	(r569222)
@@ -0,0 +1,17 @@
+--- gtk/intel-lib-freebsd.patch.orig	2021-03-25 18:27:04 UTC
++++ gtk/intel-lib-freebsd.patch
+@@ -0,0 +1,14 @@
++--- LIBRARY/src/bid_functions.h.orig	2021-03-25 17:43:14 UTC
+++++ LIBRARY/src/bid_functions.h
++@@ -159,11 +159,7 @@ typedef unsigned    long fexcept_t;
++ typedef unsigned bid__int64 fexcept_t;
++ #endif
++ #else
++-#ifdef __QNX__
++ #include <fenv.h>
++-#else
++-typedef unsigned short int fexcept_t;
++-#endif
++ #endif
++ #endif
++ 


More information about the svn-ports-head mailing list