summaryrefslogtreecommitdiff
path: root/app-emulation/free42
diff options
context:
space:
mode:
Diffstat (limited to 'app-emulation/free42')
-rw-r--r--app-emulation/free42/Manifest4
-rw-r--r--app-emulation/free42/files/free42-2.5.3-fix-build-intel-lib.patch12
-rw-r--r--app-emulation/free42/files/free42-2.5.3-fix-makefile.patch62
-rw-r--r--app-emulation/free42/free42-2.5.3.ebuild53
4 files changed, 131 insertions, 0 deletions
diff --git a/app-emulation/free42/Manifest b/app-emulation/free42/Manifest
index f3f253fad286..9a3daab4cb0c 100644
--- a/app-emulation/free42/Manifest
+++ b/app-emulation/free42/Manifest
@@ -1,11 +1,15 @@
AUX free42-2.0.10-fix-build-intel-lib.patch 618 BLAKE2B 9039cdf8c78ff198ea9a4927621f7e23f362fffbd537a0a988030713fe061398d2b7b2fc6120cda280249807d9aee448095b1f5cdfb824909d7d381650daafbd SHA512 192eb5e78c50ce52449c5b859369ab7258a98162c5d924ab8b8f3566f52be7a3c4aba95c3cafd60af82d5dcf1b1ad784cf3fe6bf432839baa1b4ca994ddf416b
AUX free42-2.0.10-fix-makefile.patch 1888 BLAKE2B 113bfc1f296ea3d35d6b4f8aea5f590298c5a47f50a2a20f0ac5f1968b06be19d53f03e64dcf22134938c232f68a6b989250064f45e88196c7fc8e7e9e0fca71 SHA512 1c9a16e29087c492fe1ee5bba8dc118674f4c167b5bc138ffae9ee08ad735a5b5aa2eec2e25236e5aeb95b89c94d7903e08e22cfaa321cf3c458b54defe72af8
+AUX free42-2.5.3-fix-build-intel-lib.patch 758 BLAKE2B 800005751f0cbe9e89ffe94d5d25ab0a30cc1329ba79442d687f9fcd22e2edd080a43d816c8843e58827592c8c1932714fdd0012f8e643bb4c28d5cf23f9ade4 SHA512 73107855344c054318c678cffff9e39c89718d7d7d6445fc158109b8f678ebb95780a80584aa556c6076bf4c98c1d788dca09c9b727992374543c245c7400976
+AUX free42-2.5.3-fix-makefile.patch 1902 BLAKE2B 1d8ae0054275bba2f8fa46aa8c6086e5b41dae17a417d8f0fbf14bb63fe9504577f67bd92b612665d414e55396ed6bc7b1ac36983b4dcfb32b4eb98514d0f768 SHA512 895fe2a42a8e1129dbc2bd8b523ae9235eb606ae8d48f53fd2689d9991ee1818334f66d154218592d9bc92b9e1d080b148ff6fca6f80295b0dd0475d9e1bbad9
DIST free42-nologo-2.0.20.tgz 7390214 BLAKE2B 306f3378bcbb44fa7982c5d9c29bfbea62e915ca50ca5e5216f46fbf483f110a1288d4800991a74622a042517496ff8dd94c3fa3249e8bb4181957e6b23d5ea3 SHA512 9b540fbc50df2f94b135b5e778354f330df77a54ef2ad99b257b5b91d1e3e8d1241e8a834522fc46fe33571ea2695ad8889b427dbcf653870672e89cd56d60f5
DIST free42-nologo-2.2.1.tgz 7398286 BLAKE2B 041c9672305b712efab8e7d5eb73bc0bd159b5fd61e9ecf39d5ce691aff045be4a6a4c635c0948e610e51832db64b388bdd001eb57aad41724e27dff4cf95a0a SHA512 2ed735ff161ea14ca5be97131b69065410faa699ed05d3eb94abbb9653c694d83fc4e45ea2bcf0c2a7894f89e731ee7839105dc1d58d6a6326047c9bd55da5d7
DIST free42-nologo-2.4.2.tgz 7403471 BLAKE2B a2dba75bbdb8ceaee2f11dbc053ce50d71e0b5f46165fb61c6d3441326dc43b2afcdc2b99cbb638bbc59e19c5da948ce748b76ff4c612d5ed44e706583b159fb SHA512 046a42aebf1b4220acb9227dc365c26349b7a69c39d765b5ab59c83d9fc644055324c6288aaf87e6f9265310b5969335bc8be7035a84935fd7dda29bd9caf5a7
DIST free42-nologo-2.4.tgz 7402688 BLAKE2B 5e1a46977a3e385fc44f09b5e0088cf73f4a67c3657110311e95795a5b7beb2583dc56bee14e0f578f6ee3517acc78b311b2da0e1671c38d7a5bb150c1e30197 SHA512 a74efd40a952892f346bb4c4096b6e0c00c337e782696de1064d626ea1bbc8aa5a9b557ad233ac92bd27ce8fe4202837e72eddf8f0b31c9320e8c150c6c0b408
+DIST free42-nologo-2.5.3.tgz 7406566 BLAKE2B a8fcad4738b46e5725e323eb7c16929c32fe0c72eccadf2f692950a3ee952f3b8f7e1e46d6e4eee4e822ca5a3b2c42adb09e2b43f0480c954aef87dc81b1edd3 SHA512 9a96bc5453f938ba806117ac3162db4f87d3584662c8a1aae370f17a06c1e92167adb2c2bb9bbd17b91473f272f8c031c7ffc1944247962571a94cb7063f0904
EBUILD free42-2.0.20.ebuild 948 BLAKE2B 59ada24ef7746d402bfc2e9cb8ea80c23a68e3ffcd1a3da035281d7544422b21ee3c41fe005721672a180f97a850a7066f3a8087f4aa377fb4c0b4e6233fe49f SHA512 3c117630b0266091dff0b540c1975f6e5c69ec46d8a1f8ad55d7757147df9fc2a6bc9bd3bcfead241cfa8dde29deed727bc1bf39e1f833aab686f2c98504a123
EBUILD free42-2.2.1.ebuild 1039 BLAKE2B cf5965b23191d1c38450c6643844ca476f3b812b7cda7f17e963c1de3a4d0ff9146ee9a913131a208cf5567a01e92b19fc1700eee272a71f30ec1c51e0262018 SHA512 8b60d1a40b493a0a72c8b4f36fca1228c6f64d5bb7758594f923f2c6dd5db480381401b666b8a485012fd12a55b538e610b02000d2a394eb6516242b9473b4c9
EBUILD free42-2.4.2.ebuild 1039 BLAKE2B cf5965b23191d1c38450c6643844ca476f3b812b7cda7f17e963c1de3a4d0ff9146ee9a913131a208cf5567a01e92b19fc1700eee272a71f30ec1c51e0262018 SHA512 8b60d1a40b493a0a72c8b4f36fca1228c6f64d5bb7758594f923f2c6dd5db480381401b666b8a485012fd12a55b538e610b02000d2a394eb6516242b9473b4c9
EBUILD free42-2.4.ebuild 1039 BLAKE2B cf5965b23191d1c38450c6643844ca476f3b812b7cda7f17e963c1de3a4d0ff9146ee9a913131a208cf5567a01e92b19fc1700eee272a71f30ec1c51e0262018 SHA512 8b60d1a40b493a0a72c8b4f36fca1228c6f64d5bb7758594f923f2c6dd5db480381401b666b8a485012fd12a55b538e610b02000d2a394eb6516242b9473b4c9
+EBUILD free42-2.5.3.ebuild 1037 BLAKE2B a99bdae1c8b91e20de898df08545d008f73560d80df4ef5ea382998db6e493be6450e69b9f6c926c4a167b10a4ed163870a474bf1c59077c32ea3bc6316fb6e2 SHA512 8480fd31a82aa354835bc0502154c7c63b70061d319ff2648344f378a847a697d45974650a39f8f1b899cac6d9612cbdd999164b32319a47edcf52927ee7a7e6
MISC metadata.xml 547 BLAKE2B c7cdf7e2a312b69ae94b467836751bbf61dc771e58866edc21d70bf1b15c776afaefc20a947f6dc8af6586ec2b5e3416bd32446ca3a92890ed573daad6e48d38 SHA512 99885c9a7abecc41f53a946d1b94d2f8d8fda74f0e3f0a0cf6a43a418a874922594841e17b6197aee9f80b007d7633f2154ba85cec81dcfc22efcc7b52edd15d
diff --git a/app-emulation/free42/files/free42-2.5.3-fix-build-intel-lib.patch b/app-emulation/free42/files/free42-2.5.3-fix-build-intel-lib.patch
new file mode 100644
index 000000000000..e1e2ea89897a
--- /dev/null
+++ b/app-emulation/free42/files/free42-2.5.3-fix-build-intel-lib.patch
@@ -0,0 +1,12 @@
+diff -Naur free42-nologo-2.5.3.orig/gtk/build-intel-lib.sh free42-nologo-2.5.3/gtk/build-intel-lib.sh
+--- free42-nologo-2.5.3.orig/gtk/build-intel-lib.sh 2019-09-01 17:44:47.000000000 +0200
++++ free42-nologo-2.5.3/gtk/build-intel-lib.sh 2019-09-03 23:58:30.604579443 +0200
+@@ -65,7 +65,7 @@
+ esac
+
+ cd LIBRARY
+-$MK $OS_ARG 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 --git a/app-emulation/free42/files/free42-2.5.3-fix-makefile.patch b/app-emulation/free42/files/free42-2.5.3-fix-makefile.patch
new file mode 100644
index 000000000000..fc5abc33bfd0
--- /dev/null
+++ b/app-emulation/free42/files/free42-2.5.3-fix-makefile.patch
@@ -0,0 +1,62 @@
+diff -Naur free42-nologo-2.5.3.orig/gtk/Makefile free42-nologo-2.5.3/gtk/Makefile
+--- free42-nologo-2.5.3.orig/gtk/Makefile 2019-09-01 17:44:47.000000000 +0200
++++ free42-nologo-2.5.3/gtk/Makefile 2019-09-04 00:27:16.761482125 +0200
+@@ -15,7 +15,7 @@
+ # along with this program; if not, see http://www.gnu.org/licenses/.
+ ###############################################################################
+
+-CFLAGS = -MMD \
++CFLAGS := -MMD \
+ -Wall \
+ -Wno-parentheses \
+ -Wno-write-strings \
+@@ -34,15 +34,17 @@
+ -DDECIMAL_GLOBAL_ROUNDING=1 \
+ -DDECIMAL_GLOBAL_ROUNDING_ACCESS_FUNCTIONS=1 \
+ -DDECIMAL_GLOBAL_EXCEPTION_FLAGS=1 \
+- -DDECIMAL_GLOBAL_EXCEPTION_FLAGS_ACCESS_FUNCTIONS=1
++ -DDECIMAL_GLOBAL_EXCEPTION_FLAGS_ACCESS_FUNCTIONS=1 \
++ ${CFLAGS}
+
+-CXXFLAGS = $(CFLAGS) \
++CXXFLAGS := $(CFLAGS) \
+ -fno-exceptions \
+ -fno-rtti \
+- -D_WCHAR_T_DEFINED
++ -D_WCHAR_T_DEFINED \
++ ${CXXFLAGS}
+
+-LDFLAGS = -L/usr/X11R6/lib
+-LIBS = gcc111libbid.a $(shell pkg-config --libs gtk+-2.0) -lXmu -lX11
++MYLDFLAGS = -L/usr/X11R6/lib
++LIBS = gcc111libbid.a -ldl -lpthread -lX11 -lXmu $(shell pkg-config --libs gtk+-2.0)
+
+ ifeq "$(shell uname -s)" "FreeBSD"
+ ifdef AUDIO_ALSA
+@@ -54,6 +56,8 @@
+ CFLAGS += -DF42_BIG_ENDIAN -DBID_BIG_ENDIAN
+ endif
+
++MYLDFLAGS += ${LDFLAGS}
++
+ SRCS = shell_main.cc shell_skin.cc skins.cc keymap.cc shell_loadimage.cc \
+ shell_spool.cc core_main.cc core_commands1.cc core_commands2.cc \
+ core_commands3.cc core_commands4.cc core_commands5.cc \
+@@ -95,7 +99,7 @@
+ endif
+
+ $(EXE): $(OBJS)
+- $(CXX) -o $(EXE) $(LDFLAGS) $(OBJS) $(LIBS)
++ $(CXX) -o $(EXE) $(MYLDFLAGS) $(OBJS) $(LIBS)
+
+ $(SRCS) skin2cc.cc keymap2cc.cc skin2cc.conf: symlinks
+
+@@ -119,7 +123,7 @@
+
+ symlinks:
+ for fn in `cd ../common; /bin/ls`; do ln -s ../common/$$fn; done
+- sh ./build-intel-lib.sh
++ +sh ./build-intel-lib.sh
+ ln -s IntelRDFPMathLib20U1/TESTS/readtest.c
+ touch symlinks
+
diff --git a/app-emulation/free42/free42-2.5.3.ebuild b/app-emulation/free42/free42-2.5.3.ebuild
new file mode 100644
index 000000000000..67e64a2dd933
--- /dev/null
+++ b/app-emulation/free42/free42-2.5.3.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs
+
+MY_PV="${PN}-nologo-${PV}"
+
+DESCRIPTION="An HP-42S Calculator Simulator"
+HOMEPAGE="http://thomasokken.com/free42/"
+SRC_URI="http://thomasokken.com/free42/upstream/${MY_PV}.tgz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+alsa"
+
+DEPEND="dev-libs/atk
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf
+ x11-libs/gtk+:2
+ x11-libs/pango
+ alsa? ( media-libs/alsa-lib )"
+
+RDEPEND="${DEPEND}
+ x11-libs/libX11
+ x11-libs/libXmu"
+
+DOCS=( CREDITS HISTORY README )
+S="${WORKDIR}/${MY_PV}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2.5.3-fix-makefile.patch"
+ "${FILESDIR}/${PN}-2.5.3-fix-build-intel-lib.patch"
+)
+
+src_prepare() {
+ default
+}
+
+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
+}