Compare commits
44 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
80fb6c39ee | ||
|
|
f7e303aa4d | ||
|
|
44adac19d8 | ||
|
|
a2f89f74cd | ||
|
|
6622445abf | ||
|
|
817bb2b0e2 | ||
|
|
abdc056942 | ||
|
|
8e331dc790 | ||
|
|
1dcb78a87a | ||
|
|
43d327c345 | ||
|
|
00aef02835 | ||
|
|
d531df3af0 | ||
|
|
f7ed4d9e73 | ||
|
|
0d67a6d16d | ||
|
|
b8fe3147e2 | ||
|
|
0c1e7f6cd9 | ||
|
|
7596b6195b | ||
|
|
106081e31a | ||
|
|
0f33da9e5a | ||
|
|
edda184eef | ||
|
|
279d2bfd32 | ||
|
|
9efa55d805 | ||
|
|
7f6f2e4520 | ||
|
|
ca531fdc2b | ||
|
|
5dda562627 | ||
|
|
a8f3b1177b | ||
|
|
95a81a31e9 | ||
|
|
0e49d50f1b | ||
|
|
f6c4639407 | ||
|
|
91c18615d3 | ||
|
|
2d99e9044b | ||
|
|
b52ff24ca4 | ||
|
|
1ba03c6494 | ||
|
|
b11abed246 | ||
|
|
a9dc0c13df | ||
|
|
c03690cf1d | ||
|
|
347a2bebae | ||
|
|
979574e784 | ||
|
|
80b9ac0bde | ||
|
|
453c6b3070 | ||
|
|
4b7177f5c3 | ||
|
|
1edd08a8c8 | ||
|
|
a16b96ca86 | ||
|
|
ac8eaf7ed8 |
14
README
14
README
@@ -1,14 +0,0 @@
|
||||
OE layer for all in midlife crisis
|
||||
|
||||
This layer depends on:
|
||||
|
||||
URI: git://git.openembedded.org/openembedded-core
|
||||
branch: master
|
||||
revision: HEAD
|
||||
|
||||
URI: git://git.openembedded.org/meta-openembedded
|
||||
branch: master
|
||||
revision: HEAD
|
||||
layers: meta-oe
|
||||
|
||||
Layer maintainer: Andreas Müller <schnitzeltony@gmail.com>
|
||||
27
README.md
Normal file
27
README.md
Normal file
@@ -0,0 +1,27 @@
|
||||
OE layer for emulators and games from 8/16-bit era
|
||||
--------------------------------------------------
|
||||
|
||||
|
||||
Layer dependencies:
|
||||
-------------------
|
||||
see [layer.conf](conf/layer.conf) for dependencies and https://layers.openembedded.org/layerindex/branch/master/layers/ where to find layers
|
||||
|
||||
|
||||
Contributing
|
||||
------------
|
||||
* Submit any patches against the `meta-retro` layer by using the GitHub pull-request feature.
|
||||
|
||||
|
||||
Policies
|
||||
--------
|
||||
* Please do not send private emails to maintainers. For questions/suggestions.. use GitHub issues.
|
||||
* Pull requests should follow [OE-Styleguide](https://www.openembedded.org/wiki/Styleguide) with the following additions:
|
||||
* Use 4 spaces for indention always
|
||||
* For splitting of long list values use four-space indentation on sucessive lines and prefer the closing quote as the first character ([OE-Styleguide](https://www.openembedded.org/wiki/Styleguide) - second example)
|
||||
* Pull-requests with patches fixing issues for musl, clang or gold-linker are accepeted only if patches have upstream-status "Applied" or "Backport" and contain a link to the upstream patch.
|
||||
|
||||
|
||||
Maintainers
|
||||
-----------
|
||||
|
||||
Layer maintainer: Andreas Müller <schnitzeltony@gmail.com>
|
||||
@@ -8,5 +8,5 @@ BBFILE_COLLECTIONS += "meta-retro"
|
||||
BBFILE_PATTERN_meta-retro := "^${LAYERDIR}/"
|
||||
BBFILE_PRIORITY_meta-retro = "10"
|
||||
|
||||
LAYERDEPENDS_meta-retro = "core openembedded-layer filesystems-layer games-layer"
|
||||
LAYERSERIES_COMPAT_meta-retro = "rocko sumo thud"
|
||||
LAYERDEPENDS_meta-retro = "core openembedded-layer filesystems-layer"
|
||||
LAYERSERIES_COMPAT_meta-retro = "thud warrior"
|
||||
|
||||
222
recipes-emulators/mame/mame.bb
Normal file
222
recipes-emulators/mame/mame.bb
Normal file
@@ -0,0 +1,222 @@
|
||||
SUMMARY = "Multiple Arcade Machine Emulator"
|
||||
HOMEPAGE = "http://www.mamedev.org/index.php"
|
||||
|
||||
LICENSE = "GPLv2+"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE.md;md5=798620970c471a3a6b7b5e9c9192fe12"
|
||||
|
||||
SRC_URI = " \
|
||||
git://github.com/mamedev/mame.git \
|
||||
file://no-upstream/0001-pokey-Make-step_one_clock-inline.patch \
|
||||
file://mame.desktop \
|
||||
"
|
||||
PV = "0212"
|
||||
SRCREV = "1182bd9325bd3381cc94cce6d7d9a1b510ed6ae4"
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
inherit siteinfo gtk-icon-cache
|
||||
|
||||
DEPENDS = " \
|
||||
libsdl2 \
|
||||
libsdl2-ttf \
|
||||
fontconfig \
|
||||
libxinerama \
|
||||
\
|
||||
expat \
|
||||
zlib \
|
||||
flac \
|
||||
jpeg \
|
||||
glm \
|
||||
lua lua-native \
|
||||
sqlite3 \
|
||||
portaudio-v19 \
|
||||
rapidjson \
|
||||
${@bb.utils.contains('BBFILE_COLLECTIONS', 'meta-qt5-extra', 'portmidi', '', d)} \
|
||||
"
|
||||
|
||||
CLEANBROKEN = "1"
|
||||
|
||||
# avoid stip fail for size of executable >> 4GB - stolen from chromium
|
||||
DEBUG_FLAGS_remove_arm = "-g"
|
||||
DEBUG_FLAGS_append_arm = "-g1"
|
||||
DEBUG_FLAGS_remove_x86 = "-g"
|
||||
DEBUG_FLAGS_append_x86 = "-g1"
|
||||
DEBUG_FLAGS_remove_aarch64 = "-g"
|
||||
DEBUG_FLAGS_append_aarch64 = "-g1"
|
||||
DEBUG_FLAGS_remove_x86-64 = "-g"
|
||||
DEBUG_FLAGS_append_x86-64 = "-g1"
|
||||
|
||||
PACKAGE_DEBUG_SPLIT_STYLE = "debug-without-src"
|
||||
|
||||
# TBD: x86 may overrideoverrides later - cannot test
|
||||
MAME_NOASM="NOASM=1"
|
||||
|
||||
# genie.lua does not detect 64bit targets at least on aarch64
|
||||
MAME_PTR64 = "${@oe.utils.conditional('SITEINFO_BITS', '64', '-DPTR64=1', '', d)}"
|
||||
|
||||
EXTRA_OEMAKE = " \
|
||||
linux \
|
||||
CROSS_BUILD=1 \
|
||||
OVERRIDE_CC='${CC} ${MAME_PTR64}' \
|
||||
OVERRIDE_CXX='${CXX} ${MAME_PTR64}' \
|
||||
OPTIMIZE=3 \
|
||||
TOOLS=1 \
|
||||
USE_QTDEBUG=0 \
|
||||
LTO=0 \
|
||||
NOWERROR=1 \
|
||||
${MAME_NOASM} \
|
||||
USE_SYSTEM_LIB_EXPAT=1 \
|
||||
USE_SYSTEM_LIB_FLAC=1 \
|
||||
USE_SYSTEM_LIB_JPEG=1 \
|
||||
USE_SYSTEM_LIB_GLM=1 \
|
||||
USE_SYSTEM_LIB_LUA=1 \
|
||||
USE_SYSTEM_LIB_PORTAUDIO=1 \
|
||||
USE_SYSTEM_LIB_SQLITE3=1 \
|
||||
USE_SYSTEM_LIB_ZLIB=1 \
|
||||
USE_SYSTEM_LIB_RAPIDJSON=1 \
|
||||
USE_OPENMP=1 \
|
||||
${@bb.utils.contains('BBFILE_COLLECTIONS', 'meta-qt5-extra', 'USE_SYSTEM_LIB_PORTMIDI=1', '', d)} \
|
||||
SDL_INI_PATH=${sysconfdir}/${BPN} \
|
||||
"
|
||||
|
||||
do_compile_prepend() {
|
||||
# seems there is some race. Build complains
|
||||
# | Assembler messages:
|
||||
# | Fatal error: can't create obj/Release/3rdparty/lzma/C/7zAlloc.o: No such file or directory
|
||||
# | Assembler messages:
|
||||
# | Fatal error: can't create obj/Release/src/mame/drivers/acvirus.o: No such file or directory
|
||||
# But that directory is created with a few files
|
||||
mkdir -p ${S}/build/projects/sdl/mame/gmake-linux/obj/Release/3rdparty/lzma/C
|
||||
}
|
||||
|
||||
do_install() {
|
||||
# stolen much from https://src.fedoraproject.org/cgit/rpms/mame.git/tree/mame.spec
|
||||
|
||||
# executables
|
||||
install -d ${D}${bindir}
|
||||
install -pm 755 castool chdman floptool imgtool jedutil ldresample ldverify \
|
||||
mame nltool nlwav pngcmp romcmp unidasm ${D}${bindir}
|
||||
for tool in regrep split src2html srcclean; do
|
||||
install -pm 755 $tool ${D}${bindir}/${BPN}-$tool
|
||||
done
|
||||
|
||||
# misc
|
||||
install -d ${D}${datadir}/applications
|
||||
install -m 644 ${WORKDIR}/mame.desktop ${D}${datadir}/applications
|
||||
|
||||
pushd artwork
|
||||
find -type d -exec install -d ${D}${datadir}/${BPN}/artwork/{} \;
|
||||
find -type f -exec install -pm 644 {} ${D}${datadir}/${BPN}/artwork/{} \;
|
||||
popd
|
||||
|
||||
install -d ${D}${datadir}/${BPN}/ctrlr
|
||||
install -pm 644 ctrlr/*.cfg ${D}${datadir}/${BPN}/ctrlr
|
||||
|
||||
install -d ${D}${datadir}/${BPN}/fonts
|
||||
install -m 644 uismall.bdf ${D}${datadir}/${BPN}/fonts
|
||||
|
||||
install -d ${D}${datadir}/${BPN}/hash
|
||||
install -pm 644 hash/* ${D}${datadir}/${BPN}/hash
|
||||
|
||||
install -d ${D}${datadir}/${BPN}/hlsl
|
||||
install -pm 644 hlsl/*.fx ${D}${datadir}/${BPN}/hlsl
|
||||
|
||||
install -d ${D}${datadir}/${BPN}/keymaps
|
||||
install -pm 644 keymaps/* ${D}${datadir}/${BPN}/keymaps
|
||||
|
||||
pushd language
|
||||
find -type d -exec install -d ${D}${datadir}/${BPN}/language/{} \;
|
||||
find -type f -name \*.mo -exec install -pm 644 {} ${D}${datadir}/${BPN}/language/{} \;
|
||||
popd
|
||||
|
||||
pushd plugins
|
||||
find -type d -exec install -d ${D}${datadir}/${BPN}/plugins/{} \;
|
||||
find -type f -exec install -pm 644 {} ${D}${datadir}/${BPN}/plugins/{} \;
|
||||
popd
|
||||
|
||||
install -d ${D}${datadir}/${BPN}/shader
|
||||
pushd src/osd/modules/opengl
|
||||
install -pm 644 shader/*.?sh ${D}${datadir}/${BPN}/shader
|
||||
popd
|
||||
|
||||
pushd docs/man
|
||||
install -d ${D}${mandir}/man1
|
||||
install -pm 644 castool.1 chdman.1 imgtool.1 floptool.1 jedutil.1 ldresample.1 \
|
||||
ldverify.1 romcmp.1 ${D}${mandir}/man1
|
||||
install -d ${D}${mandir}/man6
|
||||
install -pm 644 mame.6 mess.6 ${D}${mandir}/man6
|
||||
popd
|
||||
|
||||
# install paths where user can add downloaded files
|
||||
for folder in roms samples; do
|
||||
install -d ${D}${sysconfdir}/skel/Emulators/${BPN}/$folder
|
||||
done
|
||||
echo "Store your downloaded files in subfolders" >> ${D}${sysconfdir}/skel/Emulators/${BPN}/Readme
|
||||
|
||||
# install paths for created data
|
||||
for folder in cfg comments diff history inp nvram snap state; do
|
||||
install -d ${D}${sysconfdir}/skel/.${BPN}/$folder
|
||||
done
|
||||
|
||||
# user config
|
||||
install -d ${D}${sysconfdir}/skel/.config/${BPN}/ini
|
||||
|
||||
# Create ini file
|
||||
cat > ${WORKDIR}/${BPN}.ini << EOF
|
||||
# Define source paths
|
||||
artpath ${datadir}/${BPN}/artwork
|
||||
#bgfx_path ${datadir}/${BPN}/bgfx
|
||||
#cheatpath ${datadir}/${BPN}/cheat
|
||||
#crosshairpath ${datadir}/${BPN}/crosshair
|
||||
ctrlrpath ${datadir}/${BPN}/ctrlr
|
||||
fontpath ${datadir}/${BPN}/fonts
|
||||
hashpath ${datadir}/${BPN}/hash
|
||||
languagepath ${datadir}/${BPN}/language
|
||||
pluginspath ${datadir}/${BPN}/plugins
|
||||
# Have these per user for simple download/install
|
||||
rompath \$HOME/Emulators/${BPN}/roms
|
||||
samplepath \$HOME/Emulators/${BPN}/samples
|
||||
|
||||
# Allow user to override ini settings
|
||||
inipath \$HOME/.config/${BPN}/ini;${sysconfdir}/${BPN}
|
||||
|
||||
# Set paths for local storage
|
||||
cfg_directory \$HOME/.${BPN}/cfg
|
||||
comment_directory \$HOME/.${BPN}/comments
|
||||
diff_directory \$HOME/.${BPN}/diff
|
||||
historypath \$HOME/.${BPN}/history
|
||||
input_directory \$HOME/.${BPN}/inp
|
||||
nvram_directory \$HOME/.${BPN}/nvram
|
||||
snapshot_directory \$HOME/.${BPN}/snap
|
||||
state_directory \$HOME/.${BPN}/state
|
||||
EOF
|
||||
install -d ${D}${sysconfdir}/${BPN}
|
||||
install -m 644 ${WORKDIR}/${BPN}.ini ${D}${sysconfdir}/${BPN}
|
||||
|
||||
# Logo
|
||||
install -d ${D}${datadir}/pixmaps
|
||||
install -m 644 ${S}/docs/source/images/MAMElogo.svg ${D}${datadir}/pixmaps
|
||||
|
||||
# cleanup
|
||||
find ${D}${datadir}/${BPN} -name LICENSE -exec rm {} \;
|
||||
find ${D}${datadir}/${BPN} -name README.md -exec rm {} \;
|
||||
}
|
||||
|
||||
PACKAGES =+ "${PN}-tools"
|
||||
FILES_${PN}-tools = " \
|
||||
${bindir}/castool \
|
||||
${bindir}/chdman \
|
||||
${bindir}/floptool \
|
||||
${bindir}/imgtool \
|
||||
${bindir}/jedutil \
|
||||
${bindir}/ldresample \
|
||||
${bindir}/ldverify \
|
||||
${bindir}/nltool \
|
||||
${bindir}/nlwav \
|
||||
${bindir}/pngcmp \
|
||||
${bindir}/${BPN}-regrep \
|
||||
${bindir}/romcmp \
|
||||
${bindir}/${BPN}-split \
|
||||
${bindir}/${BPN}-src2html \
|
||||
${bindir}/${BPN}-srcclean \
|
||||
${bindir}/unidasm \
|
||||
"
|
||||
9
recipes-emulators/mame/mame/mame.desktop
Normal file
9
recipes-emulators/mame/mame/mame.desktop
Normal file
@@ -0,0 +1,9 @@
|
||||
[Desktop Entry]
|
||||
Type=Application
|
||||
Name=Mame
|
||||
Comment=MAME is a multi-purpose emulation framework
|
||||
Exec=mame
|
||||
Icon=MAMElogo.svg
|
||||
Terminal=false
|
||||
StartupNotify=false
|
||||
Categories=Game
|
||||
@@ -0,0 +1,48 @@
|
||||
From 0ba9c56e7a27bd926270678e7add074fb00204f8 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
|
||||
Date: Sun, 3 Mar 2019 15:00:41 +0100
|
||||
Subject: [PATCH] pokey: Make step_one_clock inline
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This gives another small performance win on machines using multiple pokeys. Since
|
||||
it ruins our valgind output and upstream will not be keen on:
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
|
||||
---
|
||||
src/devices/sound/pokey.cpp | 2 +-
|
||||
src/devices/sound/pokey.h | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/devices/sound/pokey.cpp b/src/devices/sound/pokey.cpp
|
||||
index 231dc01e8b..d20c20cc8a 100644
|
||||
--- a/src/devices/sound/pokey.cpp
|
||||
+++ b/src/devices/sound/pokey.cpp
|
||||
@@ -562,7 +562,7 @@ void pokey_device::step_pot()
|
||||
*
|
||||
*/
|
||||
|
||||
-void pokey_device::step_one_clock(void)
|
||||
+inline void pokey_device::step_one_clock(void)
|
||||
{
|
||||
/* Clocks only count if we are not in a reset */
|
||||
if (m_SKCTL & SK_RESET)
|
||||
diff --git a/src/devices/sound/pokey.h b/src/devices/sound/pokey.h
|
||||
index 7e63e89e54..48858bc743 100644
|
||||
--- a/src/devices/sound/pokey.h
|
||||
+++ b/src/devices/sound/pokey.h
|
||||
@@ -264,7 +264,7 @@ private:
|
||||
|
||||
static constexpr int POKEY_CHANNELS = 4;
|
||||
|
||||
- void step_one_clock();
|
||||
+ inline void step_one_clock();
|
||||
void step_keyboard();
|
||||
void step_pot();
|
||||
|
||||
--
|
||||
2.20.1
|
||||
|
||||
@@ -1,92 +0,0 @@
|
||||
SUMMARY = "Multiple Arcade Machine Emulator"
|
||||
HOMEPAGE = "http://www.mamedev.org/index.php"
|
||||
|
||||
LICENSE = "GPLv2+"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE.md;md5=f7c747554c44283f89bdf31be2d12551"
|
||||
|
||||
SRC_URI = " \
|
||||
https://github.com/mamedev/mame/archive/${BPN}${PV}.tar.gz \
|
||||
"
|
||||
SRC_URI[md5sum] = "e690994e57a13380045bd74258a698ca"
|
||||
SRC_URI[sha256sum] = "d51f2a3d740dff13acbe23b0bdcdd9a7077ee873baeabdf8ad5b1499bd9df99f"
|
||||
|
||||
S = "${WORKDIR}/${BPN}-${BPN}${PV}"
|
||||
|
||||
inherit siteinfo
|
||||
|
||||
DEPENDS = " \
|
||||
libsdl2 \
|
||||
libsdl2-ttf \
|
||||
fontconfig \
|
||||
libxinerama \
|
||||
\
|
||||
expat \
|
||||
zlib \
|
||||
flac \
|
||||
jpeg \
|
||||
lua lua-native \
|
||||
sqlite3 \
|
||||
portaudio-v19 \
|
||||
"
|
||||
|
||||
CLEANBROKEN = "1"
|
||||
|
||||
# TBD: x86 may overrideoverrides later - cannot test
|
||||
MAME_NOASM="NOASM=1"
|
||||
|
||||
# genie.lua does not detect 64bit targets at least on aarch64
|
||||
MAME_PTR64 = "${@oe.utils.conditional('SITEINFO_BITS', '64', '-DPTR64=1', '', d)}"
|
||||
|
||||
EXTRA_OEMAKE = " \
|
||||
linux \
|
||||
CROSS_BUILD=1 \
|
||||
OVERRIDE_CC='${CC} ${MAME_PTR64}' \
|
||||
OVERRIDE_CXX='${CXX} ${MAME_PTR64}' \
|
||||
TOOLS=1 \
|
||||
USE_QTDEBUG=0 \
|
||||
NOWERROR=1 \
|
||||
${MAME_NOASM} \
|
||||
USE_SYSTEM_LIB_EXPAT=1 \
|
||||
USE_SYSTEM_LIB_ZLIB=1 \
|
||||
USE_SYSTEM_LIB_FLAC=1 \
|
||||
USE_SYSTEM_LIB_JPEG=1 \
|
||||
USE_SYSTEM_LIB_LUA=1 \
|
||||
USE_SYSTEM_LIB_SQLITE3=1 \
|
||||
USE_SYSTEM_LIB_PORTAUDIO=1 \
|
||||
"
|
||||
|
||||
do_compile_prepend() {
|
||||
# seems there is some race. Build complains
|
||||
# | Assembler messages:
|
||||
# | Fatal error: can't create obj/Release/3rdparty/lzma/C/7zAlloc.o: No such file or directory
|
||||
# | Assembler messages:
|
||||
# | Fatal error: can't create obj/Release/src/mame/drivers/acvirus.o: No such file or directory
|
||||
# But that directory is created with a few files
|
||||
mkdir -p ${S}/build/projects/sdl/mame/gmake-linux/obj/Release/3rdparty/lzma/C
|
||||
}
|
||||
|
||||
do_install() {
|
||||
# Note: Unstripped mame binary for armv7 is > 1GB!!
|
||||
install -d ${D}${bindir}
|
||||
install mame ${D}${bindir}/
|
||||
|
||||
install -d ${D}${libexecdir}
|
||||
for binary in \
|
||||
castool \
|
||||
chdman \
|
||||
floptool \
|
||||
imgtool \
|
||||
jedutil \
|
||||
ldresample \
|
||||
ldverify \
|
||||
mame \
|
||||
nltool \
|
||||
romcmp \
|
||||
split \
|
||||
src2html \
|
||||
unidasm \
|
||||
; \
|
||||
do
|
||||
install $binary ${D}${libexecdir}/
|
||||
done
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
From 389ed0e18c10a8b3368d0b9fbd2e1f5a7e37f072 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
|
||||
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
|
||||
Date: Fri, 30 Jun 2017 09:30:32 +0200
|
||||
Subject: [PATCH] custtomize configure and Makefile to our needs
|
||||
MIME-Version: 1.0
|
||||
@@ -8,7 +8,7 @@ Content-Transfer-Encoding: 8bit
|
||||
|
||||
Upstream-Status: Inappropriate [oe-specific]
|
||||
|
||||
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
|
||||
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
|
||||
|
||||
---
|
||||
Makefile | 2 +-
|
||||
@@ -40,45 +40,6 @@ index a1ecfb1..05e5c1c 100755
|
||||
;;
|
||||
esac
|
||||
|
||||
@@ -347,21 +348,26 @@ esac
|
||||
#
|
||||
# Determine the C++ compiler
|
||||
#
|
||||
-echo_n "Looking for C++ compiler... "
|
||||
-if test -n "$_host"; then
|
||||
- compilers="$CXX $_host_prefix-g++ $_host_prefix-c++ $_host_cpu-$_host_os-g++ $_host_cpu-$_host_os-c++"
|
||||
+if test_compiler "$CXX"; then
|
||||
+ echo "$CXX"
|
||||
else
|
||||
- compilers="$CXX g++ c++"
|
||||
+ if test -n "$_host"; then
|
||||
+ compilers="$_host_prefix-g++ $_host_prefix-c++ $_host_cpu-$_host_os-g++ $_host_cpu-$_host_os-c++"
|
||||
+ else
|
||||
+ compilers="g++ c++"
|
||||
+ fi
|
||||
+
|
||||
+ for compiler in $compilers; do
|
||||
+ echo "testing compile $compiler"
|
||||
+ if test_compiler $compiler; then
|
||||
+ CXX=$compiler
|
||||
+ echo $CXX
|
||||
+ break
|
||||
+ fi
|
||||
+ done
|
||||
fi
|
||||
|
||||
-for compiler in $compilers; do
|
||||
- if test_compiler "$compiler -std=c++14"; then
|
||||
- CXX=$compiler
|
||||
- echo $CXX
|
||||
- break
|
||||
- fi
|
||||
-done
|
||||
-if test -z $CXX; then
|
||||
+if test -z "$CXX"; then
|
||||
echo "none found!"
|
||||
exit 1
|
||||
fi
|
||||
@@ -511,8 +517,9 @@ if test -n "$_host"; then
|
||||
_host_os=win32
|
||||
;;
|
||||
@@ -100,7 +61,7 @@ index a1ecfb1..05e5c1c 100755
|
||||
|
||||
SRC="src"
|
||||
CORE="$SRC/emucore"
|
||||
@@ -694,7 +701,7 @@ ZLIB="$SRC/zlib"
|
||||
@@ -698,7 +698,7 @@ ZLIB="$SRC/zlib"
|
||||
|
||||
INCLUDES="-I$CORE -I$COMMON -I$TV -I$GUI -I$TIA -I$TIA_FRAME_MANAGER"
|
||||
|
||||
@@ -109,6 +70,15 @@ index a1ecfb1..05e5c1c 100755
|
||||
if test "$_build_static" = yes ; then
|
||||
_sdl_conf_libs="--static-libs"
|
||||
LDFLAGS="-static $LDFLAGS"
|
||||
@@ -706,7 +706,7 @@ else
|
||||
_sdl_conf_libs="--libs"
|
||||
fi
|
||||
|
||||
-LIBS="$LIBS `$_sdlconfig $_sdl_conf_libs`"
|
||||
+LIBS="$LIBS `pkg-config $_sdl_conf_libs sdl2`"
|
||||
LD=$CXX
|
||||
|
||||
case $_host_os in
|
||||
--
|
||||
2.14.3
|
||||
|
||||
|
||||
@@ -13,9 +13,7 @@ SRC_URI = " \
|
||||
https://github.com/stella-emu/stella/releases/download/${PV}/${BPN}-${PV}-src.tar.xz \
|
||||
file://0001-custtomize-configure-and-Makefile-to-our-needs.patch \
|
||||
"
|
||||
SRC_URI[md5sum] = "f7cccdf4761b7183a235ffeef136e180"
|
||||
SRC_URI[sha256sum] = "e074317c25e5d4cabec4558909d301c3a7654ad620863f05d342244fe6bdfe0a"
|
||||
SRC_URI[md5sum] = "9df5fd3af9720115359ebf0171ed36e6"
|
||||
SRC_URI[sha256sum] = "d611f98bb35ed9eacfb63826b12b4e8b67b874a2a87019d4bdaf1e7f4724c40d"
|
||||
|
||||
CLEANBROKEN = "1"
|
||||
|
||||
FILES_${PN} += "${datadir}/icons"
|
||||
30
recipes-emulators/vice/files/0003-Set-fixed-VICEDIR.patch
Normal file
30
recipes-emulators/vice/files/0003-Set-fixed-VICEDIR.patch
Normal file
@@ -0,0 +1,30 @@
|
||||
From f4fa367ab6e79cbfd77254237335f383311006ec Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
|
||||
Date: Sat, 9 Feb 2019 22:16:52 +0100
|
||||
Subject: [PATCH] Set fixed VICEDIR
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Upstream-Status: Inappropriate [configuration]
|
||||
|
||||
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
|
||||
---
|
||||
configure.ac | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index c5139fd..402e893 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -5010,6 +5010,7 @@ case "$host_os" in
|
||||
AM_CONDITIONAL(ALTERNATE_DOCDIR, false)
|
||||
;;
|
||||
esac
|
||||
+VICEDIR="$libdir/vice"
|
||||
AC_SUBST(VICEDIR)
|
||||
AC_DEFINE_UNQUOTED(VICEDIR, "$VICEDIR",
|
||||
[Where should we lookup for data files?])
|
||||
--
|
||||
2.20.1
|
||||
|
||||
@@ -7,9 +7,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=c93c0550bd3173f4504b2cbd8991e50b"
|
||||
# [1] ftp://arnold.c64.org/pub/games/
|
||||
|
||||
SRC_URI = " \
|
||||
${SOURCEFORGE_MIRROR}/vice-emu/${PN}-${PV}.tar.gz \
|
||||
${SOURCEFORGE_MIRROR}/vice-emu/${BPN}-${PV}.tar.gz \
|
||||
file://0001-fix-autoreconfig.patch \
|
||||
file://0002-Hack-build-with-latest-FFMPEG.patch \
|
||||
file://0003-Set-fixed-VICEDIR.patch \
|
||||
file://c64_16.png \
|
||||
file://c64_32.png \
|
||||
file://c64_48.png \
|
||||
@@ -40,6 +41,7 @@ DEPENDS = " \
|
||||
${@bb.utils.contains("DISTRO_FEATURES", "x11 opengl", "gtkglext", "", d)} \
|
||||
"
|
||||
|
||||
PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pulseaudio', d)}"
|
||||
PACKAGECONFIG[pulseaudio] = "--with-pulse,--without-pulse,pulseaudio,pulseaudio-server"
|
||||
|
||||
EXTRA_OECONF = " \
|
||||
@@ -50,6 +52,7 @@ EXTRA_OECONF = " \
|
||||
--enable-gnomeui \
|
||||
--with-uithreads \
|
||||
--without-oss \
|
||||
--libdir=${libdir} \
|
||||
"
|
||||
|
||||
do_install_append() {
|
||||
|
||||
@@ -0,0 +1,64 @@
|
||||
From 28a0682bf3af1433ffdcd3c0458fdf4ebd5cc11a Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
|
||||
Date: Fri, 7 Jun 2019 21:49:17 +0200
|
||||
Subject: [PATCH] Fix build with gcc 9
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
|
||||
---
|
||||
src/destruct.c | 2 +-
|
||||
src/game_menu.c | 4 ++--
|
||||
src/video_scale_hqNx.c | 4 ++--
|
||||
3 files changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/src/destruct.c b/src/destruct.c
|
||||
index 873c76b..1150ab5 100644
|
||||
--- a/src/destruct.c
|
||||
+++ b/src/destruct.c
|
||||
@@ -2240,7 +2240,7 @@ static void DE_RunTickAI( void )
|
||||
ptrUnit = ptrTarget->unit;
|
||||
for (j = 0; j < config.max_installations; j++, ptrUnit++)
|
||||
{
|
||||
- if (abs(ptrUnit->unitX - ptrCurUnit->unitX) < 8)
|
||||
+ if (abs(((Sint32)ptrUnit->unitX) - ((Sint32)ptrCurUnit->unitX)) < 8)
|
||||
{
|
||||
/* I get it. This makes helicoptors hover over
|
||||
* their enemies. */
|
||||
diff --git a/src/game_menu.c b/src/game_menu.c
|
||||
index 7d24ad7..438c247 100644
|
||||
--- a/src/game_menu.c
|
||||
+++ b/src/game_menu.c
|
||||
@@ -1992,9 +1992,9 @@ void JE_updateNavScreen( void )
|
||||
navX = navX + (newNavX - navX) / 2.0f;
|
||||
navY = navY + (newNavY - navY) / 2.0f;
|
||||
|
||||
- if (abs(newNavX - navX) < 1)
|
||||
+ if (fabs(newNavX - navX) < 1)
|
||||
navX = newNavX;
|
||||
- if (abs(newNavY - navY) < 1)
|
||||
+ if (fabs(newNavY - navY) < 1)
|
||||
navY = newNavY;
|
||||
|
||||
fill_rectangle_xy(VGAScreen, 314, 0, 319, 199, 230);
|
||||
diff --git a/src/video_scale_hqNx.c b/src/video_scale_hqNx.c
|
||||
index 51836e6..6c7b5a5 100644
|
||||
--- a/src/video_scale_hqNx.c
|
||||
+++ b/src/video_scale_hqNx.c
|
||||
@@ -120,8 +120,8 @@ inline void interp10(Uint32 *pc, Uint32 c1, Uint32 c2, Uint32 c3)
|
||||
|
||||
inline bool diff(unsigned int w1, unsigned int w2)
|
||||
{
|
||||
- Uint32 YUV1 = yuv_palette[w1];
|
||||
- Uint32 YUV2 = yuv_palette[w2];
|
||||
+ Sint32 YUV1 = yuv_palette[w1];
|
||||
+ Sint32 YUV2 = yuv_palette[w2];
|
||||
return ( ( abs((YUV1 & Ymask) - (YUV2 & Ymask)) > trY ) ||
|
||||
( abs((YUV1 & Umask) - (YUV2 & Umask)) > trU ) ||
|
||||
( abs((YUV1 & Vmask) - (YUV2 & Vmask)) > trV ) );
|
||||
--
|
||||
2.20.1
|
||||
|
||||
@@ -16,6 +16,7 @@ SRC_URI = " \
|
||||
file://0003-fix-build-with-pedantic-gcc6.patch \
|
||||
file://0004-increase-buffer-size-to-avoid-gcc7-format-overflow-e.patch \
|
||||
file://0005-fix-build-with-gcc8.patch \
|
||||
file://0006-Fix-build-with-gcc-9.patch \
|
||||
"
|
||||
SRC_URI[md5sum] = "978686c5a1dfbac69a2161aadf084c2b"
|
||||
SRC_URI[sha256sum] = "f54b6b3cedcefa187c9f605d6164aae29ec46a731a6df30d351af4c008dee45f"
|
||||
|
||||
@@ -0,0 +1,97 @@
|
||||
From 908d5fcdfeac32d7ab5cff307d0a46a962ed600f Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
|
||||
Date: Tue, 6 Sep 2016 00:08:16 +0200
|
||||
Subject: [PATCH] do not build java application to set midi defaults
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
dragging in whole java environment for a small tool not everybody misses
|
||||
|
||||
Upstream-Status: Inappropriate [configuration]
|
||||
|
||||
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
|
||||
---
|
||||
CMakeLists.txt | 2 --
|
||||
pm_common/CMakeLists.txt | 18 +-----------------
|
||||
pm_dylib/CMakeLists.txt | 14 --------------
|
||||
3 files changed, 1 insertion(+), 33 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 4919b78..2137ce4 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -72,6 +72,4 @@ add_subdirectory(pm_test)
|
||||
|
||||
add_subdirectory(pm_dylib)
|
||||
|
||||
-# Cannot figure out how to make an xcode Java application with CMake
|
||||
-add_subdirectory(pm_java)
|
||||
|
||||
diff --git a/pm_common/CMakeLists.txt b/pm_common/CMakeLists.txt
|
||||
index bfd4ab9..9ea9030 100644
|
||||
--- a/pm_common/CMakeLists.txt
|
||||
+++ b/pm_common/CMakeLists.txt
|
||||
@@ -67,15 +67,6 @@ if(UNIX)
|
||||
message(STATUS "SYSROOT: " ${CMAKE_OSX_SYSROOT})
|
||||
else(APPLE)
|
||||
# LINUX settings...
|
||||
- include(FindJNI)
|
||||
- message(STATUS "JAVA_JVM_LIB_PATH is " ${JAVA_JVM_LIB_PATH})
|
||||
- message(STATUS "JAVA_INCLUDE_PATH is " ${JAVA_INCLUDE_PATH})
|
||||
- message(STATUS "JAVA_INCLUDE_PATH2 is " ${JAVA_INCLUDE_PATH2})
|
||||
- message(STATUS "JAVA_JVM_LIBRARY is " ${JAVA_JVM_LIBRARY})
|
||||
- set(JAVA_INCLUDE_PATHS ${JAVA_INCLUDE_PATH} ${JAVA_INCLUDE_PATH2})
|
||||
- # libjvm.so is found relative to JAVA_INCLUDE_PATH:
|
||||
- set(JAVAVM_LIB ${JAVA_JVM_LIBRARY}/libjvm.so)
|
||||
-
|
||||
set(LINUXSRC pmlinuxalsa pmlinux finddefault)
|
||||
prepend_path(LIBSRC ../pm_linux/ ${LINUXSRC})
|
||||
list(APPEND LIBSRC ../porttime/ptlinux)
|
||||
@@ -109,17 +100,10 @@ add_library(portmidi-static ${LIBSRC})
|
||||
set_target_properties(portmidi-static PROPERTIES OUTPUT_NAME "portmidi_s")
|
||||
target_link_libraries(portmidi-static ${PM_NEEDED_LIBS})
|
||||
|
||||
-# define the jni library
|
||||
-include_directories(${JAVA_INCLUDE_PATHS})
|
||||
-
|
||||
-set(JNISRC ${LIBSRC} ../pm_java/pmjni/pmjni.c)
|
||||
-add_library(pmjni SHARED ${JNISRC})
|
||||
-target_link_libraries(pmjni ${JNI_EXTRA_LIBS})
|
||||
-set_target_properties(pmjni PROPERTIES EXECUTABLE_EXTENSION "jnilib")
|
||||
|
||||
# install the libraries (Linux and Mac OS X command line)
|
||||
if(UNIX)
|
||||
- INSTALL(TARGETS portmidi-static pmjni
|
||||
+ INSTALL(TARGETS portmidi-static
|
||||
LIBRARY DESTINATION ${LIB_INSTALL_DIR}
|
||||
ARCHIVE DESTINATION ${LIB_INSTALL_DIR})
|
||||
# .h files installed by pm_dylib/CMakeLists.txt, so don't need them here
|
||||
diff --git a/pm_dylib/CMakeLists.txt b/pm_dylib/CMakeLists.txt
|
||||
index a0c615e..8ad415f 100644
|
||||
--- a/pm_dylib/CMakeLists.txt
|
||||
+++ b/pm_dylib/CMakeLists.txt
|
||||
@@ -63,20 +63,6 @@ if(UNIX)
|
||||
message(STATUS "SYSROOT: " ${CMAKE_OSX_SYSROOT})
|
||||
else(APPLE)
|
||||
# LINUX settings...
|
||||
- include(FindJNI)
|
||||
- # message(STATUS "JAVA_JVM_LIB_PATH is " ${JAVA_JVM_LIB_PATH})
|
||||
- # message(STATUS "JAVA_INCLUDE_PATH is " ${JAVA_INCLUDE_PATH})
|
||||
- # note: should use JAVA_JVM_LIB_PATH, but it is not set properly
|
||||
- # note: user might need to set JAVA_INCLUDE_PATH manually
|
||||
- #
|
||||
- # this will probably break on BSD and other Unix systems; the fix
|
||||
- # depends on whether FindJNI can find Java or not. If yes, then
|
||||
- # we should try to rely on automatically set JAVA_INCLUDE_PATH and
|
||||
- # JAVA_INCLUDE_PATH2; if no, then we need to make both JAVA_INCLUDE_PATH
|
||||
- # and JAVA_INCLUDE_PATH2 set by user (will need clear documentation
|
||||
- # because JAVA_INCLUDE_PATH2 is pretty obscure)
|
||||
- set(JAVAVM_LIB ${JAVA_JVM_LIBRARY})
|
||||
-
|
||||
set(LINUXSRC pmlinuxalsa pmlinux finddefault)
|
||||
prepend_path(LIBSRC ../pm_linux/ ${LINUXSRC})
|
||||
list(APPEND LIBSRC ../porttime/ptlinux)
|
||||
--
|
||||
2.5.5
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
From 7240f951277e47f2f37523b3ca5408bfe5fc3c53 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
|
||||
Date: Tue, 6 Sep 2016 01:04:42 +0200
|
||||
Subject: [PATCH 2/2] fix compilation du to unkown functions
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
|
||||
---
|
||||
pm_linux/finddefault.c | 3 +++
|
||||
pm_linux/pmlinux.c | 2 ++
|
||||
2 files changed, 5 insertions(+)
|
||||
|
||||
diff --git a/pm_linux/finddefault.c b/pm_linux/finddefault.c
|
||||
index 6340316..89ca43a 100644
|
||||
--- a/pm_linux/finddefault.c
|
||||
+++ b/pm_linux/finddefault.c
|
||||
@@ -5,10 +5,13 @@
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
+#include <ctype.h>
|
||||
#include "portmidi.h"
|
||||
|
||||
#define STRING_MAX 256
|
||||
|
||||
+int pm_find_default_device(char *pattern, int is_input);
|
||||
+
|
||||
/* skip over spaces, return first non-space */
|
||||
void skip_spaces(FILE *inf)
|
||||
{
|
||||
diff --git a/pm_linux/pmlinux.c b/pm_linux/pmlinux.c
|
||||
index 49e266d..42c0906 100755
|
||||
--- a/pm_linux/pmlinux.c
|
||||
+++ b/pm_linux/pmlinux.c
|
||||
@@ -26,6 +26,8 @@
|
||||
PmDeviceID pm_default_input_device_id = -1;
|
||||
PmDeviceID pm_default_output_device_id = -1;
|
||||
|
||||
+PmDeviceID find_default_device(char *path, int input, PmDeviceID id);
|
||||
+
|
||||
void pm_init()
|
||||
{
|
||||
/* Note: it is not an error for PMALSA to fail to initialize.
|
||||
--
|
||||
2.5.5
|
||||
|
||||
124
recipes-support/portmidi/files/0003-fix-format-security..patch
Normal file
124
recipes-support/portmidi/files/0003-fix-format-security..patch
Normal file
@@ -0,0 +1,124 @@
|
||||
From e597c5c8636a269dbe5e664c706e66887479f161 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
|
||||
Date: Tue, 26 Sep 2018 01:44:12 +0200
|
||||
Subject: [PATCH] Fix format-security
|
||||
|
||||
Stolen from [1]
|
||||
|
||||
[1] https://src.fedoraproject.org/cgit/rpms/portmidi.git/plain/portmidi-217-format-security.patch
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
|
||||
---
|
||||
pm_test/latency.c | 2 +-
|
||||
pm_test/midiclock.c | 4 ++--
|
||||
pm_test/mm.c | 8 ++++----
|
||||
pm_test/sysex.c | 2 +-
|
||||
pm_test/test.c | 2 +-
|
||||
5 files changed, 9 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/pm_test/latency.c b/pm_test/latency.c
|
||||
index 507648c..5f4bb5c 100755
|
||||
--- a/pm_test/latency.c
|
||||
+++ b/pm_test/latency.c
|
||||
@@ -280,7 +280,7 @@ int get_number(char *prompt)
|
||||
{
|
||||
char line[STRING_MAX];
|
||||
int n = 0, i;
|
||||
- printf(prompt);
|
||||
+ printf("%s",prompt);
|
||||
while (n != 1) {
|
||||
n = scanf("%d", &i);
|
||||
fgets(line, STRING_MAX, stdin);
|
||||
diff --git a/pm_test/midiclock.c b/pm_test/midiclock.c
|
||||
index 60fcf7a..17967a5 100644
|
||||
--- a/pm_test/midiclock.c
|
||||
+++ b/pm_test/midiclock.c
|
||||
@@ -167,7 +167,7 @@ int get_number(char *prompt)
|
||||
{
|
||||
char line[STRING_MAX];
|
||||
int n = 0, i;
|
||||
- printf(prompt);
|
||||
+ printf("%s",prompt);
|
||||
while (n != 1) {
|
||||
n = scanf("%d", &i);
|
||||
fgets(line, STRING_MAX, stdin);
|
||||
@@ -256,7 +256,7 @@ int main(int argc, char **argv)
|
||||
err = Pm_OpenOutput(&midi, outp, DRIVER_INFO, OUTPUT_BUFFER_SIZE,
|
||||
TIME_PROC, TIME_INFO, LATENCY);
|
||||
if (err) {
|
||||
- printf(Pm_GetErrorText(err));
|
||||
+ printf("%s",Pm_GetErrorText(err));
|
||||
goto error_exit_no_device;
|
||||
}
|
||||
active = true;
|
||||
diff --git a/pm_test/mm.c b/pm_test/mm.c
|
||||
index 209ff74..f3e6e7b 100755
|
||||
--- a/pm_test/mm.c
|
||||
+++ b/pm_test/mm.c
|
||||
@@ -119,7 +119,7 @@ int get_number(char *prompt)
|
||||
{
|
||||
char line[STRING_MAX];
|
||||
int n = 0, i;
|
||||
- printf(prompt);
|
||||
+ printf("%s",prompt);
|
||||
while (n != 1) {
|
||||
n = scanf("%d", &i);
|
||||
fgets(line, STRING_MAX, stdin);
|
||||
@@ -136,7 +136,7 @@ void receive_poll(PtTimestamp timestamp, void *userData)
|
||||
if (!active) return;
|
||||
while ((count = Pm_Read(midi_in, &event, 1))) {
|
||||
if (count == 1) output(event.message);
|
||||
- else printf(Pm_GetErrorText(count));
|
||||
+ else printf("%s",Pm_GetErrorText(count));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -168,7 +168,7 @@ int main(int argc, char **argv)
|
||||
inp = get_number("Type input device number: ");
|
||||
err = Pm_OpenInput(&midi_in, inp, NULL, 512, NULL, NULL);
|
||||
if (err) {
|
||||
- printf(Pm_GetErrorText(err));
|
||||
+ printf("%s",Pm_GetErrorText(err));
|
||||
Pt_Stop();
|
||||
mmexit(1);
|
||||
}
|
||||
@@ -484,7 +484,7 @@ private int put_pitch(int p)
|
||||
"gs", "a", "bf", "b" };
|
||||
/* note octave correction below */
|
||||
sprintf(result, "%s%d", ptos[p % 12], (p / 12) - 1);
|
||||
- printf(result);
|
||||
+ printf("%s",result);
|
||||
return strlen(result);
|
||||
}
|
||||
|
||||
diff --git a/pm_test/sysex.c b/pm_test/sysex.c
|
||||
index 627a3df..da2bb90 100755
|
||||
--- a/pm_test/sysex.c
|
||||
+++ b/pm_test/sysex.c
|
||||
@@ -39,7 +39,7 @@ int get_number(char *prompt)
|
||||
{
|
||||
char line[STRING_MAX];
|
||||
int n = 0, i;
|
||||
- printf(prompt);
|
||||
+ printf("%s",prompt);
|
||||
while (n != 1) {
|
||||
n = scanf("%d", &i);
|
||||
fgets(line, STRING_MAX, stdin);
|
||||
diff --git a/pm_test/test.c b/pm_test/test.c
|
||||
index 03d6331..dcac1bc 100755
|
||||
--- a/pm_test/test.c
|
||||
+++ b/pm_test/test.c
|
||||
@@ -37,7 +37,7 @@ int get_number(char *prompt)
|
||||
{
|
||||
char line[STRING_MAX];
|
||||
int n = 0, i;
|
||||
- printf(prompt);
|
||||
+ printf("%s",prompt);
|
||||
while (n != 1) {
|
||||
n = scanf("%d", &i);
|
||||
fgets(line, STRING_MAX, stdin);
|
||||
--
|
||||
2.14.4
|
||||
|
||||
107
recipes-support/portmidi/files/fedora-portmidi-cmake.patch
Normal file
107
recipes-support/portmidi/files/fedora-portmidi-cmake.patch
Normal file
@@ -0,0 +1,107 @@
|
||||
diff -rupN portmidi.old/pm_common/CMakeLists.txt portmidi/pm_common/CMakeLists.txt
|
||||
--- portmidi.old/pm_common/CMakeLists.txt 2010-09-20 15:57:48.000000000 -0400
|
||||
+++ portmidi/pm_common/CMakeLists.txt 2011-06-23 22:35:41.000000000 -0400
|
||||
@@ -120,8 +120,8 @@ set_target_properties(pmjni PROPERTIES E
|
||||
# install the libraries (Linux and Mac OS X command line)
|
||||
if(UNIX)
|
||||
INSTALL(TARGETS portmidi-static pmjni
|
||||
- LIBRARY DESTINATION /usr/local/lib
|
||||
- ARCHIVE DESTINATION /usr/local/lib)
|
||||
+ LIBRARY DESTINATION ${LIB_INSTALL_DIR}
|
||||
+ ARCHIVE DESTINATION ${LIB_INSTALL_DIR})
|
||||
# .h files installed by pm_dylib/CMakeLists.txt, so don't need them here
|
||||
# INSTALL(FILES portmidi.h ../porttime/porttime.h
|
||||
# DESTINATION /usr/local/include)
|
||||
diff -rupN portmidi.old/pm_dylib/CMakeLists.txt portmidi/pm_dylib/CMakeLists.txt
|
||||
--- portmidi.old/pm_dylib/CMakeLists.txt 2009-11-20 00:41:09.000000000 -0500
|
||||
+++ portmidi/pm_dylib/CMakeLists.txt 2011-06-23 22:35:41.000000000 -0400
|
||||
@@ -59,7 +59,7 @@ if(UNIX)
|
||||
|
||||
set(JAVAVM_LIB "${FRAMEWORK_PATH}/JavaVM.framework")
|
||||
set(JAVA_INCLUDE_PATHS ${JAVAVM_LIB}/Headers)
|
||||
- set(INSTALL_NAME_DIR "/usr/local/lib")
|
||||
+ set(INSTALL_NAME_DIR ${LIB_INSTALL_DIR})
|
||||
message(STATUS "SYSROOT: " ${CMAKE_OSX_SYSROOT})
|
||||
else(APPLE)
|
||||
# LINUX settings...
|
||||
@@ -75,11 +75,7 @@ if(UNIX)
|
||||
# JAVA_INCLUDE_PATH2; if no, then we need to make both JAVA_INCLUDE_PATH
|
||||
# and JAVA_INCLUDE_PATH2 set by user (will need clear documentation
|
||||
# because JAVA_INCLUDE_PATH2 is pretty obscure)
|
||||
- set(JAVA_INCLUDE_PATH ${JAVA_INCLUDE_PATH-UNKNOWN}
|
||||
- CACHE STRING "where to find Java SDK include directory")
|
||||
- set(JAVA_INCLUDE_PATHS ${JAVA_INCLUDE_PATH} ${JAVA_INCLUDE_PATH}/linux)
|
||||
- # libjvm.so is found relative to JAVA_INCLUDE_PATH:
|
||||
- set(JAVAVM_LIB ${JAVA_INCLUDE_PATH}/../jre/lib/i386/client/libjvm.so)
|
||||
+ set(JAVAVM_LIB ${JAVA_JVM_LIBRARY})
|
||||
|
||||
set(LINUXSRC pmlinuxalsa pmlinux finddefault)
|
||||
prepend_path(LIBSRC ../pm_linux/ ${LINUXSRC})
|
||||
@@ -114,14 +110,14 @@ prepend_path(SHARED_PATHS ../pm_common/
|
||||
list(APPEND LIBSRC ${SHARED_PATHS})
|
||||
|
||||
add_library(portmidi-dynamic SHARED ${LIBSRC})
|
||||
-set_target_properties(portmidi-dynamic PROPERTIES OUTPUT_NAME "portmidi")
|
||||
+set_target_properties(portmidi-dynamic PROPERTIES LINK_FLAGS "-L${CMAKE_CACHEFILE_DIR}/Release" SOVERSION 0 VERSION 0.${VERSION} OUTPUT_NAME "portmidi")
|
||||
target_link_libraries(portmidi-dynamic ${PM_NEEDED_LIBS})
|
||||
|
||||
# install the libraries (Linux and Mac OS X command line)
|
||||
if(UNIX)
|
||||
INSTALL(TARGETS portmidi-dynamic
|
||||
- LIBRARY DESTINATION /usr/local/lib
|
||||
- ARCHIVE DESTINATION /usr/local/lib)
|
||||
+ LIBRARY DESTINATION ${LIB_INSTALL_DIR}
|
||||
+ ARCHIVE DESTINATION ${LIB_INSTALL_DIR})
|
||||
INSTALL(FILES ../pm_common/portmidi.h ../porttime/porttime.h
|
||||
- DESTINATION /usr/local/include)
|
||||
+ DESTINATION ${INCLUDE_INSTALL_DIR})
|
||||
endif(UNIX)
|
||||
diff -rupN portmidi.old/pm_java/CMakeLists.txt portmidi/pm_java/CMakeLists.txt
|
||||
--- portmidi.old/pm_java/CMakeLists.txt 2009-11-04 10:20:44.000000000 -0500
|
||||
+++ portmidi/pm_java/CMakeLists.txt 2011-06-23 22:35:54.000000000 -0400
|
||||
@@ -16,12 +16,12 @@ if(UNIX)
|
||||
COMMAND javac -classpath . pmdefaults/PmDefaultsFrame.java
|
||||
MAIN_DEPENDENCY pmdefaults/PmDefaultsFrame.java
|
||||
DEPENDS pmdefaults/PmDefaults.java
|
||||
- WORKING_DIRECTORY pm_java)
|
||||
+ )
|
||||
add_custom_command(OUTPUT pmdefaults/PmDefaults.class
|
||||
COMMAND javac -classpath . pmdefaults/PmDefaults.java
|
||||
MAIN_DEPENDENCY pmdefaults/PmDefaults.java
|
||||
DEPENDS pmdefaults/PmDefaultsFrame.java
|
||||
- WORKING_DIRECTORY pm_java)
|
||||
+ )
|
||||
add_custom_command(OUTPUT ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/pmdefaults.jar
|
||||
COMMAND cp pmdefaults/portmusic_logo.png .
|
||||
COMMAND jar cmf pmdefaults/manifest.txt pmdefaults.jar
|
||||
@@ -32,7 +32,7 @@ if(UNIX)
|
||||
COMMAND rm portmusic_logo.png
|
||||
MAIN_DEPENDENCY pmdefaults/PmDefaults.class
|
||||
DEPENDS ${PMDEFAULTS_ALL_CLASSES}
|
||||
- WORKING_DIRECTORY pm_java)
|
||||
+ )
|
||||
add_custom_target(pmdefaults_target ALL
|
||||
DEPENDS ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/pmdefaults.jar)
|
||||
# message(STATUS "add_custom_target: pmdefaults.jar")
|
||||
@@ -41,7 +41,7 @@ if(UNIX)
|
||||
INSTALL(FILES ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/pmdefaults.jar
|
||||
DESTINATION /usr/share/java)
|
||||
INSTALL(PROGRAMS ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/pmdefaults
|
||||
- DESTINATION /usr/local/bin)
|
||||
+ DESTINATION ${CMAKE_INSTALL_PREFIX}/bin)
|
||||
endif(APPLE)
|
||||
endif(UNIX)
|
||||
# In windows, use pm_java/make.bat
|
||||
diff -rupN portmidi.old/pm_test/CMakeLists.txt portmidi/pm_test/CMakeLists.txt
|
||||
--- portmidi.old/pm_test/CMakeLists.txt 2010-09-20 15:57:48.000000000 -0400
|
||||
+++ portmidi/pm_test/CMakeLists.txt 2011-06-23 22:35:41.000000000 -0400
|
||||
@@ -12,7 +12,7 @@ endif(WIN32)
|
||||
|
||||
macro(make_a_test name)
|
||||
add_executable(${name} ${name}.c)
|
||||
- target_link_libraries(${name} portmidi-static ${PM_NEEDED_LIBS})
|
||||
+ target_link_libraries(${name} portmidi-dynamic)
|
||||
add_dependencies(${name} portmidi-static)
|
||||
endmacro(make_a_test)
|
||||
|
||||
|
||||
36
recipes-support/portmidi/portmidi_217.bb
Normal file
36
recipes-support/portmidi/portmidi_217.bb
Normal file
@@ -0,0 +1,36 @@
|
||||
SUMMARY = "Real-time Midi I/O Library"
|
||||
HOMEPAGE = "http://portmedia.sourceforge.net"
|
||||
LICENSE = "MIT"
|
||||
LIC_FILES_CHKSUM = "file://license.txt;md5=a0c1c261bc48165d48388e3a121a31e9"
|
||||
|
||||
inherit cmake dos2unix
|
||||
|
||||
DEPENDS += " \
|
||||
alsa-lib \
|
||||
"
|
||||
|
||||
SRC_URI = " \
|
||||
${SOURCEFORGE_MIRROR}/project/portmedia/${BPN}/${PV}/${BPN}-src-${PV}.zip \
|
||||
file://fedora-portmidi-cmake.patch \
|
||||
file://0001-do-not-build-java-application-to-set-midi-defaults.patch \
|
||||
file://0002-fix-compilation-du-to-unkown-functions.patch \
|
||||
file://0003-fix-format-security..patch \
|
||||
"
|
||||
SRC_URI[md5sum] = "03f46fd3947e2ef4c8c465baaf832241"
|
||||
SRC_URI[sha256sum] = "08e9a892bd80bdb1115213fb72dc29a7bf2ff108b378180586aa65f3cfd42e0f"
|
||||
|
||||
S = "${WORKDIR}/${BPN}"
|
||||
|
||||
EXTRA_OECMAKE += " \
|
||||
-DLIB_INSTALL_DIR=${libdir} \
|
||||
-DINCLUDE_INSTALL_DIR=${includedir} \
|
||||
-DCMAKE_ARCHIVE_OUTPUT_DIRECTORY=Release \
|
||||
-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=Release \
|
||||
-DCMAKE_RUNTIME_OUTPUT_DIRECTORY=Release \
|
||||
"
|
||||
|
||||
do_install_append() {
|
||||
ln -s libportmidi.so.0. "${D}/${libdir}/libporttime.so"
|
||||
ln -s libportmidi.so.0. "${D}/${libdir}/libporttime.so.0"
|
||||
ln -s libportmidi.so.0. "${D}/${libdir}/libporttime.so.0."
|
||||
}
|
||||
Reference in New Issue
Block a user