summaryrefslogtreecommitdiff
path: root/app-emulation/free42
diff options
context:
space:
mode:
Diffstat (limited to 'app-emulation/free42')
-rw-r--r--app-emulation/free42/Manifest3
-rw-r--r--app-emulation/free42/files/free42-3.0.16-fix-build-intel-lib.patch65
-rw-r--r--app-emulation/free42/free42-3.0.16.ebuild46
3 files changed, 114 insertions, 0 deletions
diff --git a/app-emulation/free42/Manifest b/app-emulation/free42/Manifest
index 69028cb32f39..75af6dbeda3c 100644
--- a/app-emulation/free42/Manifest
+++ b/app-emulation/free42/Manifest
@@ -1,10 +1,13 @@
AUX free42-2.5.16-fix-makefile.patch 1144 BLAKE2B 9bb78c5b5bde9fef99eace62c55e32ba769b7d900dd0ee06331dce908508d660d3324d547517bb6e806924511642970148d4a7332017b65743ee613e96ace4a9 SHA512 5bc11081460274078b87760054e3d554355eca651fe782a96d5bab7a450b61f3c007c3b9967c31412c74ce26d88f9cbd684307e5c0699427292233c3f0974093
AUX free42-2.5.3-fix-build-intel-lib.patch 758 BLAKE2B 800005751f0cbe9e89ffe94d5d25ab0a30cc1329ba79442d687f9fcd22e2edd080a43d816c8843e58827592c8c1932714fdd0012f8e643bb4c28d5cf23f9ade4 SHA512 73107855344c054318c678cffff9e39c89718d7d7d6445fc158109b8f678ebb95780a80584aa556c6076bf4c98c1d788dca09c9b727992374543c245c7400976
AUX free42-3.0.14-fix-makefile.patch 731 BLAKE2B 0534c19c6ecf9836ab10f71beeffe6e9068b8af340c5d73befef8ef24e2a0a2436fedceaffd822f3a89fd1d9b250201069fa0f0c3d079adadc5248af95c2fe4c SHA512 8610cf7230f2e6aaa1997d48c06e96bcfc4ff3eb233b1f5643c487a2c30870113e7617ccb13558735998a973f0e21f6fa9389bea4f17b6cfc8387d73c1e048c8
+AUX free42-3.0.16-fix-build-intel-lib.patch 2521 BLAKE2B f3518509a2f562916eb182f37745a98d04097b80e6bccc923d12d5d3a6f9076c063c7e258991f690b69f27ed622328009f8e1e602e6873cc2e0ac7d013f60db4 SHA512 e8d763e0b32f4cfca9a123b43151d8260bde95d445abb7181c5daef1326051eb3a358065d911b67fd6266c5ed368e2633586faf358dc213155a3df5ea480d9bd
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
EBUILD free42-2.5.24.ebuild 988 BLAKE2B 018e42a0d178fddad32220fb80a8052b883341ed595aeacb8c62189167b92354df147821701c496010a2d41d4492b9c8f9591e3dc3726277fca9032f22877b7b SHA512 558ca798068bb404d040e4f95ef2a404f8184d23f1b91c03801dd29599b2615f8bbaef509edac11d958a641ba103e2871cc7d5e4f1e2b7be47f6cfdc22d3cdac
EBUILD free42-3.0.13.ebuild 990 BLAKE2B 272954164a32219cc4981af05e4be9ea10d5e547fb252c42c910314b5c0a57441d9814a1b925fc9a00e90b1a2f35b3fa9a9b0c1583f2a5db002d3ad0e9d2397d SHA512 614a36b142db2bd2d20da52f492a8e015bf3ad0b04e0611a7aed3606cd5cc6bf5679ed5946b030e5ae96788ef695d39e7fc7bff25d5f4446c7be146db2c55f68
EBUILD free42-3.0.14.ebuild 962 BLAKE2B a494482e664ddd325bd819d8625211761454de7802a621ccec4ee966b3e63212cca86f71c33fe76d0ffc2db26fb73934e1c05cb0dee99809e8edf9716a942bf7 SHA512 3ecdd792e01e62bd0c052ba2e263a1d3c46fdf0d2def32177c88da3a17a3317ac638f6e2586c9e2f6e8d9ad3a5cb0d1f52cf172869e4b8c270dc96eb688695b1
+EBUILD free42-3.0.16.ebuild 981 BLAKE2B 231192987f6ed56883c3b06b6b5a041d9026f9676cbbddce6f95811f897cdcbe597652dc46f3b51b30c125caa191b570c7d15e8cf853bffdfd2485582681724d SHA512 b40135795063fdac6483f372452f0078a1eac1b7fd6a32a13ad167af779a58c0de96c549222ea0576c1584022b41c9d5b65e38e7db6c6d14f4060de5a6b06ccc
MISC metadata.xml 346 BLAKE2B e7d31b887aade448cfdd31d3221c1d01f13ae1ad9097c4b18fa39b927401d7aa1c0b0b4bad4c36251b74f976ae79899e1b64b6086656cfbbee2036e1cf85946d SHA512 a848ab39ebadfe8b2c866cec845b16c1a0d92070a8e4365bc576a3d4287078594d0eb41f704f5a2f9b35618e24d91de99f6760ced7d39d9a4f706ca6f5c5480b
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
+}