diff --git a/XD/XD.tar.gz b/XD/XD.tar.gz new file mode 100644 index 0000000..03710d7 Binary files /dev/null and b/XD/XD.tar.gz differ diff --git a/XD/XD/README b/XD/XD/README new file mode 100644 index 0000000..530e0c7 --- /dev/null +++ b/XD/XD/README @@ -0,0 +1,13 @@ +XD - I2P BitTorrent Client written in GO + +Features: + + - i2p only, no chances of cross network contamination, + aka no way to leak IP. + - works with i2pd and Java I2P using the SAM api + - Magnet URIs + +Build options: + + - To enable Lokinet, pass "LOKINET=1" to the script. + - To disable the web-ui, pass "no-webui" to the script. diff --git a/XD/XD/XD.SlackBuild b/XD/XD/XD.SlackBuild new file mode 100755 index 0000000..844dbe3 --- /dev/null +++ b/XD/XD/XD.SlackBuild @@ -0,0 +1,87 @@ +#!/bin/sh + +# Slackbuild for XD + +# Written by shelldweller +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +PRGNAM=XD +VERSION=${VERSION:-0.4.1} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) ARCH=i586 ;; + arm*) ARCH=arm ;; + *) ARCH=$( uname -m ) ;; + esac +fi + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=i586 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +set -e + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM-$VERSION +tar xvf $CWD/v$VERSION.tar.gz +cd $PRGNAM-$VERSION +chown -R root:root . +find -L . \ + \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ + -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; + +make install PREFIX=$PKG/usr + +find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \ + | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a CODE_OF_CONDUCT.md LICENSE README.md docs/ \ + $PKG/usr/doc/$PRGNAM-$VERSION +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild +find $PKG/usr/doc/$PRGNAM-$VERSION -type f -exec chmod 644 {} \; + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} diff --git a/XD/XD/XD.info b/XD/XD/XD.info new file mode 100644 index 0000000..c570730 --- /dev/null +++ b/XD/XD/XD.info @@ -0,0 +1,10 @@ +PRGNAM="XD" +VERSION="0.4.1" +HOMEPAGE="https://github.com/majestrate/XD" +DOWNLOAD="https://github.com/majestrate/XD/archive/v0.4.1.tar.gz" +MD5SUM="29f301aa4ebbdea3d8df8af9337e4f7a" +DOWNLOAD_x86_64="" +MD5SUM_x86_64="" +REQUIRES="google-go-lang" +MAINTAINER="shelldweller" +EMAIL="shelldweller@beauxbead.com" diff --git a/XD/XD/slack-desc b/XD/XD/slack-desc new file mode 100644 index 0000000..6e4eece --- /dev/null +++ b/XD/XD/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. +# Line up the first '|' above the ':' following the base package name, and +# the '|' on the right side marks the last column you can put a character in. +# You must make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':' except on otherwise blank lines. + + |-----handy-ruler------------------------------------------------------| +XD: XD (I2P BitTorrent Client written in GO) +XD: +XD: Features: +XD: +XD: - i2p only, no chances of cross network contamination, +XD: aka no way to leak IP. +XD: +XD: - works with i2pd and Java I2P using the SAM api +XD: +XD: - Magnet URIs +XD: diff --git a/i2pd/i2pd.tar.gz b/i2pd/i2pd.tar.gz new file mode 100644 index 0000000..5649efa Binary files /dev/null and b/i2pd/i2pd.tar.gz differ diff --git a/i2pd/i2pd/README b/i2pd/i2pd/README new file mode 100644 index 0000000..512eb79 --- /dev/null +++ b/i2pd/i2pd/README @@ -0,0 +1,13 @@ +i2pd (I2P Daemon) is a full-featured C++ implementation of I2P client. + +I2P (Invisible Internet Protocol) is a universal anonymous network +layer. All communications over I2P are anonymous and end-to-end +encrypted, participants don't reveal their real IP addresses. + +I2P client is a software used for building and using anonymous I2P +networks. Such networks are commonly used for anonymous peer-to-peer +applications (filesharing, cryptocurrencies) and anonymous client-server +applications (websites, instant messengers, chat-servers). + +I2P allows people from all around the world to communicate and share +information without restrictions. diff --git a/i2pd/i2pd/i2pd.SlackBuild b/i2pd/i2pd/i2pd.SlackBuild new file mode 100755 index 0000000..8b5885c --- /dev/null +++ b/i2pd/i2pd/i2pd.SlackBuild @@ -0,0 +1,101 @@ +#!/bin/bash + +# Slackbuild for i2pd + +# Written by shelldweller +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +PRGNAM=i2pd +VERSION=${VERSION:-2.39.0} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) ARCH=i586 ;; + arm*) ARCH=arm ;; + *) ARCH=$( uname -m ) ;; + esac +fi + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=i586 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +set -e + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM-$VERSION +tar xvf $CWD/$PRGNAM-$VERSION.tar.gz +cd $PRGNAM-$VERSION +chown -R root:root . +find -L . \ + \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ + -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; + +cd build +sed -i \ + "s,LIBRARY DESTINATION lib,LIBRARY DESTINATION lib${LIBDIRSUFFIX}," \ + CMakeLists.txt + cmake \ + -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DWITH_STATIC=OFF \ + -DBUILD_SHARED_LIBS=ON \ + -DCMAKE_BUILD_TYPE=Release . + make + make install DESTDIR=$PKG +cd .. + +find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \ + | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a ChangeLog LICENSE README.md docs/ \ + $PKG/usr/doc/$PRGNAM-$VERSION +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild +find $PKG/usr/doc -name "Makefile" -delete +find $PKG/usr/doc -type f -exec chmod 644 {} \; + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} diff --git a/i2pd/i2pd/i2pd.info b/i2pd/i2pd/i2pd.info new file mode 100644 index 0000000..4ded318 --- /dev/null +++ b/i2pd/i2pd/i2pd.info @@ -0,0 +1,10 @@ +PRGNAM="i2pd" +VERSION="2.39.0" +HOMEPAGE="http://i2pd.website/" +DOWNLOAD="https://github.com/PurpleI2P/i2pd/archive/2.39.0/i2pd-2.39.0.tar.gz" +MD5SUM="491dea4ad9527b782357d2df94f1f3c9" +DOWNLOAD_x86_64="" +MD5SUM_x86_64="" +REQUIRES="" +MAINTAINER="shelldweller" +EMAIL="shelldweller@beauxbead.com" diff --git a/i2pd/i2pd/slack-desc b/i2pd/i2pd/slack-desc new file mode 100644 index 0000000..7f7d653 --- /dev/null +++ b/i2pd/i2pd/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. +# Line up the first '|' above the ':' following the base package name, and +# the '|' on the right side marks the last column you can put a character in. +# You must make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':' except on otherwise blank lines. + + |-----handy-ruler------------------------------------------------------| +i2pd: i2pd (I2P Daemon) +i2pd: +i2pd: A full-featured C++ implementation of an I2P client. +i2pd: +i2pd: An I2P client is software used for building and using anonymous I2P +i2pd: networks. Such networks are commonly used for anonymous peer-to-peer +i2pd: applications (filesharing, cryptocurrencies) and anonymous client- +i2pd: server applications (websites, instant messengers, chat-servers). +i2pd: +i2pd: I2P allows people from all around the world to communicate and share +i2pd: information without restrictions. diff --git a/tiemu/tiemu.tar.gz b/tiemu/tiemu.tar.gz new file mode 100644 index 0000000..470a522 Binary files /dev/null and b/tiemu/tiemu.tar.gz differ diff --git a/tiemu/tiemu/README b/tiemu/tiemu/README new file mode 100644 index 0000000..8349721 --- /dev/null +++ b/tiemu/tiemu/README @@ -0,0 +1,7 @@ +TiEmu is a multi-platform emulator for TI89 / TI89 Titanium / TI92 / +TI92+ / V200PLT hand-helds. + +TiEmu does not emulate TI82, 83, ... hand-helds but TiLem does. + +TiEmu requires a ROM for your calculator. A GPL'd ROM called PedroM +is included. diff --git a/tiemu/tiemu/doinst.sh b/tiemu/tiemu/doinst.sh new file mode 100644 index 0000000..65c7e2e --- /dev/null +++ b/tiemu/tiemu/doinst.sh @@ -0,0 +1,9 @@ +if [ -x /usr/bin/update-desktop-database ]; then + /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1 +fi + +if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then + if [ -x /usr/bin/gtk-update-icon-cache ]; then + /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1 + fi +fi diff --git a/tiemu/tiemu/patches/01-build-fix.patch b/tiemu/tiemu/patches/01-build-fix.patch new file mode 100644 index 0000000..7660b69 --- /dev/null +++ b/tiemu/tiemu/patches/01-build-fix.patch @@ -0,0 +1,487 @@ +# This patch is based on the Ubuntu patch for TiEmu 3.02, see +# http://packages.ubuntu.com/de/oneiric/tiemu + + +diff -purN tiemu-3.03.orig/src/gui/calc/calc.c tiemu-3.03/src/gui/calc/calc.c +--- tiemu-3.03.orig/src/gui/calc/calc.c 2007-12-16 16:29:16.000000000 +0100 ++++ tiemu-3.03/src/gui/calc/calc.c 2011-11-04 23:11:40.000000000 +0100 +@@ -313,7 +313,7 @@ on_drawingarea1_expose_event ( + { + gdk_draw_pixmap( + widget->window, +- widget->style->fg_gc[GTK_WIDGET_STATE (widget)], ++ widget->style->fg_gc[gtk_widget_get_state (widget)], + pixmap, + event->area.x, event->area.y, + event->area.x, event->area.y, +@@ -586,7 +586,7 @@ int hid_init(void) + + // Install LCD refresh: 100 FPS (10 ms) + tid = g_timeout_add((params.lcd_rate == -1) ? 50 : params.lcd_rate, +- (GtkFunction)hid_refresh, NULL); ++ (GSourceFunc)hid_refresh, NULL); + + explicit_destroy = 0; + gtk_widget_show(main_wnd); // show wnd here +@@ -640,7 +640,7 @@ void hid_lcd_rate_set(void) + g_source_remove(tid); + + tid = g_timeout_add((params.lcd_rate == -1) ? 50 : params.lcd_rate, +- (GtkFunction)hid_refresh, NULL); ++ (GSourceFunc)hid_refresh, NULL); + } + + int hid_switch_with_skin(void) +diff -purN tiemu-3.03.orig/src/gui/calc/popup.c tiemu-3.03/src/gui/calc/popup.c +--- tiemu-3.03.orig/src/gui/calc/popup.c 2009-05-08 22:43:47.000000000 +0200 ++++ tiemu-3.03/src/gui/calc/popup.c 2011-11-04 22:45:28.000000000 +0100 +@@ -26,7 +26,9 @@ + # include + #endif + ++#undef GTK_DISABLE_DEPRECATED + #include ++#define GTK_DISABLE_DEPRECATED + #include + #include + #include +diff -purN tiemu-3.03.orig/src/gui/calc/screen.c tiemu-3.03/src/gui/calc/screen.c +--- tiemu-3.03.orig/src/gui/calc/screen.c 2006-11-06 18:18:51.000000000 +0100 ++++ tiemu-3.03/src/gui/calc/screen.c 2011-11-04 23:12:09.000000000 +0100 +@@ -187,7 +187,7 @@ void redraw_skin(void) + skin_infos.image = gdk_pixbuf_scale_simple(skin_infos.raw, wr.wr.w, wr.wr.h, GDK_INTERP_NEAREST); + + // and draw image into pixmap (next, into window on expose event) +- gdk_draw_pixbuf(pixmap, main_wnd->style->fg_gc[GTK_WIDGET_STATE(main_wnd)], ++ gdk_draw_pixbuf(pixmap, main_wnd->style->fg_gc[gtk_widget_get_state(main_wnd)], + skin_infos.image, 0, 0, 0, 0, -1, -1, GDK_RGB_DITHER_NONE, 0, 0); + gdk_window_invalidate_rect(main_wnd->window, &wr.gr, FALSE); + } +@@ -204,7 +204,7 @@ void redraw_lcd(void) + gdk_pixbuf_scale_simple(skin_infos.raw, sr.w, sr.h, GDK_INTERP_NEAREST); + + // and draw +- gdk_draw_pixbuf(pixmap, main_wnd->style->fg_gc[GTK_WIDGET_STATE(main_wnd)], ++ gdk_draw_pixbuf(pixmap, main_wnd->style->fg_gc[gtk_widget_get_state(main_wnd)], + skin_infos.image, ls.x, ls.y, lr.x, lr.y, lr.w, lr.h, GDK_RGB_DITHER_NONE, 0, 0); + gtk_widget_queue_draw_area(area, lr.x, lr.y, lr.w, lr.h); + } +@@ -324,7 +324,7 @@ int hid_update_lcd(void) + skin_infos.image = gdk_pixbuf_scale_simple(lcd, lr.w, lr.h, GDK_INTERP_NEAREST); + + // and draw image into pixmap (next, into window on expose event) +- gdk_draw_pixbuf(pixmap, main_wnd->style->fg_gc[GTK_WIDGET_STATE(main_wnd)], ++ gdk_draw_pixbuf(pixmap, main_wnd->style->fg_gc[gtk_widget_get_state(main_wnd)], + skin_infos.image, src.x, src.y, lr.x, lr.y, src.w, src.h, + GDK_RGB_DITHER_NONE, 0, 0); + gtk_widget_queue_draw_area(area, lr.x, lr.y, src.w, src.h); +@@ -332,7 +332,7 @@ int hid_update_lcd(void) + else + { + // and draw image into pixmap (next, into window on expose event) +- gdk_draw_pixbuf(pixmap, main_wnd->style->fg_gc[GTK_WIDGET_STATE(main_wnd)], ++ gdk_draw_pixbuf(pixmap, main_wnd->style->fg_gc[gtk_widget_get_state(main_wnd)], + lcd_mem, src.x, src.y, lr.x, lr.y, src.w, src.h, + GDK_RGB_DITHER_NONE, 0, 0); + gtk_widget_queue_draw_area(area, lr.x, lr.y, src.w, src.h); +diff -purN tiemu-3.03.orig/src/gui/debugger/dbg_all.c tiemu-3.03/src/gui/debugger/dbg_all.c +--- tiemu-3.03.orig/src/gui/debugger/dbg_all.c 2009-05-08 12:56:40.000000000 +0200 ++++ tiemu-3.03/src/gui/debugger/dbg_all.c 2011-11-04 22:46:29.000000000 +0100 +@@ -90,21 +90,21 @@ void gtk_debugger_refresh(void) + { + WND_TMR_START(); + +- if(options3.dbg_dock || GTK_WIDGET_VISIBLE(dbgw.regs)) ++ if(options3.dbg_dock || gtk_widget_get_visible(dbgw.regs)) + dbgregs_refresh_window(); +- if(options3.dbg_dock || GTK_WIDGET_VISIBLE(dbgw.mem)) ++ if(options3.dbg_dock || gtk_widget_get_visible(dbgw.mem)) + dbgmem_refresh_window(); +- if(options3.dbg_dock || GTK_WIDGET_VISIBLE(dbgw.bkpts)) ++ if(options3.dbg_dock || gtk_widget_get_visible(dbgw.bkpts)) + dbgbkpts_refresh_window(); +- if(options3.dbg_dock || GTK_WIDGET_VISIBLE(dbgw.pclog)) ++ if(options3.dbg_dock || gtk_widget_get_visible(dbgw.pclog)) + dbgpclog_refresh_window(); +- if(options3.dbg_dock || GTK_WIDGET_VISIBLE(dbgw.code)) ++ if(options3.dbg_dock || gtk_widget_get_visible(dbgw.code)) + dbgcode_refresh_window(); +- if(options3.dbg_dock || GTK_WIDGET_VISIBLE(dbgw.stack)) ++ if(options3.dbg_dock || gtk_widget_get_visible(dbgw.stack)) + dbgstack_refresh_window(); +- if(options3.dbg_dock || GTK_WIDGET_VISIBLE(dbgw.heap)) ++ if(options3.dbg_dock || gtk_widget_get_visible(dbgw.heap)) + dbgheap_refresh_window(); +- if(options3.dbg_dock || GTK_WIDGET_VISIBLE(dbgw.iop)) ++ if(options3.dbg_dock || gtk_widget_get_visible(dbgw.iop)) + dbgiop_refresh_window(); + + WND_TMR_STOP("Debugger Refresh Time"); +@@ -163,7 +163,7 @@ int gtk_debugger_enter(int context) + gtk_debugger_refresh(); + + // enable the debugger if GDB disabled it +- if (!options3.dbg_dock && !GTK_WIDGET_SENSITIVE(dbgw.regs)) ++ if (!options3.dbg_dock && !gtk_widget_get_sensitive(dbgw.regs)) + gtk_debugger_enable(); + + // handle automatic debugging requests +@@ -180,7 +180,7 @@ int gtk_debugger_enter(int context) + + ti68k_bkpt_get_pgmentry_offset(id, &handle, &offset); + ti68k_bkpt_del_pgmentry(handle); +- if(options3.dbg_dock || GTK_WIDGET_VISIBLE(dbgw.bkpts)) ++ if(options3.dbg_dock || gtk_widget_get_visible(dbgw.bkpts)) + dbgbkpts_refresh_window(); + + delete_command(NULL, 0); +diff -purN tiemu-3.03.orig/src/gui/debugger/dbg_bkpts.c tiemu-3.03/src/gui/debugger/dbg_bkpts.c +--- tiemu-3.03.orig/src/gui/debugger/dbg_bkpts.c 2009-05-06 21:48:47.000000000 +0200 ++++ tiemu-3.03/src/gui/debugger/dbg_bkpts.c 2011-11-04 22:46:29.000000000 +0100 +@@ -388,7 +388,7 @@ GtkWidget* dbgbkpts_display_window(void) + gtk_window_iconify(GTK_WINDOW(wnd)); + #endif + +- if(!GTK_WIDGET_VISIBLE(dbgw.bkpts) && !options3.bkpts.closed) ++ if(!gtk_widget_get_visible(dbgw.bkpts) && !options3.bkpts.closed) + gtk_widget_show(wnd); + + return wnd; +diff -purN tiemu-3.03.orig/src/gui/debugger/dbg_code.c tiemu-3.03/src/gui/debugger/dbg_code.c +--- tiemu-3.03.orig/src/gui/debugger/dbg_code.c 2009-05-06 21:48:47.000000000 +0200 ++++ tiemu-3.03/src/gui/debugger/dbg_code.c 2011-11-04 22:46:29.000000000 +0100 +@@ -1117,7 +1117,7 @@ void gdbcallback_refresh_debugger(void) + + int dbgcode_quit_enabled(void) + { +- return GTK_WIDGET_SENSITIVE(mi.m8); ++ return gtk_widget_get_sensitive(mi.m8); + } + + static int close_debugger_wrapper(gpointer data) +diff -purN tiemu-3.03.orig/src/gui/debugger/dbg_dock.c tiemu-3.03/src/gui/debugger/dbg_dock.c +--- tiemu-3.03.orig/src/gui/debugger/dbg_dock.c 2008-05-26 18:48:30.000000000 +0200 ++++ tiemu-3.03/src/gui/debugger/dbg_dock.c 2011-11-04 23:05:02.000000000 +0100 +@@ -151,22 +151,22 @@ void dbgdock_set_sensitivity(int state) + + void dbgdock_show_all(int all) + { +- if(!GTK_WIDGET_VISIBLE(dbgw.dock) && all) ++ if(!gtk_widget_get_visible(dbgw.dock) && all) + gtk_widget_show(dbgw.dock); + +- if(GTK_WIDGET_VISIBLE(dbgw.iop)) ++ if(gtk_widget_get_visible(dbgw.iop)) + gtk_window_iconify(GTK_WINDOW(dbgw.iop)); +- if(GTK_WIDGET_VISIBLE(dbgw.pclog)) ++ if(gtk_widget_get_visible(dbgw.pclog)) + gtk_window_iconify(GTK_WINDOW(dbgw.pclog)); + } + + void dbgdock_hide_all(int all) + { +- if(GTK_WIDGET_VISIBLE(dbgw.dock) && all) ++ if(gtk_widget_get_visible(dbgw.dock) && all) + gtk_widget_hide(dbgw.dock); + +- if(GTK_WIDGET_VISIBLE(dbgw.pclog)) ++ if(gtk_widget_get_visible(dbgw.pclog)) + gtk_widget_hide(dbgw.pclog); +- if(GTK_WIDGET_VISIBLE(dbgw.iop)) ++ if(gtk_widget_get_visible(dbgw.iop)) + gtk_widget_hide(dbgw.iop); + } +diff -purN tiemu-3.03.orig/src/gui/debugger/dbg_heap.c tiemu-3.03/src/gui/debugger/dbg_heap.c +--- tiemu-3.03.orig/src/gui/debugger/dbg_heap.c 2009-05-06 21:48:47.000000000 +0200 ++++ tiemu-3.03/src/gui/debugger/dbg_heap.c 2011-11-04 22:46:29.000000000 +0100 +@@ -171,7 +171,7 @@ GtkWidget* dbgheap_display_window(void) + gtk_window_iconify(GTK_WINDOW(dbgw.heap)); + #endif + +- if(!GTK_WIDGET_VISIBLE(dbgw.heap) && !options3.heap.closed) ++ if(!gtk_widget_get_visible(dbgw.heap) && !options3.heap.closed) + gtk_widget_show(dbgw.heap); + + return dbgw.heap; +diff -purN tiemu-3.03.orig/src/gui/debugger/dbg_iop.c tiemu-3.03/src/gui/debugger/dbg_iop.c +--- tiemu-3.03.orig/src/gui/debugger/dbg_iop.c 2009-05-02 21:46:04.000000000 +0200 ++++ tiemu-3.03/src/gui/debugger/dbg_iop.c 2011-11-04 22:46:29.000000000 +0100 +@@ -455,7 +455,7 @@ GtkWidget* dbgiop_display_window(void) + gtk_window_iconify(GTK_WINDOW(dbgw.iop)); + #endif + +- if(!GTK_WIDGET_VISIBLE(dbgw.iop) && !options3.iop.closed) ++ if(!gtk_widget_get_visible(dbgw.iop) && !options3.iop.closed) + gtk_widget_show(dbgw.iop); + + return dbgw.iop; +diff -purN tiemu-3.03.orig/src/gui/debugger/dbg_mem.c tiemu-3.03/src/gui/debugger/dbg_mem.c +--- tiemu-3.03.orig/src/gui/debugger/dbg_mem.c 2009-05-06 21:48:47.000000000 +0200 ++++ tiemu-3.03/src/gui/debugger/dbg_mem.c 2011-11-04 22:46:29.000000000 +0100 +@@ -435,7 +435,7 @@ GtkWidget* dbgmem_display_window(void) + gtk_window_iconify(GTK_WINDOW(dbgw.mem)); + #endif + +- if(!GTK_WIDGET_VISIBLE(dbgw.mem) && !options3.mem.closed) ++ if(!gtk_widget_get_visible(dbgw.mem) && !options3.mem.closed) + gtk_widget_show(dbgw.mem); + + return dbgw.mem; +@@ -605,7 +605,7 @@ dbgmem_button6_clicked + + GLADE_CB void + on_notebook1_switch_page (GtkNotebook *notebook, +- GtkNotebookPage *page, ++ gpointer *page, + guint page_num, + gpointer user_data) + { +diff -purN tiemu-3.03.orig/src/gui/debugger/dbg_pclog.c tiemu-3.03/src/gui/debugger/dbg_pclog.c +--- tiemu-3.03.orig/src/gui/debugger/dbg_pclog.c 2009-05-02 21:46:04.000000000 +0200 ++++ tiemu-3.03/src/gui/debugger/dbg_pclog.c 2011-11-04 22:46:29.000000000 +0100 +@@ -163,7 +163,7 @@ GtkWidget* dbgpclog_display_window(void) + gtk_window_iconify(GTK_WINDOW(dbgw.pclog)); + #endif + +- if(!GTK_WIDGET_VISIBLE(dbgw.pclog) && !options3.pclog.closed) ++ if(!gtk_widget_get_visible(dbgw.pclog) && !options3.pclog.closed) + gtk_widget_show(dbgw.pclog); + + return dbgw.pclog; +diff -purN tiemu-3.03.orig/src/gui/debugger/dbg_regs.c tiemu-3.03/src/gui/debugger/dbg_regs.c +--- tiemu-3.03.orig/src/gui/debugger/dbg_regs.c 2009-05-06 21:48:47.000000000 +0200 ++++ tiemu-3.03/src/gui/debugger/dbg_regs.c 2011-11-04 22:46:29.000000000 +0100 +@@ -302,7 +302,7 @@ GtkWidget* dbgregs_display_window(void) + gtk_window_iconify(GTK_WINDOW(dbgw.regs)); + #endif + +- if(!GTK_WIDGET_VISIBLE(dbgw.regs) && !options3.regs.closed) ++ if(!gtk_widget_get_visible(dbgw.regs) && !options3.regs.closed) + gtk_widget_show(dbgw.regs); + + return dbgw.regs; +diff -purN tiemu-3.03.orig/src/gui/debugger/dbg_romcall.c tiemu-3.03/src/gui/debugger/dbg_romcall.c +--- tiemu-3.03.orig/src/gui/debugger/dbg_romcall.c 2007-07-05 13:36:10.000000000 +0200 ++++ tiemu-3.03/src/gui/debugger/dbg_romcall.c 2011-11-04 22:46:29.000000000 +0100 +@@ -29,7 +29,9 @@ + # include + #endif + +-#include ++#undef GTK_DISABLE_DEPRECATED ++ #include ++#define GTK_DISABLE_DEPRECATED + #include + #include + +diff -purN tiemu-3.03.orig/src/gui/debugger/dbg_stack.c tiemu-3.03/src/gui/debugger/dbg_stack.c +--- tiemu-3.03.orig/src/gui/debugger/dbg_stack.c 2009-05-06 21:48:47.000000000 +0200 ++++ tiemu-3.03/src/gui/debugger/dbg_stack.c 2011-11-04 22:46:29.000000000 +0100 +@@ -197,7 +197,7 @@ GtkWidget* dbgstack_display_window(void) + gtk_window_iconify(GTK_WINDOW(dbgw.stack)); + #endif + +- if(!GTK_WIDGET_VISIBLE(dbgw.stack) && !options3.stack.closed) ++ if(!gtk_widget_get_visible(dbgw.stack) && !options3.stack.closed) + gtk_widget_show(dbgw.stack); + + return dbgw.stack; +diff -purN tiemu-3.03.orig/src/gui/debugger/dbg_wnds.c tiemu-3.03/src/gui/debugger/dbg_wnds.c +--- tiemu-3.03.orig/src/gui/debugger/dbg_wnds.c 2009-05-07 09:18:02.000000000 +0200 ++++ tiemu-3.03/src/gui/debugger/dbg_wnds.c 2011-11-04 23:07:54.000000000 +0100 +@@ -74,21 +74,21 @@ void dbgwnds_minimize_all(int all) + if(options3.dbg_dock) + return; + +- if(GTK_WIDGET_VISIBLE(dbgw.regs)) ++ if(gtk_widget_get_visible(dbgw.regs)) + gtk_window_iconify(GTK_WINDOW(dbgw.regs)); +- if(GTK_WIDGET_VISIBLE(dbgw.bkpts)) ++ if(gtk_widget_get_visible(dbgw.bkpts)) + gtk_window_iconify(GTK_WINDOW(dbgw.bkpts)); +- if(GTK_WIDGET_VISIBLE(dbgw.mem)) ++ if(gtk_widget_get_visible(dbgw.mem)) + gtk_window_iconify(GTK_WINDOW(dbgw.mem)); +- if(GTK_WIDGET_VISIBLE(dbgw.pclog)) ++ if(gtk_widget_get_visible(dbgw.pclog)) + gtk_window_iconify(GTK_WINDOW(dbgw.pclog)); +- if(GTK_WIDGET_VISIBLE(dbgw.code) & all) ++ if(gtk_widget_get_visible(dbgw.code) & all) + gtk_window_iconify(GTK_WINDOW(dbgw.code)); +- if(GTK_WIDGET_VISIBLE(dbgw.stack)) ++ if(gtk_widget_get_visible(dbgw.stack)) + gtk_window_iconify(GTK_WINDOW(dbgw.stack)); +- if(GTK_WIDGET_VISIBLE(dbgw.heap)) ++ if(gtk_widget_get_visible(dbgw.heap)) + gtk_window_iconify(GTK_WINDOW(dbgw.heap)); +- if(GTK_WIDGET_VISIBLE(dbgw.iop)) ++ if(gtk_widget_get_visible(dbgw.iop)) + gtk_window_iconify(GTK_WINDOW(dbgw.iop)); + } + +@@ -98,21 +98,21 @@ void dbgwnds_unminimize_all(int all) + if(options3.dbg_dock) + return; + +- if(GTK_WIDGET_VISIBLE(dbgw.regs)) ++ if(gtk_widget_get_visible(dbgw.regs)) + gtk_window_deiconify(GTK_WINDOW(dbgw.regs)); +- if(GTK_WIDGET_VISIBLE(dbgw.bkpts)) ++ if(gtk_widget_get_visible(dbgw.bkpts)) + gtk_window_deiconify(GTK_WINDOW(dbgw.bkpts)); +- if(GTK_WIDGET_VISIBLE(dbgw.mem)) ++ if(gtk_widget_get_visible(dbgw.mem)) + gtk_window_deiconify(GTK_WINDOW(dbgw.mem)); +- if(GTK_WIDGET_VISIBLE(dbgw.pclog)) ++ if(gtk_widget_get_visible(dbgw.pclog)) + gtk_window_deiconify(GTK_WINDOW(dbgw.pclog)); +- if(GTK_WIDGET_VISIBLE(dbgw.code) & all) ++ if(gtk_widget_get_visible(dbgw.code) & all) + gtk_window_deiconify(GTK_WINDOW(dbgw.code)); +- if(GTK_WIDGET_VISIBLE(dbgw.stack)) ++ if(gtk_widget_get_visible(dbgw.stack)) + gtk_window_deiconify(GTK_WINDOW(dbgw.stack)); +- if(GTK_WIDGET_VISIBLE(dbgw.heap)) ++ if(gtk_widget_get_visible(dbgw.heap)) + gtk_window_deiconify(GTK_WINDOW(dbgw.heap)); +- if(GTK_WIDGET_VISIBLE(dbgw.iop)) ++ if(gtk_widget_get_visible(dbgw.iop)) + gtk_window_deiconify(GTK_WINDOW(dbgw.iop)); + } + +@@ -122,21 +122,21 @@ void dbgwnds_show_all(int all) + if(options3.dbg_dock) + return; + +- if(!GTK_WIDGET_VISIBLE(dbgw.regs)) ++ if(!gtk_widget_get_visible(dbgw.regs)) + gtk_widget_show(dbgw.regs); +- if(!GTK_WIDGET_VISIBLE(dbgw.bkpts)) ++ if(!gtk_widget_get_visible(dbgw.bkpts)) + gtk_widget_show(dbgw.bkpts); +- if(!GTK_WIDGET_VISIBLE(dbgw.mem)) ++ if(!gtk_widget_get_visible(dbgw.mem)) + gtk_widget_show(dbgw.mem); +- if(!GTK_WIDGET_VISIBLE(dbgw.pclog)) ++ if(!gtk_widget_get_visible(dbgw.pclog)) + gtk_widget_show(dbgw.pclog); +- if(!GTK_WIDGET_VISIBLE(dbgw.code) && all) ++ if(!gtk_widget_get_visible(dbgw.code) && all) + gtk_widget_show(dbgw.code); +- if(!GTK_WIDGET_VISIBLE(dbgw.stack)) ++ if(!gtk_widget_get_visible(dbgw.stack)) + gtk_widget_show(dbgw.stack); +- if(!GTK_WIDGET_VISIBLE(dbgw.heap)) ++ if(!gtk_widget_get_visible(dbgw.heap)) + gtk_widget_show(dbgw.heap); +- if(!GTK_WIDGET_VISIBLE(dbgw.iop)) ++ if(!gtk_widget_get_visible(dbgw.iop)) + gtk_widget_show(dbgw.iop); + } + +@@ -146,21 +146,21 @@ void dbgwnds_hide_all(int all) + if(options3.dbg_dock) + return; + +- if(GTK_WIDGET_VISIBLE(dbgw.regs)) ++ if(gtk_widget_get_visible(dbgw.regs)) + gtk_widget_hide(dbgw.regs); +- if(GTK_WIDGET_VISIBLE(dbgw.bkpts)) ++ if(gtk_widget_get_visible(dbgw.bkpts)) + gtk_widget_hide(dbgw.bkpts); +- if(GTK_WIDGET_VISIBLE(dbgw.mem)) ++ if(gtk_widget_get_visible(dbgw.mem)) + gtk_widget_hide(dbgw.mem); +- if(GTK_WIDGET_VISIBLE(dbgw.pclog)) ++ if(gtk_widget_get_visible(dbgw.pclog)) + gtk_widget_hide(dbgw.pclog); +- if(GTK_WIDGET_VISIBLE(dbgw.code) && all) ++ if(gtk_widget_get_visible(dbgw.code) && all) + gtk_widget_hide(dbgw.code); +- if(GTK_WIDGET_VISIBLE(dbgw.stack)) ++ if(gtk_widget_get_visible(dbgw.stack)) + gtk_widget_hide(dbgw.stack); +- if(GTK_WIDGET_VISIBLE(dbgw.heap)) ++ if(gtk_widget_get_visible(dbgw.heap)) + gtk_widget_hide(dbgw.heap); +- if(GTK_WIDGET_VISIBLE(dbgw.iop)) ++ if(gtk_widget_get_visible(dbgw.iop)) + gtk_widget_hide(dbgw.iop); + } + +@@ -338,7 +338,7 @@ void update_submenu(GtkWidget *widget, g + if(!options3.dbg_dock) + { + g_signal_handlers_block_by_func(GTK_OBJECT(item), on_registers1_activate, NULL); +- gtk_check_menu_item_set_active(item, GTK_WIDGET_VISIBLE(dbgw.regs)); ++ gtk_check_menu_item_set_active(item, gtk_widget_get_visible(dbgw.regs)); + g_signal_handlers_unblock_by_func(GTK_OBJECT(item), on_registers1_activate, NULL); + } + else +@@ -350,7 +350,7 @@ void update_submenu(GtkWidget *widget, g + if(!options3.dbg_dock) + { + g_signal_handlers_block_by_func(GTK_OBJECT(item), on_breakpoints1_activate, NULL); +- gtk_check_menu_item_set_active(item, GTK_WIDGET_VISIBLE(dbgw.bkpts)); ++ gtk_check_menu_item_set_active(item, gtk_widget_get_visible(dbgw.bkpts)); + g_signal_handlers_unblock_by_func(GTK_OBJECT(item), on_breakpoints1_activate, NULL); + } + else +@@ -362,7 +362,7 @@ void update_submenu(GtkWidget *widget, g + if(!options3.dbg_dock) + { + g_signal_handlers_block_by_func(GTK_OBJECT(item), on_memory1_activate, NULL); +- gtk_check_menu_item_set_active(item, GTK_WIDGET_VISIBLE(dbgw.mem)); ++ gtk_check_menu_item_set_active(item, gtk_widget_get_visible(dbgw.mem)); + g_signal_handlers_unblock_by_func(GTK_OBJECT(item), on_memory1_activate, NULL); + } + else +@@ -372,7 +372,7 @@ void update_submenu(GtkWidget *widget, g + elt = g_list_nth(list, 3); + item = GTK_CHECK_MENU_ITEM(elt->data); + g_signal_handlers_block_by_func(GTK_OBJECT(item), on_pc_log1_activate, NULL); +- gtk_check_menu_item_set_active(item, GTK_WIDGET_VISIBLE(dbgw.pclog)); ++ gtk_check_menu_item_set_active(item, gtk_widget_get_visible(dbgw.pclog)); + g_signal_handlers_unblock_by_func(GTK_OBJECT(item), on_pc_log1_activate, NULL); + + // stack +@@ -381,7 +381,7 @@ void update_submenu(GtkWidget *widget, g + if(!options3.dbg_dock) + { + g_signal_handlers_block_by_func(GTK_OBJECT(item), on_stack_frame1_activate, NULL); +- gtk_check_menu_item_set_active(item, GTK_WIDGET_VISIBLE(dbgw.stack)); ++ gtk_check_menu_item_set_active(item, gtk_widget_get_visible(dbgw.stack)); + g_signal_handlers_unblock_by_func(GTK_OBJECT(item), on_stack_frame1_activate, NULL); + } + else +@@ -393,7 +393,7 @@ void update_submenu(GtkWidget *widget, g + if(!options3.dbg_dock) + { + g_signal_handlers_block_by_func(GTK_OBJECT(item), on_heap_frame1_activate, NULL); +- gtk_check_menu_item_set_active(item, GTK_WIDGET_VISIBLE(dbgw.heap)); ++ gtk_check_menu_item_set_active(item, gtk_widget_get_visible(dbgw.heap)); + g_signal_handlers_unblock_by_func(GTK_OBJECT(item), on_heap_frame1_activate, NULL); + } + else +@@ -403,7 +403,7 @@ void update_submenu(GtkWidget *widget, g + elt = g_list_nth(list, 6); + item = GTK_CHECK_MENU_ITEM(elt->data); + g_signal_handlers_block_by_func(GTK_OBJECT(item), on_ioports_frame1_activate, NULL); +- gtk_check_menu_item_set_active(item, GTK_WIDGET_VISIBLE(dbgw.iop)); ++ gtk_check_menu_item_set_active(item, gtk_widget_get_visible(dbgw.iop)); + g_signal_handlers_unblock_by_func(GTK_OBJECT(item), on_ioports_frame1_activate, NULL); + + // dock/multi mode +diff -purN tiemu-3.03.orig/src/gui/filesel.c tiemu-3.03/src/gui/filesel.c +--- tiemu-3.03.orig/src/gui/filesel.c 2007-12-16 16:54:33.000000000 +0100 ++++ tiemu-3.03/src/gui/filesel.c 2011-11-04 22:45:28.000000000 +0100 +@@ -41,7 +41,9 @@ + + #include + #include ++#undef GTK_DISABLE_DEPRECATED + #include ++#define GTK_DISABLE_DEPRECATED + #include + + #ifdef __WIN32__ diff --git a/tiemu/tiemu/patches/sysdeps.patch b/tiemu/tiemu/patches/sysdeps.patch new file mode 100644 index 0000000..8a4addb --- /dev/null +++ b/tiemu/tiemu/patches/sysdeps.patch @@ -0,0 +1,15 @@ +--- sysdeps.h.orig 2018-10-18 19:48:03.258705538 -0700 ++++ tiemu-3.03/src/core/uae/sysdeps.h 2018-10-18 19:48:34.178704986 -0700 +@@ -137,12 +137,6 @@ + #define ENUMDECL typedef enum + #define ENUMNAME(name) name + +-/* While we're here, make abort more useful. */ +-#define abort() \ +- do { \ +- fprintf (stderr, "UAE: Internal error; file %s, line %d\n", __FILE__, __LINE__); \ +- (abort) (); \ +-} while (0) + #else + #define ENUMDECL enum + #define ENUMNAME(name) ; typedef int name diff --git a/tiemu/tiemu/slack-desc b/tiemu/tiemu/slack-desc new file mode 100644 index 0000000..36e348b --- /dev/null +++ b/tiemu/tiemu/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. +# Line up the first '|' above the ':' following the base package name, and +# the '|' on the right side marks the last column you can put a character in. +# You must make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':' except on otherwise blank lines. + + |-----handy-ruler------------------------------------------------------| +tiemu: tiemu (TI-89/92/V200 emulator for linux) +tiemu: +tiemu: TiEmu emulates Texas Instruments calculators TI-89/92/92+/V200PLT +tiemu: (no GDB). +tiemu: +tiemu: Homepage: http://lpg.ticalc.org/prj_tiemu/ +tiemu: +tiemu: +tiemu: +tiemu: +tiemu: diff --git a/tiemu/tiemu/tiemu.SlackBuild b/tiemu/tiemu/tiemu.SlackBuild new file mode 100755 index 0000000..19e4cba --- /dev/null +++ b/tiemu/tiemu/tiemu.SlackBuild @@ -0,0 +1,113 @@ +#!/bin/sh + +# Slackbuild for tiemu + +# Written by shelldweller +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +PRGNAM=tiemu +VERSION=${VERSION:-3.03} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) ARCH=i586 ;; + arm*) ARCH=arm ;; + *) ARCH=$( uname -m ) ;; + esac +fi + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=i586 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +set -e + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM-$VERSION +tar xvf $CWD/$PRGNAM-$VERSION-nogdb.tar.gz +cd $PRGNAM-$VERSION +chown -R root:root . +find -L . \ + \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ + -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; + +# A few necessary patches +# https://aur.archlinux.org/packages/tiemu/#comment-667308 +patch -p1 < $CWD/patches/01-build-fix.patch +patch -p1 < $CWD/patches/sysdeps.patch + +OPT_CFLAGS="" \ +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --mandir=/usr/man \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --build=$ARCH-slackware-linux \ + --without-kde \ + --disable-gdb + +make + +DESTDIR=$PKG make install + +find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \ + | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true + +find $PKG/usr/man -type f -exec gzip -9 {} \; +for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a ABOUT-NLS AUTHORS BUGS COPYING ChangeLog INSTALL LICENSES NEWS \ + README RELEASE TODO docs/ \ + $PKG/usr/doc/$PRGNAM-$VERSION +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild +find $PKG/usr/doc -name "Makefile" -delete +find $PKG/usr/doc -type f -exec chmod 644 {} \; + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc +cat $CWD/doinst.sh > $PKG/install/doinst.sh + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} diff --git a/tiemu/tiemu/tiemu.info b/tiemu/tiemu/tiemu.info new file mode 100644 index 0000000..d665780 --- /dev/null +++ b/tiemu/tiemu/tiemu.info @@ -0,0 +1,10 @@ +PRGNAM="tiemu" +VERSION="3.03" +HOMEPAGE="http://lpg.ticalc.org/prj_tiemu/" +DOWNLOAD="http://download.sourceforge.net/project/gtktiemu/tiemu-linux/TIEmu%203.03/tiemu-3.03-nogdb.tar.gz" +MD5SUM="2736440d717a0ee97cdb35189814fc93" +DOWNLOAD_x86_64="" +MD5SUM_x86_64="" +REQUIRES="libticalcs2" +MAINTAINER="shelldweller" +EMAIL="shelldweller@beauxbead.com"