summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-emulation')
-rw-r--r--app-emulation/free42/Manifest1
-rw-r--r--app-emulation/free42/files/free42-2.0.15-fix-build-intel-lib.patch12
-rw-r--r--app-emulation/free42/files/free42-2.0.15-fix-makefile.patch58
-rw-r--r--app-emulation/free42/free42-2.0.15.ebuild49
4 files changed, 120 insertions, 0 deletions
diff --git a/app-emulation/free42/Manifest b/app-emulation/free42/Manifest
index c205bbc8887d..10246441290a 100644
--- a/app-emulation/free42/Manifest
+++ b/app-emulation/free42/Manifest
@@ -1,3 +1,4 @@
DIST free42-nologo-2.0.10.tgz 7389429 BLAKE2B a633a78ed5974e327aafa9d783c04bdcaa895940580c595c9c67ab0181ec7000efaa92021a485199268341f15f4c4bafe3964d4118c068e8abbfa2f358045b5a SHA512 4f03b9b206ef17e71295f0baac96ca26f34a00844cee6cad254f8ab798d3d0c724788200f3f207a3301f62eb0960707a23e6bcbb2ac924a78b0f0e1c78e70e6d
DIST free42-nologo-2.0.12.tgz 7389088 BLAKE2B 4f205439e7f642e266ec3f4b5032c9b48c2b726f5cce80a5a855b925ae7ff8cccbba1ce066f54af37b87f28a13f5c92e724d35ee71aa1439b3934b370662c3ca SHA512 b04d5c104deda8cb15d0a77186c55ae6270568255f4a6ad62ede33e0a154c42f5dce53456d60f434df04f46a0bb824caf45e58ce7c75f5a69102a7952defc611
+DIST free42-nologo-2.0.15.tgz 7389800 BLAKE2B f78a925459f7eea3347d5394cdde47cd7318770895ea0c375b14c5855ff9d08db86c72324122c15792db8e457fa6bfb8039a911de240e23269bf87def58381cf SHA512 533528b651b408156fb069e4969f35a1d365be84a7fc63d0d40a35ace75592dd88cc20def3dff2de4b7a7e3eeaeab99bb89ad333135be90dab13b52ac6af804b
DIST free42-nologo-2.0.6.tgz 7348647 BLAKE2B 708c88b4903358c23989d515c61884ffc9feae3d43fc54f1ac8a18779cfe8aa2d0e1a2ec667e24f78da58cd94ad515399191b7dc968adbc59bb97517b34680be SHA512 078a79cc4dfa36ae7342be5b90350f4b7269f4e71777f2620c2043510d6313acbc1fa9415b75f8b01bebb2de747b9af8a26738f877c34a4d82a1fdd52c75a61d
diff --git a/app-emulation/free42/files/free42-2.0.15-fix-build-intel-lib.patch b/app-emulation/free42/files/free42-2.0.15-fix-build-intel-lib.patch
new file mode 100644
index 000000000000..a321b1d714b8
--- /dev/null
+++ b/app-emulation/free42/files/free42-2.0.15-fix-build-intel-lib.patch
@@ -0,0 +1,12 @@
+diff -Nuar a/gtk/build-intel-lib.sh b/gtk/build-intel-lib.sh
+--- a/gtk/build-intel-lib.sh 2018-01-08 02:52:33.000000000 +0100
++++ b/gtk/build-intel-lib.sh 2018-01-13 19:43:23.709997784 +0100
+@@ -4,7 +4,7 @@
+ cd IntelRDFPMathLib20U1
+ patch -p0 <../intel-lib-linux.patch
+ cd LIBRARY
+-make CC=gcc CALL_BY_REF=1 GLOBAL_RND=1 GLOBAL_FLAGS=1 UNCHANGED_BINARY_FLAGS=0
++make A=a CC=gcc CALL_BY_REF=1 GLOBAL_RND=1 GLOBAL_FLAGS=1 UNCHANGED_BINARY_FLAGS=0
+ 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.0.15-fix-makefile.patch b/app-emulation/free42/files/free42-2.0.15-fix-makefile.patch
new file mode 100644
index 000000000000..7642316920f4
--- /dev/null
+++ b/app-emulation/free42/files/free42-2.0.15-fix-makefile.patch
@@ -0,0 +1,58 @@
+diff -Nuar a/gtk/Makefile b/gtk/Makefile
+--- a/gtk/Makefile 2018-01-08 02:52:33.000000000 +0100
++++ b/gtk/Makefile 2018-01-13 19:40:49.059998446 +0100
+@@ -15,11 +15,11 @@
+ # along with this program; if not, see http://www.gnu.org/licenses/.
+ ###############################################################################
+
+-CFLAGS = -MMD \
++CFLAGS := -MMD \
+ -Wall \
+ -Wno-parentheses \
+ -Wno-write-strings \
+- -g \
++ -Wno-error=narrowing \
+ -I/usr/X11R6/include \
+ $(shell pkg-config --cflags gtk+-2.0) \
+ -DVERSION="\"$(shell cat ../VERSION)\"" \
+@@ -27,21 +27,25 @@
+ -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 -lXmu $(shell pkg-config --libs gtk+-2.0)
++MYLDFLAGS = -L/usr/X11R6/lib
++LIBS = gcc111libbid.a -lX11 -ldl -lXmu $(shell pkg-config --libs gtk+-2.0)
+
+ ifeq "$(shell uname -s)" "Linux"
+-LDFLAGS += -Wl,--hash-style=both
++MYLDFLAGS += -Wl,--hash-style=both
+ LIBS += -lpthread
+ 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 \
+@@ -83,7 +87,7 @@
+ endif
+
+ $(EXE): $(OBJS)
+- $(CXX) -o $(EXE) $(LDFLAGS) $(OBJS) $(LIBS)
++ $(CXX) -o $(EXE) $(MYLDFLAGS) $(OBJS) $(LIBS)
+
+ $(SRCS) skin2cc.cc keymap2cc.cc skin2cc.conf: symlinks
+
diff --git a/app-emulation/free42/free42-2.0.15.ebuild b/app-emulation/free42/free42-2.0.15.ebuild
new file mode 100644
index 000000000000..ce44a72c5aed
--- /dev/null
+++ b/app-emulation/free42/free42-2.0.15.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils 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"
+
+S="${WORKDIR}/${MY_PV}"
+
+src_prepare() {
+ sed -i -e 's/print_gif_name\[FILENAMELEN\]/print_gif_name\[1000\]/' \
+ "${S}/gtk/shell_main.cc" || die
+ epatch "${FILESDIR}"/${P}-fix-makefile.patch
+ epatch "${FILESDIR}"/${P}-fix-build-intel-lib.patch
+ eapply_user
+}
+
+src_compile() {
+ local myconf
+ use alsa && myconf="AUDIO_ALSA=yes"
+ emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" BCD_MATH=1 ${myconf} -C "${S}/gtk"
+}
+
+src_install() {
+ dodoc CREDITS HISTORY README
+ dobin gtk/free42dec
+}