commit:     664ffc257eae19cc4d48eaf4e39d34071157f53c
Author:     Bernard Cafarelli <voyageur <AT> gentoo <DOT> org>
AuthorDate: Sun Nov  6 21:23:21 2022 +0000
Commit:     Bernard Cafarelli <voyageur <AT> gentoo <DOT> org>
CommitDate: Sun Nov  6 21:23:21 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=664ffc25

app-emulation/free42: add 3.0.16

Closes: https://bugs.gentoo.org/747217
Signed-off-by: Bernard Cafarelli <voyageur <AT> gentoo.org>

 app-emulation/free42/Manifest                      |  1 +
 .../files/free42-3.0.16-fix-build-intel-lib.patch  | 65 ++++++++++++++++++++++
 app-emulation/free42/free42-3.0.16.ebuild          | 46 +++++++++++++++
 3 files changed, 112 insertions(+)

diff --git a/app-emulation/free42/Manifest b/app-emulation/free42/Manifest
index 7aeb6b9463a2..6095a36cf7f9 100644
--- a/app-emulation/free42/Manifest
+++ b/app-emulation/free42/Manifest
@@ -1,3 +1,4 @@
 DIST free42-nologo-2.5.24.tgz 7423183 BLAKE2B 
e10425af8d5c30be6ab5b728130bbe3068c414e24f033b65623951f915bcfeea0672857ff8def3e9f2766aba79411a1022d4b83592281567de38e82613d8a832
 SHA512 
a0702c3e4b2f3f38f73c54de4e51da8d1dc90585b253d1ae087d59dfabbe83be9c80086df8540cb6420dae8c6e766cd1ccce875d9bcb94ecbc85791e3fa89b8b
 DIST free42-nologo-3.0.13.tgz 7458844 BLAKE2B 
3b09aaf0dc177ddc9db49a0f09c91f7c6a3346303266ed280fa57403e6864a4d88471dcab8c0e1ddf1b96653d4609f83f4102fc169902a70098b3260f48d9099
 SHA512 
6037e86962157a2293915d2bd9343f7ddcddcbb346e98fe339a7ef1784c98249fb55c69c0cf6370a79db4628197ac851d4c4c05ec610a2911fa9c3b00a6d077d
 DIST free42-nologo-3.0.14.tgz 7459191 BLAKE2B 
35da329a6883fc8e83b59310b3df458111f90e25d032610af38c932cba0b4c33eddb63fe04902516c8f5b178ae7bd83d5775ebf63a9889dbbeb71fd99be3fe8d
 SHA512 
d8ae0b5fd5004b6989365b9ed0ce037ae88ad59112022c8c552752bee613476b193f29199ce43c685eb30ab64a4d33aa33eb0a91c0c5ff0c09102bfc5c0e2d07
+DIST free42-nologo-3.0.16.tgz 7460148 BLAKE2B 
2fd4baf38c30436bcc9e97698389a8fb6c9b457171a5ddbd117b32eaab02fc290132c26640201c5ae411f5701ec768a7744be64168ab5edab4c646397e6ced94
 SHA512 
909a461e2396b5a532b757c4305fea6623bd7102210940c457a9facda5404f7fb82918ced9f66fd13992bd0f2c7558f38c7b4693b9fd2434cff739af48c28a0e

