From 8b36cc8aba405a06f6741622e65ac4e87fe6ea99 Mon Sep 17 00:00:00 2001 From: Lukas Rusak Date: Wed, 1 Feb 2017 13:39:10 -0800 Subject: [PATCH 1/5] linuxconsoletools: add package --- .../game-tools/linuxconsoletools/package.mk | 37 +++++++++++++++++++ ...ools-0001-disable-building-ffmvforce.patch | 12 ++++++ 2 files changed, 49 insertions(+) create mode 100644 packages/addons/addon-depends/game-tools/linuxconsoletools/package.mk create mode 100644 packages/addons/addon-depends/game-tools/linuxconsoletools/patches/linuxconsoletools-0001-disable-building-ffmvforce.patch diff --git a/packages/addons/addon-depends/game-tools/linuxconsoletools/package.mk b/packages/addons/addon-depends/game-tools/linuxconsoletools/package.mk new file mode 100644 index 0000000000..807fc19c27 --- /dev/null +++ b/packages/addons/addon-depends/game-tools/linuxconsoletools/package.mk @@ -0,0 +1,37 @@ +################################################################################ +# This file is part of LibreELEC - http://www.libreelec.tv +# Copyright (C) 2016 Team LibreELEC +# +# LibreELEC is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 2 of the License, or +# (at your option) any later version. +# +# LibreELEC is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with LibreELEC. If not, see . +################################################################################ + +PKG_NAME="linuxconsoletools" +PKG_VERSION="1.5.1" +PKG_ARCH="any" +PKG_LICENSE="GPL" +PKG_SITE="http://sourceforge.net/projects/linuxconsole/" +PKG_URL="http://prdownloads.sourceforge.net/linuxconsole/$PKG_NAME-$PKG_VERSION.tar.bz2" +PKG_DEPENDS_TARGET="toolchain" +PKG_SECTION="system" +PKG_SHORTDESC="Set of utilities for joysticks and serial devices" +PKG_LONGDESC="Set of utilities for joysticks and serial devices" + +PKG_IS_ADDON="no" +PKG_AUTORECONF="no" + +PKG_MAKE_OPTS_TARGET="SYSTEMD_SUPPORT=0" + +makeinstall_target() { + : +} diff --git a/packages/addons/addon-depends/game-tools/linuxconsoletools/patches/linuxconsoletools-0001-disable-building-ffmvforce.patch b/packages/addons/addon-depends/game-tools/linuxconsoletools/patches/linuxconsoletools-0001-disable-building-ffmvforce.patch new file mode 100644 index 0000000000..bfc9ae0b89 --- /dev/null +++ b/packages/addons/addon-depends/game-tools/linuxconsoletools/patches/linuxconsoletools-0001-disable-building-ffmvforce.patch @@ -0,0 +1,12 @@ +diff -Naur a/utils/Makefile b/utils/Makefile +--- a/utils/Makefile 2016-04-19 13:20:50.000000000 -0700 ++++ b/utils/Makefile 2016-10-20 00:31:34.238941511 -0700 +@@ -27,7 +27,7 @@ + + CFLAGS ?= -g -O2 -Wall + +-PROGRAMS = inputattach jstest jscal fftest ffmvforce ffset \ ++PROGRAMS = inputattach jstest jscal fftest ffset \ + ffcfstress jscal-restore jscal-store evdev-joystick + + PREFIX ?= /usr/local From 054a78aed9aeec681897f7fc99e6d2fa6f038e7a Mon Sep 17 00:00:00 2001 From: Lukas Rusak Date: Wed, 1 Feb 2017 13:39:10 -0800 Subject: [PATCH 2/5] bchunk: add package --- .../game-tools/bchunk/package.mk | 35 +++++++++++++++++++ .../patches/bchunk-0001-fix-makefile.patch | 16 +++++++++ 2 files changed, 51 insertions(+) create mode 100644 packages/addons/addon-depends/game-tools/bchunk/package.mk create mode 100644 packages/addons/addon-depends/game-tools/bchunk/patches/bchunk-0001-fix-makefile.patch diff --git a/packages/addons/addon-depends/game-tools/bchunk/package.mk b/packages/addons/addon-depends/game-tools/bchunk/package.mk new file mode 100644 index 0000000000..aad0205dd4 --- /dev/null +++ b/packages/addons/addon-depends/game-tools/bchunk/package.mk @@ -0,0 +1,35 @@ +################################################################################ +# This file is part of LibreELEC - http://www.libreelec.tv +# Copyright (C) 2016 Team LibreELEC +# +# LibreELEC is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 2 of the License, or +# (at your option) any later version. +# +# LibreELEC is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with LibreELEC. If not, see . +################################################################################ + +PKG_NAME="bchunk" +PKG_VERSION="1.2.0" +PKG_ARCH="any" +PKG_LICENSE="GPL" +PKG_SITE="http://he.fi/bchunk/" +PKG_URL="http://he.fi/bchunk/$PKG_NAME-$PKG_VERSION.tar.gz" +PKG_DEPENDS_TARGET="toolchain" +PKG_SECTION="system" +PKG_SHORTDESC="binchunker converts a CD image in a .bin / .cue format (sometimes .raw / .cue) to a set of .iso and .cdr tracks" +PKG_LONGDESC="binchunker converts a CD image in a .bin / .cue format (sometimes .raw / .cue) to a set of .iso and .cdr tracks" + +PKG_IS_ADDON="no" +PKG_AUTORECONF="no" + +makeinstall_target() { + : +} diff --git a/packages/addons/addon-depends/game-tools/bchunk/patches/bchunk-0001-fix-makefile.patch b/packages/addons/addon-depends/game-tools/bchunk/patches/bchunk-0001-fix-makefile.patch new file mode 100644 index 0000000000..e092487c09 --- /dev/null +++ b/packages/addons/addon-depends/game-tools/bchunk/patches/bchunk-0001-fix-makefile.patch @@ -0,0 +1,16 @@ +diff -Naur a/Makefile b/Makefile +--- a/Makefile 2001-08-02 05:51:40.000000000 -0700 ++++ b/Makefile 2016-10-23 10:47:21.682136676 -0700 +@@ -1,9 +1,9 @@ + all: bchunk + + # For systems with GCC (Linux, and others with GCC installed): +-CC = gcc +-LD = gcc +-CFLAGS = -Wall -Wstrict-prototypes -O2 ++CC ?= gcc ++LD = $(CC) ++CFLAGS ?= -Wall -Wstrict-prototypes -O2 + + # For systems with a legacy CC: + #CC = cc From 69b573955982c9463ba83d9ed6747ee66ea1d590 Mon Sep 17 00:00:00 2001 From: Lukas Rusak Date: Wed, 1 Feb 2017 13:39:10 -0800 Subject: [PATCH 3/5] ecm-tools: add package --- .../game-tools/ecm-tools/package.mk | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 packages/addons/addon-depends/game-tools/ecm-tools/package.mk diff --git a/packages/addons/addon-depends/game-tools/ecm-tools/package.mk b/packages/addons/addon-depends/game-tools/ecm-tools/package.mk new file mode 100644 index 0000000000..16933b35b3 --- /dev/null +++ b/packages/addons/addon-depends/game-tools/ecm-tools/package.mk @@ -0,0 +1,35 @@ +################################################################################ +# This file is part of LibreELEC - http://www.libreelec.tv +# Copyright (C) 2016 Team LibreELEC +# +# LibreELEC is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 2 of the License, or +# (at your option) any later version. +# +# LibreELEC is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with LibreELEC. If not, see . +################################################################################ + +PKG_NAME="ecm-tools" +PKG_VERSION="55365b0" +PKG_ARCH="any" +PKG_LICENSE="GPLv3" +PKG_SITE="https://github.com/alucryd/ecm-tools" +PKG_URL="https://github.com/alucryd/ecm-tools/archive/$PKG_VERSION.tar.gz" +PKG_DEPENDS_TARGET="toolchain" +PKG_SECTION="system" +PKG_SHORTDESC="Error Code Modeler" +PKG_LONGDESC="Error Code Modeler" + +PKG_IS_ADDON="no" +PKG_AUTORECONF="no" + +makeinstall_target() { + : +} From 687f113466d58aea23f2fa5f0ddbc4c2607cf52b Mon Sep 17 00:00:00 2001 From: Lukas Rusak Date: Wed, 1 Feb 2017 13:39:11 -0800 Subject: [PATCH 4/5] iat: add package --- .../addon-depends/game-tools/iat/package.mk | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 packages/addons/addon-depends/game-tools/iat/package.mk diff --git a/packages/addons/addon-depends/game-tools/iat/package.mk b/packages/addons/addon-depends/game-tools/iat/package.mk new file mode 100644 index 0000000000..bfcd0c78f8 --- /dev/null +++ b/packages/addons/addon-depends/game-tools/iat/package.mk @@ -0,0 +1,37 @@ +################################################################################ +# This file is part of LibreELEC - http://www.libreelec.tv +# Copyright (C) 2016 Team LibreELEC +# +# LibreELEC is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 2 of the License, or +# (at your option) any later version. +# +# LibreELEC is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with LibreELEC. If not, see . +################################################################################ + +PKG_NAME="iat" +PKG_VERSION="0.1.7" +PKG_ARCH="any" +PKG_LICENSE="GPL" +PKG_SITE="https://sourceforge.net/projects/iat.berlios/" +PKG_URL="https://sourceforge.net/projects/iat.berlios/files/$PKG_NAME-$PKG_VERSION.tar.bz2" +PKG_DEPENDS_TARGET="toolchain" +PKG_SECTION="system" +PKG_SHORTDESC="Iso9660 Analyzer Tool, this tool have engine for detect many structure of image file" +PKG_LONGDESC="Iso9660 Analyzer Tool, this tool have engine for detect many structure of image file" + +PKG_IS_ADDON="no" +PKG_AUTORECONF="no" + +PKG_CONFIGURE_OPTS_TARGET="ac_cv_func_malloc_0_nonnull=yes" + +makeinstall_target() { + : +} From 76fafc1710eef42ce4ed7fd9e552a3ecccc1a981 Mon Sep 17 00:00:00 2001 From: Lukas Rusak Date: Wed, 1 Feb 2017 13:39:11 -0800 Subject: [PATCH 5/5] game-tools: initial add-on --- .../addons/tools/game-tools/changelog.txt | 2 + .../addons/tools/game-tools/icon/icon.png | Bin 0 -> 22077 bytes packages/addons/tools/game-tools/package.mk | 60 ++++++++++++++++++ .../addons/tools/game-tools/source/default.py | 23 +++++++ 4 files changed, 85 insertions(+) create mode 100644 packages/addons/tools/game-tools/changelog.txt create mode 100644 packages/addons/tools/game-tools/icon/icon.png create mode 100644 packages/addons/tools/game-tools/package.mk create mode 100644 packages/addons/tools/game-tools/source/default.py diff --git a/packages/addons/tools/game-tools/changelog.txt b/packages/addons/tools/game-tools/changelog.txt new file mode 100644 index 0000000000..b7f9e891ea --- /dev/null +++ b/packages/addons/tools/game-tools/changelog.txt @@ -0,0 +1,2 @@ +9.0.100 +- Initial Release diff --git a/packages/addons/tools/game-tools/icon/icon.png b/packages/addons/tools/game-tools/icon/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..f95a9e2b80dde5553d1f14a0e6954db62751475d GIT binary patch literal 22077 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. +################################################################################ + +PKG_NAME="game-tools" +PKG_VERSION="" +PKG_REV="100" +PKG_ARCH="any" +PKG_LICENSE="GPL" +PKG_SITE="" +PKG_URL="" +PKG_DEPENDS_TARGET="toolchain" +PKG_SECTION="virtual" +PKG_SHORTDESC="A bundle of game tools and programs" +PKG_LONGDESC="This bundle currently includes bchunk, ecm-tools, iat, and linuxconsoletools" +PKG_AUTORECONF="no" + +PKG_IS_ADDON="yes" +PKG_ADDON_NAME="Game Tools" +PKG_ADDON_TYPE="xbmc.python.script" + +PKG_DEPENDS_TARGET="toolchain \ + bchunk \ + ecm-tools \ + iat \ + linuxconsoletools" + +addon() { + mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/bin/ + # bchunk + cp -P $(get_build_dir bchunk)/bchunk $ADDON_BUILD/$PKG_ADDON_ID/bin + + # ecm-tools + cp -P $(get_build_dir ecm-tools)/bin2ecm $ADDON_BUILD/$PKG_ADDON_ID/bin + ln -s bin2ecm $ADDON_BUILD/$PKG_ADDON_ID/bin/ecm2bin + + # iat + cp -P $(get_build_dir iat)/.$TARGET_NAME/src/iat $ADDON_BUILD/$PKG_ADDON_ID/bin + + # linuxconsoletools + cp -P $(get_build_dir linuxconsoletools)/utils/fftest $ADDON_BUILD/$PKG_ADDON_ID/bin + cp -P $(get_build_dir linuxconsoletools)/utils/jscal $ADDON_BUILD/$PKG_ADDON_ID/bin + cp -P $(get_build_dir linuxconsoletools)/utils/jstest $ADDON_BUILD/$PKG_ADDON_ID/bin + + debug_strip $ADDON_BUILD/$PKG_ADDON_ID/bin +} diff --git a/packages/addons/tools/game-tools/source/default.py b/packages/addons/tools/game-tools/source/default.py new file mode 100644 index 0000000000..9256029318 --- /dev/null +++ b/packages/addons/tools/game-tools/source/default.py @@ -0,0 +1,23 @@ +################################################################################ +# This file is part of LibreELEC - http://www.libreelec.tv +# Copyright (C) 2016 Team LibreELEC +# +# LibreELEC is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 2 of the License, or +# (at your option) any later version. +# +# LibreELEC is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with LibreELEC. If not, see . +################################################################################ + +import xbmcgui +import subprocess + +xbmcgui.Dialog().ok('', 'This is a console-only addon') +