app-emulation/free42: Bumps version to 1.5.15
authorChema Alonso Josa <nimiux@gentoo.org>
Tue, 4 Apr 2017 12:51:08 +0000 (14:51 +0200)
committerChema Alonso Josa <nimiux@gentoo.org>
Tue, 4 Apr 2017 12:51:27 +0000 (14:51 +0200)
Package-Manager: Portage-2.3.3, Repoman-2.3.1

app-emulation/free42/Manifest
app-emulation/free42/files/free42-1.5.15-fix-build-intel-lib.patch [new file with mode: 0644]
app-emulation/free42/files/free42-1.5.15-fix-makefile.patch [new file with mode: 0644]
app-emulation/free42/free42-1.5.15.ebuild [new file with mode: 0644]

index 252073ff56f137bfb63dc6b9d0391e1c95b7ac5e..37b124916f1144e8ed0cc8d746cd052b22c61b90 100644 (file)
@@ -1 +1,2 @@
 DIST free42-1.5.13.tgz 22684310 SHA256 27caa84aa77257290ae27dfe04236bbf75126b197067a9c1cf7723cccbe65fd9 SHA512 b12b5be7a7d8241cb38046bef163143e71d9910c829179509daa00c47077a12c9b506bb0203bad1202e0200ae3a73cf4171d1dedd401c28fd18f1129199c4c1e WHIRLPOOL 588ea795af49fc235b4250f5f648930cb09b048cb7d44182c72622b285b76110816a20228d96ab94ee3b2bb8d55690d24d136e1524cb24630866161202d7373f
+DIST free42-1.5.15.tgz 22683600 SHA256 2dda0558141cd26d4b04aa96608c85eadb0770c4f2b660889d4b2a6f3a880c21 SHA512 fc09fcb0efaa6502776517b22cd0015ea7ac7d128b80bd740f64272b6c7aa41f5509dd7e0166dc18043790b4bef725a37a6a7210308a67aeaed02622f9e6daef WHIRLPOOL 5f6f5b33ccb2c320515fbc4e67ee52c6bc6c25fdbc8cf24c05772a90be87fed03f48dfa363b195071c4bc722428fb116d246e9df2eaddba20742648891ad7769
diff --git a/app-emulation/free42/files/free42-1.5.15-fix-build-intel-lib.patch b/app-emulation/free42/files/free42-1.5.15-fix-build-intel-lib.patch
new file mode 100644 (file)
index 0000000..6464714
--- /dev/null
@@ -0,0 +1,12 @@
+diff -Nuar a/gtk/build-intel-lib.sh b/gtk/build-intel-lib.sh
+--- a/gtk/build-intel-lib.sh   2017-04-01 20:02:45.000000000 +0200
++++ b/gtk/build-intel-lib.sh   2017-04-04 13:55:43.719038089 +0200
+@@ -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-1.5.15-fix-makefile.patch b/app-emulation/free42/files/free42-1.5.15-fix-makefile.patch
new file mode 100644 (file)
index 0000000..d64efb2
--- /dev/null
@@ -0,0 +1,58 @@
+diff -Nuar a/gtk/Makefile b/gtk/Makefile
+--- a/gtk/Makefile     2017-04-01 20:02:45.000000000 +0200
++++ b/gtk/Makefile     2017-04-04 13:59:04.969034463 +0200
+@@ -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-1.5.15.ebuild b/app-emulation/free42/free42-1.5.15.ebuild
new file mode 100644 (file)
index 0000000..4e80cf4
--- /dev/null
@@ -0,0 +1,47 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="An HP-42S Calculator Simulator"
+HOMEPAGE="http://thomasokken.com/free42/"
+SRC_URI="mirror://gentoo/${P}.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}/${PN}"
+
+src_prepare() {
+       default
+       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
+}
+
+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 TODO
+       dobin gtk/free42dec
+}