diff --git a/app-emulation/free42/files/free42-3.0.16-fix-build-intel-lib.patch 
b/app-emulation/free42/files/free42-3.0.16-fix-build-intel-lib.patch
new file mode 100644
index 000000000000..283c6c1435be
--- /dev/null
+++ b/app-emulation/free42/files/free42-3.0.16-fix-build-intel-lib.patch
@@ -0,0 +1,65 @@
+diff -Naur free42-nologo-3.0.16.orig/gtk/build-intel-lib.sh 
free42-nologo-3.0.16/gtk/build-intel-lib.sh
+--- free42-nologo-3.0.16.orig/gtk/build-intel-lib.sh   2022-10-29 
17:03:11.000000000 +0200
++++ free42-nologo-3.0.16/gtk/build-intel-lib.sh        2022-11-06 
22:09:42.384802729 +0100
+@@ -10,13 +10,6 @@
+   fi
+ fi
+ 
+-which gcc >/dev/null
+-if [ $? -eq 0 ]; then
+-  CC=gcc
+-else
+-  CC=cc
+-fi
+-
+ # Hack to support FreeBSD; not 100% sure what this does, but it produces a
+ # library that passes all tests.
+ 
+@@ -64,8 +57,11 @@
+     ;;
+ esac
+ 
++patch -p0 <../intel-lib-custom-cc.patch
++
+ cd LIBRARY
+-$MK $OS_ARG CC=$CC CALL_BY_REF=1 GLOBAL_RND=1 GLOBAL_FLAGS=1 
UNCHANGED_BINARY_FLAGS=0 $ENDIAN_ARG
++echo $MK $OS_ARG A=a CC=$CC CALL_BY_REF=1 GLOBAL_RND=1 GLOBAL_FLAGS=1 
UNCHANGED_BINARY_FLAGS=0 $ENDIAN_ARG
++$MK $OS_ARG A=a CC=$CC CALL_BY_REF=1 GLOBAL_RND=1 GLOBAL_FLAGS=1 
UNCHANGED_BINARY_FLAGS=0 $ENDIAN_ARG
+ mv libbid.a ../../gcc111libbid.a
+ cd ../..
+ ( echo '#ifdef FREE42_FPTEST'; echo 'const char *readtest_lines[] = {'; tr -d 
'\r' < IntelRDFPMathLib20U1/TESTS/readtest.in | sed 's/^\(.*\)$/"\1",/'; echo 
'0 };'; echo '#endif' ) > readtest_lines.cc
+diff -Naur free42-nologo-3.0.16.orig/gtk/intel-lib-custom-cc.patch 
free42-nologo-3.0.16/gtk/intel-lib-custom-cc.patch
+--- free42-nologo-3.0.16.orig/gtk/intel-lib-custom-cc.patch    1970-01-01 
01:00:00.000000000 +0100
++++ free42-nologo-3.0.16/gtk/intel-lib-custom-cc.patch 2022-11-06 
22:18:35.428433045 +0100
+@@ -0,0 +1,31 @@
++diff -Naur orig/LIBRARY/makefile.iml_head LIBRARY/makefile.iml_head
++--- orig/LIBRARY/makefile.iml_head    2011-07-12 17:26:21.000000000 +0200
+++++ LIBRARY/makefile.iml_head 2022-11-06 22:18:17.048411637 +0100
++@@ -527,12 +527,8 @@
++ CC_TYPES      := gcc cl
++ INTEL_CC_LIST := icc icl
++ 
++-CC_NAME_INDEX := $(call GetIndex,$(CC_NAME),$(CC_NAME_LIST))
++-ifeq ($(CC_NAME_INDEX),)
++-    $(error "Unknown CC_NAME ($(CC_NAME)). Must be one of $(CC_NAME_LIST))
++-endif
++ 
++-CC_INDEX      := $(call GetIndex,$(CC_NAME),$(CC_NAME_LIST))
+++CC_INDEX      := 3
++ CC_TYPE       := $(word $(CC_INDEX),$(CC_TYPE_LIST))
++ CC_TYPE_INDEX := $(call GetIndex,$(CC_TYPE),$(CC_TYPES))
++ 
++@@ -543,13 +539,6 @@
++ _CPP := $(CC_NAME) $(call CcNameSelect,-EP,-EP,-E -P,-EP)
++ _CC  := $(CC_NAME) $(call CcNameSelect,, -nologo,, -nologo)
++ 
++-ifeq ($(origin CC),default)
++-    CC := $(_CC)
++-endif
++-ifeq ($(origin CPP),default)
++-    CPP := $(_CPP)
++-endif
++-
++ CselCc         = $(call Cset,$1,$(call CcTypeSelect,$2,$3))
++ 
++ QOPT           := $(call CselCc, QOPT,        -, /Q      )

diff --git a/app-emulation/free42/free42-3.0.16.ebuild 
b/app-emulation/free42/free42-3.0.16.ebuild
new file mode 100644
index 000000000000..8f7ee20884b8
--- /dev/null
+++ b/app-emulation/free42/free42-3.0.16.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+MY_PV="${PN}-nologo-${PV}"
+
+DESCRIPTION="An HP-42S Calculator Simulator"
+HOMEPAGE="https://thomasokken.com/free42/";
+SRC_URI="https://thomasokken.com/free42/upstream/${MY_PV}.tgz";
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+alsa"
+
+DEPEND="app-accessibility/at-spi2-core
+       x11-libs/cairo
+       x11-libs/gdk-pixbuf
+       x11-libs/gtk+:3
+       alsa? ( media-libs/alsa-lib )"
+
+RDEPEND="${DEPEND}"
+
+DOCS=( CREDITS HISTORY README )
+S="${WORKDIR}/${MY_PV}"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-3.0.14-fix-makefile.patch"
+       "${FILESDIR}/${PN}-3.0.16-fix-build-intel-lib.patch"
+)
+
+src_compile() {
+       local myconf
+       use alsa && myconf="AUDIO_ALSA=yes"
+       emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" ${myconf} -C gtk
+       emake -C gtk clean
+       emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" BCD_MATH=1 ${myconf} -C gtk
+}
+
+src_install() {
+       default
+       dobin gtk/free42bin gtk/free42dec
+}

Reply via email to