2021-11-15 17:07:07 +00:00
|
|
|
{ lib
|
|
|
|
, stdenv
|
|
|
|
, SDL
|
|
|
|
, SDL2
|
|
|
|
, alsa-lib
|
|
|
|
, boost
|
|
|
|
, buildPackages
|
|
|
|
, cmake
|
|
|
|
, curl
|
|
|
|
, fetchFromGitHub
|
|
|
|
, fetchpatch
|
|
|
|
, ffmpeg
|
|
|
|
, fluidsynth
|
|
|
|
, gettext
|
|
|
|
, hexdump
|
|
|
|
, hidapi
|
|
|
|
, icu
|
|
|
|
, libGL
|
|
|
|
, libGLU
|
|
|
|
, libevdev
|
|
|
|
, libjpeg
|
|
|
|
, libpcap
|
|
|
|
, libpng
|
|
|
|
, libvorbis
|
|
|
|
, libzip
|
|
|
|
, makeWrapper
|
|
|
|
, nasm
|
|
|
|
, openssl
|
|
|
|
, pcre
|
|
|
|
, pkg-config
|
|
|
|
, portaudio
|
|
|
|
, python27
|
|
|
|
, python3
|
|
|
|
, retroarch
|
|
|
|
, sfml
|
|
|
|
, snappy
|
|
|
|
, udev
|
|
|
|
, which
|
|
|
|
, xorg
|
|
|
|
, zlib
|
|
|
|
}:
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 18:32:35 +01:00
|
|
|
|
|
|
|
let
|
|
|
|
|
2021-11-15 17:07:07 +00:00
|
|
|
d2u = lib.replaceChars [ "-" ] [ "_" ];
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 18:32:35 +01:00
|
|
|
|
2021-11-15 17:07:07 +00:00
|
|
|
mkLibRetroCore =
|
|
|
|
{ core
|
|
|
|
, src
|
|
|
|
, description
|
|
|
|
, license
|
|
|
|
, broken ? false
|
|
|
|
, version ? "unstable-2021-11-16"
|
|
|
|
, ...
|
|
|
|
}@args:
|
|
|
|
lib.makeOverridable stdenv.mkDerivation ((rec {
|
2020-03-15 05:48:14 +00:00
|
|
|
|
2021-11-15 17:07:07 +00:00
|
|
|
name = "libretro-${core}-${version}";
|
|
|
|
inherit src version;
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 18:32:35 +01:00
|
|
|
|
2021-11-15 17:07:07 +00:00
|
|
|
buildInputs = [ zlib ] ++ args.extraBuildInputs or [ ];
|
|
|
|
nativeBuildInputs = [ makeWrapper ] ++ args.extraNativeBuildInputs or [ ];
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 18:32:35 +01:00
|
|
|
|
2021-11-15 17:07:07 +00:00
|
|
|
makefile = "Makefile.libretro";
|
|
|
|
makeFlags = [
|
|
|
|
"platform=${{
|
2020-03-22 02:54:01 +00:00
|
|
|
linux = "unix";
|
2020-03-31 20:07:57 +01:00
|
|
|
darwin = "osx";
|
2020-03-22 02:54:01 +00:00
|
|
|
windows = "win";
|
|
|
|
}.${stdenv.hostPlatform.parsed.kernel.name} or stdenv.hostPlatform.parsed.kernel.name}"
|
2021-11-15 17:07:07 +00:00
|
|
|
"ARCH=${{
|
2020-03-22 02:54:01 +00:00
|
|
|
armv7l = "arm";
|
|
|
|
armv6l = "arm";
|
|
|
|
i686 = "x86";
|
|
|
|
}.${stdenv.hostPlatform.parsed.cpu.name} or stdenv.hostPlatform.parsed.cpu.name}"
|
2021-11-15 17:07:07 +00:00
|
|
|
] ++ (args.makeFlags or [ ]);
|
|
|
|
|
|
|
|
installPhase = ''
|
|
|
|
COREDIR="$out/lib/retroarch/cores"
|
|
|
|
mkdir -p $out/bin
|
|
|
|
mkdir -p $COREDIR
|
|
|
|
mv ${d2u args.core}_libretro${stdenv.hostPlatform.extensions.sharedLibrary} $COREDIR
|
|
|
|
makeWrapper ${retroarch}/bin/retroarch $out/bin/retroarch-${core} \
|
|
|
|
--add-flags "-L $COREDIR/${d2u core}_libretro${stdenv.hostPlatform.extensions.sharedLibrary} $@"
|
|
|
|
'';
|
|
|
|
|
|
|
|
passthru = {
|
|
|
|
inherit core;
|
|
|
|
libretroCore = "/lib/retroarch/cores";
|
|
|
|
};
|
|
|
|
|
|
|
|
meta = with lib; {
|
|
|
|
inherit broken description license;
|
|
|
|
homepage = "https://www.libretro.com/";
|
|
|
|
maintainers = with maintainers; [ edwtjo hrdinka MP2E ];
|
|
|
|
platforms = platforms.unix;
|
|
|
|
};
|
|
|
|
}) // builtins.removeAttrs args [ "core" "src" "description" "license" "makeFlags" ]);
|
|
|
|
|
|
|
|
hashesFile = builtins.fromJSON (builtins.readFile ./hashes.json);
|
|
|
|
|
|
|
|
getCoreSrc = core:
|
|
|
|
fetchFromGitHub (builtins.getAttr core hashesFile);
|
|
|
|
|
|
|
|
in
|
|
|
|
with lib.licenses;
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 18:32:35 +01:00
|
|
|
|
|
|
|
{
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
atari800 = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "atari800";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of Atari800 to libretro";
|
|
|
|
license = gpl2;
|
|
|
|
makefile = "Makefile";
|
2020-03-22 02:54:01 +00:00
|
|
|
makeFlags = [ "GIT_VERSION=" ];
|
2019-11-02 11:16:10 +00:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
beetle-snes = mkLibRetroCore {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "mednafen-snes";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc "beetle-snes";
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of Mednafen's SNES core to libretro";
|
|
|
|
license = gpl2;
|
|
|
|
makefile = "Makefile";
|
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
beetle-gba = mkLibRetroCore {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "mednafen-gba";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc "beetle-gba";
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of Mednafen's GameBoy Advance core to libretro";
|
|
|
|
license = gpl2;
|
|
|
|
makefile = "Makefile";
|
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
beetle-lynx = mkLibRetroCore {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "mednafen-lynx";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc "beetle-lynx";
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of Mednafen's Lynx core to libretro";
|
|
|
|
license = gpl2;
|
|
|
|
makefile = "Makefile";
|
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
beetle-ngp = mkLibRetroCore {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "mednafen-ngp";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc "beetle-ngp";
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of Mednafen's NeoGeo Pocket core to libretro";
|
|
|
|
license = gpl2;
|
|
|
|
makefile = "Makefile";
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 18:32:35 +01:00
|
|
|
};
|
|
|
|
|
2021-11-15 17:07:07 +00:00
|
|
|
beetle-pce-fast =
|
|
|
|
let drv = mkLibRetroCore {
|
|
|
|
core = "mednafen-pce-fast";
|
|
|
|
src = getCoreSrc "beetle-pce-fast";
|
|
|
|
description = "Port of Mednafen's PC Engine core to libretro";
|
|
|
|
license = gpl2;
|
|
|
|
makefile = "Makefile";
|
|
|
|
}; in
|
|
|
|
drv.override {
|
|
|
|
name = "beetle-pce-fast-${drv.version}";
|
2017-02-25 15:14:35 +00:00
|
|
|
};
|
2019-11-07 16:29:26 +00:00
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
beetle-pcfx = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "mednafen-pcfx";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc "beetle-pcfx";
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of Mednafen's PCFX core to libretro";
|
|
|
|
license = gpl2;
|
|
|
|
makefile = "Makefile";
|
|
|
|
};
|
2017-02-25 15:14:35 +00:00
|
|
|
|
2021-11-15 17:07:07 +00:00
|
|
|
beetle-psx = let drv = (mkLibRetroCore {
|
2017-02-25 15:14:35 +00:00
|
|
|
core = "mednafen-psx";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc "beetle-psx";
|
2017-02-25 15:14:35 +00:00
|
|
|
description = "Port of Mednafen's PSX Engine core to libretro";
|
2018-03-02 00:11:16 +00:00
|
|
|
license = gpl2;
|
2019-11-02 11:16:10 +00:00
|
|
|
makefile = "Makefile";
|
2020-03-15 05:48:14 +00:00
|
|
|
makeFlags = [ "HAVE_HW=0" "HAVE_LIGHTREC=1" ];
|
2021-11-15 17:07:07 +00:00
|
|
|
}); in
|
|
|
|
drv.override {
|
|
|
|
name = "beetle-psx-${drv.version}";
|
|
|
|
};
|
2017-02-25 15:14:35 +00:00
|
|
|
|
2021-11-15 17:07:07 +00:00
|
|
|
beetle-psx-hw = let drv = (mkLibRetroCore {
|
2020-03-15 05:48:14 +00:00
|
|
|
core = "mednafen-psx-hw";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc "beetle-psx";
|
2020-03-15 05:48:14 +00:00
|
|
|
description = "Port of Mednafen's PSX Engine (with HW accel) core to libretro";
|
|
|
|
license = gpl2;
|
|
|
|
extraBuildInputs = [ libGL libGLU ];
|
|
|
|
makefile = "Makefile";
|
|
|
|
makeFlags = [ "HAVE_VULKAN=1" "HAVE_OPENGL=1" "HAVE_HW=1" "HAVE_LIGHTREC=1" ];
|
2021-11-15 17:07:07 +00:00
|
|
|
}); in
|
|
|
|
drv.override {
|
|
|
|
name = "beetle-psx-hw-${drv.version}";
|
|
|
|
};
|
2020-03-15 05:48:14 +00:00
|
|
|
|
2021-11-15 17:07:07 +00:00
|
|
|
beetle-saturn = let drv = (mkLibRetroCore {
|
2017-02-25 15:14:35 +00:00
|
|
|
core = "mednafen-saturn";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc "beetle-saturn";
|
2020-03-15 05:48:14 +00:00
|
|
|
description = "Port of Mednafen's Saturn core to libretro";
|
|
|
|
license = gpl2;
|
|
|
|
makefile = "Makefile";
|
|
|
|
makeFlags = [ "HAVE_HW=0" ];
|
|
|
|
meta.platforms = [ "x86_64-linux" "aarch64-linux" ];
|
2021-11-15 17:07:07 +00:00
|
|
|
}); in
|
|
|
|
drv.override {
|
|
|
|
name = "beetle-saturn-${drv.version}";
|
|
|
|
};
|
2020-03-15 05:48:14 +00:00
|
|
|
|
2021-11-15 17:07:07 +00:00
|
|
|
beetle-saturn-hw = let drv = (mkLibRetroCore {
|
2020-03-15 05:48:14 +00:00
|
|
|
core = "mednafen-saturn-hw";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc "beetle-saturn";
|
2017-02-25 15:14:35 +00:00
|
|
|
description = "Port of Mednafen's Saturn core to libretro";
|
2018-03-02 00:11:16 +00:00
|
|
|
license = gpl2;
|
2020-03-15 05:48:14 +00:00
|
|
|
extraBuildInputs = [ libGL libGLU ];
|
2019-11-02 11:16:10 +00:00
|
|
|
makefile = "Makefile";
|
2020-03-15 05:48:14 +00:00
|
|
|
makeFlags = [ "HAVE_OPENGL=1" "HAVE_HW=1" ];
|
2019-11-02 11:16:10 +00:00
|
|
|
meta.platforms = [ "x86_64-linux" "aarch64-linux" ];
|
2021-11-15 17:07:07 +00:00
|
|
|
}); in
|
|
|
|
drv.override {
|
|
|
|
name = "beetle-saturn-${drv.version}";
|
|
|
|
};
|
2019-11-07 16:29:26 +00:00
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
beetle-supergrafx = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "mednafen-supergrafx";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc "beetle-supergrafx";
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of Mednafen's SuperGrafx core to libretro";
|
|
|
|
license = gpl2;
|
|
|
|
makefile = "Makefile";
|
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
beetle-wswan = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "mednafen-wswan";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc "beetle-wswan";
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of Mednafen's WonderSwan core to libretro";
|
|
|
|
license = gpl2;
|
|
|
|
makefile = "Makefile";
|
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
beetle-vb = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "mednafen-vb";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc "beetle-vb";
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of Mednafen's VirtualBoy core to libretro";
|
|
|
|
license = gpl2;
|
|
|
|
makefile = "Makefile";
|
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
bluemsx = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "bluemsx";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of BlueMSX to libretro";
|
|
|
|
license = gpl2;
|
2017-02-25 15:14:35 +00:00
|
|
|
};
|
|
|
|
|
2021-11-15 17:07:07 +00:00
|
|
|
bsnes-mercury = let bname = "bsnes-mercury"; in
|
|
|
|
mkLibRetroCore {
|
|
|
|
core = bname + "-accuracy";
|
|
|
|
src = getCoreSrc "bsnes-mercury";
|
|
|
|
description = "Fork of bsnes with HLE DSP emulation restored";
|
|
|
|
license = gpl3;
|
|
|
|
makefile = "Makefile";
|
|
|
|
makeFlags = [ "PROFILE=accuracy" ];
|
2014-09-19 21:42:41 +01:00
|
|
|
};
|
2020-03-15 05:48:14 +00:00
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
citra = mkLibRetroCore rec {
|
2020-03-15 05:48:14 +00:00
|
|
|
core = "citra";
|
2021-11-16 19:45:43 +00:00
|
|
|
# `nix-prefetch-github` doesn't support `deepClone`, necessary for citra
|
|
|
|
# https://github.com/seppeljordan/nix-prefetch-github/issues/41
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
inherit (hashesFile.citra) owner repo rev fetchSubmodules;
|
|
|
|
deepClone = true;
|
|
|
|
sha256 = "sha256-bwnYkMvbtRF5bGZRYVtMWxnCu9P45qeX4+ntOj9eRds=";
|
|
|
|
};
|
2020-03-15 05:48:14 +00:00
|
|
|
description = "Port of Citra to libretro";
|
|
|
|
license = gpl2Plus;
|
2021-01-17 02:30:45 +00:00
|
|
|
extraNativeBuildInputs = [ cmake pkg-config ];
|
2020-03-22 02:54:01 +00:00
|
|
|
extraBuildInputs = [ libGLU libGL boost ];
|
2020-03-15 05:48:14 +00:00
|
|
|
makefile = "Makefile";
|
|
|
|
cmakeFlags = [
|
|
|
|
"-DENABLE_LIBRETRO=ON"
|
|
|
|
"-DENABLE_QT=OFF"
|
|
|
|
"-DENABLE_SDL2=OFF"
|
|
|
|
"-DENABLE_WEB_SERVICE=OFF"
|
|
|
|
"-DENABLE_DISCORD_PRESENCE=OFF"
|
|
|
|
];
|
|
|
|
preConfigure = "sed -e '77d' -i externals/cmake-modules/GetGitRevisionDescription.cmake";
|
|
|
|
postBuild = "cd src/citra_libretro";
|
2014-09-19 21:42:41 +01:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
desmume = mkLibRetroCore rec {
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 18:32:35 +01:00
|
|
|
core = "desmume";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 18:32:35 +01:00
|
|
|
description = "libretro wrapper for desmume NDS emulator";
|
2018-03-02 00:11:16 +00:00
|
|
|
license = gpl2;
|
2019-11-07 20:31:41 +00:00
|
|
|
extraBuildInputs = [ libpcap libGLU libGL xorg.libX11 ];
|
2020-03-22 02:54:01 +00:00
|
|
|
preBuild = "cd desmume/src/frontend/libretro";
|
2021-01-15 13:21:58 +00:00
|
|
|
makeFlags = lib.optional stdenv.hostPlatform.isAarch32 "platform=armv-unix"
|
2021-11-15 17:07:07 +00:00
|
|
|
++ lib.optional (!stdenv.hostPlatform.isx86) "DESMUME_JIT=0";
|
2019-11-02 11:16:10 +00:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
desmume2015 = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "desmume2015";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "libretro wrapper for desmume NDS emulator from 2015";
|
|
|
|
license = gpl2;
|
2019-11-07 20:31:41 +00:00
|
|
|
extraBuildInputs = [ libpcap libGLU libGL xorg.libX11 ];
|
2021-01-15 13:21:58 +00:00
|
|
|
makeFlags = lib.optional stdenv.hostPlatform.isAarch32 "platform=armv-unix"
|
2021-11-15 17:07:07 +00:00
|
|
|
++ lib.optional (!stdenv.hostPlatform.isx86) "DESMUME_JIT=0";
|
2020-03-22 02:54:01 +00:00
|
|
|
preBuild = "cd desmume";
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 18:32:35 +01:00
|
|
|
};
|
|
|
|
|
2021-11-15 17:07:07 +00:00
|
|
|
dolphin = mkLibRetroCore rec {
|
2017-06-04 09:10:14 +01:00
|
|
|
core = "dolphin";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2017-06-04 09:10:14 +01:00
|
|
|
description = "Port of Dolphin to libretro";
|
2018-03-02 00:11:16 +00:00
|
|
|
license = gpl2Plus;
|
2017-06-04 09:10:14 +01:00
|
|
|
|
2021-01-17 02:30:45 +00:00
|
|
|
extraNativeBuildInputs = [ cmake curl pkg-config ];
|
2017-06-04 09:10:14 +01:00
|
|
|
extraBuildInputs = [
|
2021-11-15 17:07:07 +00:00
|
|
|
libGLU
|
|
|
|
libGL
|
|
|
|
pcre
|
|
|
|
sfml
|
|
|
|
gettext
|
|
|
|
hidapi
|
|
|
|
libevdev
|
|
|
|
udev
|
2019-11-02 11:16:10 +00:00
|
|
|
] ++ (with xorg; [ libSM libX11 libXi libpthreadstubs libxcb xcbutil libXext libXrandr libXinerama libXxf86vm ]);
|
2020-03-15 05:48:14 +00:00
|
|
|
makefile = "Makefile";
|
2017-06-04 09:10:14 +01:00
|
|
|
cmakeFlags = [
|
2019-11-02 11:16:10 +00:00
|
|
|
"-DCMAKE_BUILD_TYPE=Release"
|
|
|
|
"-DLIBRETRO=ON"
|
|
|
|
"-DLIBRETRO_STATIC=1"
|
|
|
|
"-DENABLE_QT=OFF"
|
|
|
|
"-DENABLE_LTO=OFF"
|
|
|
|
"-DUSE_UPNP=OFF"
|
2019-11-07 16:29:26 +00:00
|
|
|
"-DUSE_DISCORD_PRESENCE=OFF"
|
2017-06-04 09:10:14 +01:00
|
|
|
];
|
2020-03-22 02:54:01 +00:00
|
|
|
dontUseCmakeBuildDir = true;
|
2019-11-02 11:16:10 +00:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
dosbox = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "dosbox";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of DOSBox to libretro";
|
|
|
|
license = gpl2;
|
2017-06-04 09:10:14 +01:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
eightyone = mkLibRetroCore rec {
|
2020-03-15 05:48:14 +00:00
|
|
|
core = "81";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc "eightyone";
|
2020-03-15 05:48:14 +00:00
|
|
|
description = "Port of EightyOne to libretro";
|
|
|
|
license = gpl3;
|
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
fbalpha2012 = mkLibRetroCore rec {
|
2020-03-15 05:48:14 +00:00
|
|
|
core = "fbalpha2012";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2020-03-15 05:48:14 +00:00
|
|
|
description = "Port of Final Burn Alpha ~2012 to libretro";
|
|
|
|
license = "Non-commercial";
|
|
|
|
makefile = "makefile.libretro";
|
2020-03-22 02:54:01 +00:00
|
|
|
preBuild = "cd svn-current/trunk";
|
2020-03-15 05:48:14 +00:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
fbneo = mkLibRetroCore rec {
|
2020-03-15 05:48:14 +00:00
|
|
|
core = "fbneo";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2020-03-15 05:48:14 +00:00
|
|
|
description = "Port of FBNeo to libretro";
|
2018-03-02 00:11:16 +00:00
|
|
|
license = "Non-commercial";
|
2020-03-15 05:48:14 +00:00
|
|
|
makefile = "Makefile";
|
|
|
|
postPatch = ''
|
|
|
|
sed -i -e 's:-Wall:-Wall -Wno-format-security:g' src/burner/libretro/Makefile
|
2014-09-19 21:42:41 +01:00
|
|
|
'';
|
2020-03-22 02:54:01 +00:00
|
|
|
preBuild = "cd src/burner/libretro";
|
2020-03-15 05:48:14 +00:00
|
|
|
makeFlags = [ "USE_EXPERIMENTAL_FLAGS=1" ];
|
2014-09-19 21:42:41 +01:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
fceumm = mkLibRetroCore rec {
|
2015-11-20 14:49:45 +00:00
|
|
|
core = "fceumm";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2015-11-20 14:49:45 +00:00
|
|
|
description = "FCEUmm libretro port";
|
2018-03-02 00:11:16 +00:00
|
|
|
license = gpl2;
|
2015-11-20 14:49:45 +00:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
flycast = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "flycast";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Flycast libretro port";
|
|
|
|
license = gpl2;
|
2019-11-07 16:29:26 +00:00
|
|
|
extraBuildInputs = [ libGL libGLU ];
|
2019-11-02 11:16:10 +00:00
|
|
|
makefile = "Makefile";
|
2021-01-15 13:21:58 +00:00
|
|
|
makeFlags = lib.optional stdenv.hostPlatform.isAarch64 [ "platform=arm64" ];
|
2020-03-15 05:48:14 +00:00
|
|
|
meta.platforms = [ "aarch64-linux" "x86_64-linux" ];
|
2019-11-02 11:16:10 +00:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
fmsx = mkLibRetroCore rec {
|
2020-03-15 05:48:14 +00:00
|
|
|
core = "fmsx";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2020-03-15 05:48:14 +00:00
|
|
|
description = "FMSX libretro port";
|
2020-03-22 02:54:01 +00:00
|
|
|
license = "Non-commercial";
|
2020-03-15 05:48:14 +00:00
|
|
|
makefile = "Makefile";
|
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
freeintv = mkLibRetroCore rec {
|
2020-03-15 05:48:14 +00:00
|
|
|
core = "freeintv";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2020-03-15 05:48:14 +00:00
|
|
|
description = "FreeIntv libretro port";
|
|
|
|
license = gpl3;
|
|
|
|
makefile = "Makefile";
|
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
gambatte = mkLibRetroCore rec {
|
2014-09-19 21:42:41 +01:00
|
|
|
core = "gambatte";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2014-09-19 21:42:41 +01:00
|
|
|
description = "Gambatte libretro port";
|
2018-03-02 00:11:16 +00:00
|
|
|
license = gpl2;
|
2014-09-19 21:42:41 +01:00
|
|
|
};
|
|
|
|
|
2021-11-15 17:07:07 +00:00
|
|
|
genesis-plus-gx = mkLibRetroCore rec {
|
2014-09-19 21:42:41 +01:00
|
|
|
core = "genesis-plus-gx";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2014-09-19 21:42:41 +01:00
|
|
|
description = "Enhanced Genesis Plus libretro port";
|
2018-03-02 00:11:16 +00:00
|
|
|
license = "Non-commercial";
|
2014-09-19 21:42:41 +01:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
gpsp = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "gpsp";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of gpSP to libretro";
|
|
|
|
license = gpl2;
|
|
|
|
makefile = "Makefile";
|
2020-03-15 05:48:14 +00:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
gw = mkLibRetroCore rec {
|
2020-03-15 05:48:14 +00:00
|
|
|
core = "gw";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2020-03-15 05:48:14 +00:00
|
|
|
description = "Port of Game and Watch to libretro";
|
2021-01-15 13:21:58 +00:00
|
|
|
license = lib.licenses.zlib;
|
2020-03-15 05:48:14 +00:00
|
|
|
makefile = "Makefile";
|
2019-11-02 11:16:10 +00:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
handy = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "handy";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of Handy to libretro";
|
|
|
|
license = "Handy-License";
|
|
|
|
makefile = "Makefile";
|
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
hatari = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "hatari";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of Hatari to libretro";
|
|
|
|
license = gpl2;
|
2020-03-22 02:54:01 +00:00
|
|
|
extraBuildInputs = [ SDL zlib ];
|
|
|
|
extraNativeBuildInputs = [ cmake which ];
|
|
|
|
dontUseCmakeConfigure = true;
|
2020-03-15 05:48:14 +00:00
|
|
|
dontConfigure = true;
|
2020-03-22 02:54:01 +00:00
|
|
|
makeFlags = [ "EXTERNAL_ZLIB=1" ];
|
|
|
|
depsBuildBuild = [ buildPackages.stdenv.cc ];
|
2014-09-19 21:42:41 +01:00
|
|
|
};
|
|
|
|
|
2021-11-15 17:07:07 +00:00
|
|
|
mame = mkLibRetroCore rec {
|
2016-02-26 10:18:02 +00:00
|
|
|
core = "mame";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2016-02-26 10:18:02 +00:00
|
|
|
description = "Port of MAME to libretro";
|
2018-03-02 00:11:16 +00:00
|
|
|
license = gpl2Plus;
|
2016-02-26 10:18:02 +00:00
|
|
|
|
2021-11-15 17:07:07 +00:00
|
|
|
extraBuildInputs = [ alsa-lib libGLU libGL portaudio python3 xorg.libX11 ];
|
2017-11-29 10:53:01 +00:00
|
|
|
postPatch = ''
|
|
|
|
# Prevent the failure during the parallel building of:
|
|
|
|
# make -C 3rdparty/genie/build/gmake.linux -f genie.make obj/Release/src/host/lua-5.3.0/src/lgc.o
|
|
|
|
mkdir -p 3rdparty/genie/build/gmake.linux/obj/Release/src/host/lua-5.3.0/src
|
|
|
|
'';
|
2020-03-15 05:48:14 +00:00
|
|
|
makefile = "Makefile.libretro";
|
2019-11-02 11:16:10 +00:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
mame2000 = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "mame2000";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of MAME ~2000 to libretro";
|
|
|
|
license = gpl2Plus;
|
|
|
|
makefile = "Makefile";
|
2021-01-15 13:21:58 +00:00
|
|
|
makeFlags = lib.optional (!stdenv.hostPlatform.isx86) "IS_X86=0";
|
2019-11-02 11:16:10 +00:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
mame2003 = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "mame2003";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of MAME ~2003 to libretro";
|
|
|
|
license = gpl2Plus;
|
|
|
|
makefile = "Makefile";
|
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
mame2003-plus = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "mame2003-plus";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of MAME ~2003+ to libretro";
|
|
|
|
license = gpl2Plus;
|
|
|
|
makefile = "Makefile";
|
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
mame2010 = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "mame2010";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of MAME ~2010 to libretro";
|
|
|
|
license = gpl2Plus;
|
|
|
|
makefile = "Makefile";
|
2021-01-15 13:21:58 +00:00
|
|
|
makeFlags = lib.optionals stdenv.hostPlatform.isAarch64 [ "PTR64=1" "ARM_ENABLED=1" "X86_SH2DRC=0" "FORCE_DRC_C_BACKEND=1" ];
|
2019-11-02 11:16:10 +00:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
mame2015 = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "mame2015";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of MAME ~2015 to libretro";
|
|
|
|
license = gpl2Plus;
|
2020-03-22 02:54:01 +00:00
|
|
|
extraNativeBuildInputs = [ python27 ];
|
2021-06-10 03:57:09 +01:00
|
|
|
extraBuildInputs = [ alsa-lib ];
|
2019-11-02 11:16:10 +00:00
|
|
|
makefile = "Makefile";
|
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
mame2016 = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "mame2016";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2020-10-28 16:03:22 +00:00
|
|
|
patches = [
|
|
|
|
(fetchpatch {
|
|
|
|
name = "fix_mame_build_on_make-4.3.patch";
|
|
|
|
url = "https://github.com/libretro/mame2016-libretro/commit/5874fae3d124f5e7c8a91634f5473a8eac902e47.patch";
|
|
|
|
sha256 = "061f1lcm72glksf475ikl8w10pnbgqa7049ylw06nikis2qdjlfn";
|
|
|
|
})
|
|
|
|
];
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of MAME ~2016 to libretro";
|
|
|
|
license = gpl2Plus;
|
2020-03-22 02:54:01 +00:00
|
|
|
extraNativeBuildInputs = [ python27 ];
|
2021-06-10 03:57:09 +01:00
|
|
|
extraBuildInputs = [ alsa-lib ];
|
2019-11-02 11:16:10 +00:00
|
|
|
postPatch = ''
|
|
|
|
# Prevent the failure during the parallel building of:
|
|
|
|
# make -C 3rdparty/genie/build/gmake.linux -f genie.make obj/Release/src/host/lua-5.3.0/src/lgc.o
|
|
|
|
mkdir -p 3rdparty/genie/build/gmake.linux/obj/Release/src/host/lua-5.3.0/src
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
mesen = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "mesen";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of Mesen to libretro";
|
|
|
|
license = gpl3;
|
2020-03-15 05:48:14 +00:00
|
|
|
makefile = "Makefile";
|
2020-03-22 02:54:01 +00:00
|
|
|
preBuild = "cd Libretro";
|
2020-03-15 05:48:14 +00:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
meteor = mkLibRetroCore rec {
|
2020-03-15 05:48:14 +00:00
|
|
|
core = "meteor";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2020-03-15 05:48:14 +00:00
|
|
|
description = "Port of Meteor to libretro";
|
|
|
|
license = gpl3;
|
|
|
|
makefile = "Makefile";
|
2020-03-22 02:54:01 +00:00
|
|
|
preBuild = "cd libretro";
|
2017-02-11 12:49:33 +00:00
|
|
|
};
|
|
|
|
|
2017-02-10 11:03:14 +00:00
|
|
|
mgba = mkLibRetroCore rec {
|
|
|
|
core = "mgba";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2017-02-10 11:03:14 +00:00
|
|
|
description = "Port of mGBA to libretro";
|
2018-03-02 00:11:16 +00:00
|
|
|
license = mpl20;
|
2017-02-10 11:03:14 +00:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
mupen64plus = mkLibRetroCore {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "mupen64plus-next";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc "mupen64plus";
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 18:32:35 +01:00
|
|
|
description = "Libretro port of Mupen64 Plus, GL only";
|
2018-03-02 00:11:16 +00:00
|
|
|
license = gpl2;
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 18:32:35 +01:00
|
|
|
|
2019-11-07 20:31:41 +00:00
|
|
|
extraBuildInputs = [ libGLU libGL libpng nasm xorg.libX11 ];
|
2019-11-02 11:16:10 +00:00
|
|
|
makefile = "Makefile";
|
2020-03-15 05:48:14 +00:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
neocd = mkLibRetroCore rec {
|
2020-03-15 05:48:14 +00:00
|
|
|
core = "neocd";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2020-03-15 05:48:14 +00:00
|
|
|
description = "NeoCD libretro port";
|
|
|
|
license = gpl3;
|
|
|
|
makefile = "Makefile";
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 18:32:35 +01:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
nestopia = mkLibRetroCore rec {
|
Replaced retroarchBare with retroarchBareMaster, also added a few new libretro cores
retroarchBare was too old for any practical use at this point, so it was removed in favor
of fetching releases from git. RetroArch often recommends checkout out the latest git master
if you are on a desktop platform, so we are conforming with their recommendation. I plan on
bumping the git of retroarch and each core every month, and I plan on adding more libretro
cores in the future.
The libretro cores that were added are nestopia, quicknes, snes9x, and vba-m
planned next are : bsnes-accuracy, bsnes-balanced, bsnes-performance, a few libretro mame ports
Closes #4448
2014-10-10 04:11:54 +01:00
|
|
|
core = "nestopia";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2020-03-15 05:48:14 +00:00
|
|
|
description = "Nestopia libretro port";
|
2018-03-02 00:11:16 +00:00
|
|
|
license = gpl2;
|
2020-03-15 05:48:14 +00:00
|
|
|
makefile = "Makefile";
|
2020-03-22 02:54:01 +00:00
|
|
|
preBuild = "cd libretro";
|
Replaced retroarchBare with retroarchBareMaster, also added a few new libretro cores
retroarchBare was too old for any practical use at this point, so it was removed in favor
of fetching releases from git. RetroArch often recommends checkout out the latest git master
if you are on a desktop platform, so we are conforming with their recommendation. I plan on
bumping the git of retroarch and each core every month, and I plan on adding more libretro
cores in the future.
The libretro cores that were added are nestopia, quicknes, snes9x, and vba-m
planned next are : bsnes-accuracy, bsnes-balanced, bsnes-performance, a few libretro mame ports
Closes #4448
2014-10-10 04:11:54 +01:00
|
|
|
};
|
2019-11-07 16:29:26 +00:00
|
|
|
|
2020-04-08 16:41:37 +01:00
|
|
|
np2kai = mkLibRetroCore rec {
|
|
|
|
core = "np2kai";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2020-04-08 16:41:37 +01:00
|
|
|
description = "Neko Project II kai libretro port";
|
|
|
|
license = mit;
|
|
|
|
makefile = "Makefile.libretro";
|
2021-11-15 17:07:07 +00:00
|
|
|
makeFlags = [
|
|
|
|
# See https://github.com/AZO234/NP2kai/tags
|
|
|
|
"NP2KAI_VERSION=rev.22"
|
|
|
|
"NP2KAI_HASH=${src.rev}"
|
|
|
|
];
|
|
|
|
preBuild = "cd sdl";
|
2020-04-08 16:41:37 +01:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
o2em = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "o2em";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of O2EM to libretro";
|
|
|
|
license = artistic1;
|
|
|
|
makefile = "Makefile";
|
2020-03-15 05:48:14 +00:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
opera = mkLibRetroCore rec {
|
2020-03-15 05:48:14 +00:00
|
|
|
core = "opera";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2020-03-15 05:48:14 +00:00
|
|
|
description = "Opera is a port of 4DO/libfreedo to libretro";
|
|
|
|
license = "Non-commercial";
|
|
|
|
makefile = "Makefile";
|
2020-03-22 02:54:01 +00:00
|
|
|
makeFlags = [ "CC_PREFIX=${stdenv.cc.targetPrefix}" ];
|
2019-11-02 11:16:10 +00:00
|
|
|
};
|
2019-11-07 16:29:26 +00:00
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
parallel-n64 = mkLibRetroCore rec {
|
2017-06-07 22:30:40 +01:00
|
|
|
core = "parallel-n64";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2017-06-07 22:30:40 +01:00
|
|
|
description = "Parallel Mupen64plus rewrite for libretro.";
|
2018-03-02 00:11:16 +00:00
|
|
|
license = gpl2;
|
2019-11-07 20:31:41 +00:00
|
|
|
extraBuildInputs = [ libGLU libGL libpng ];
|
2019-11-02 11:16:10 +00:00
|
|
|
makefile = "Makefile";
|
2021-01-15 13:21:58 +00:00
|
|
|
postPatch = lib.optionalString stdenv.hostPlatform.isAarch64 ''
|
2020-03-15 05:48:14 +00:00
|
|
|
sed -i -e '1 i\CPUFLAGS += -DARM_FIX -DNO_ASM -DARM_ASM -DDONT_WANT_ARM_OPTIMIZATIONS -DARM64' Makefile \
|
|
|
|
&& sed -i -e 's,CPUFLAGS :=,,g' Makefile
|
|
|
|
'';
|
2017-06-07 22:30:40 +01:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
pcsx_rearmed = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "pcsx_rearmed";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2020-03-15 05:48:14 +00:00
|
|
|
description = "Port of PCSX ReARMed with GNU lightning to libretro";
|
2019-11-02 11:16:10 +00:00
|
|
|
license = gpl2;
|
2020-03-15 05:48:14 +00:00
|
|
|
dontConfigure = true;
|
2019-11-02 11:16:10 +00:00
|
|
|
};
|
2019-11-07 16:29:26 +00:00
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
picodrive = mkLibRetroCore rec {
|
2014-09-19 21:42:41 +01:00
|
|
|
core = "picodrive";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2014-09-19 21:42:41 +01:00
|
|
|
description = "Fast MegaDrive/MegaCD/32X emulator";
|
2018-03-02 00:11:16 +00:00
|
|
|
license = "MAME";
|
2014-09-19 21:42:41 +01:00
|
|
|
|
|
|
|
extraBuildInputs = [ libpng SDL ];
|
2020-03-22 02:54:01 +00:00
|
|
|
SDL_CONFIG = "${SDL.dev}/bin/sdl-config";
|
|
|
|
dontAddPrefix = true;
|
2021-11-15 17:07:07 +00:00
|
|
|
configurePlatforms = [ ];
|
2021-01-15 13:21:58 +00:00
|
|
|
makeFlags = lib.optional stdenv.hostPlatform.isAarch64 [ "platform=aarch64" ];
|
2014-09-19 21:42:41 +01:00
|
|
|
};
|
|
|
|
|
2021-11-15 17:07:07 +00:00
|
|
|
play = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "play";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of Play! to libretro";
|
|
|
|
license = bsd2;
|
2020-03-22 02:54:01 +00:00
|
|
|
extraBuildInputs = [ boost ];
|
|
|
|
extraNativeBuildInputs = [ cmake openssl curl icu libGL libGLU xorg.libX11 ];
|
2020-03-15 05:48:14 +00:00
|
|
|
makefile = "Makefile";
|
2019-11-02 11:16:10 +00:00
|
|
|
cmakeFlags = [ "-DBUILD_PLAY=OFF -DBUILD_LIBRETRO_CORE=ON" ];
|
2020-03-15 05:48:14 +00:00
|
|
|
postBuild = "mv Source/ui_libretro/play_libretro${stdenv.hostPlatform.extensions.sharedLibrary} play_libretro${stdenv.hostPlatform.extensions.sharedLibrary}";
|
2021-11-15 17:07:07 +00:00
|
|
|
broken = true; # since 2021-01-03
|
2019-11-02 11:16:10 +00:00
|
|
|
};
|
|
|
|
|
2021-11-15 17:07:07 +00:00
|
|
|
ppsspp = mkLibRetroCore rec {
|
2015-11-20 14:49:45 +00:00
|
|
|
core = "ppsspp";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2015-11-20 14:49:45 +00:00
|
|
|
description = "ppsspp libretro port";
|
2018-03-02 00:11:16 +00:00
|
|
|
license = gpl2;
|
2021-05-20 22:51:05 +01:00
|
|
|
extraNativeBuildInputs = [ cmake pkg-config python3 ];
|
|
|
|
extraBuildInputs = [ libGLU libGL libzip ffmpeg snappy xorg.libX11 ];
|
2019-11-02 11:16:10 +00:00
|
|
|
makefile = "Makefile";
|
2020-03-15 05:48:14 +00:00
|
|
|
cmakeFlags = [ "-DLIBRETRO=ON -DUSE_SYSTEM_FFMPEG=ON -DUSE_SYSTEM_SNAPPY=ON -DUSE_SYSTEM_LIBZIP=ON -DOpenGL_GL_PREFERENCE=GLVND" ];
|
|
|
|
postBuild = "mv lib/ppsspp_libretro${stdenv.hostPlatform.extensions.sharedLibrary} ppsspp_libretro${stdenv.hostPlatform.extensions.sharedLibrary}";
|
2014-09-19 21:42:41 +01:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
prboom = mkLibRetroCore rec {
|
2015-11-20 14:49:45 +00:00
|
|
|
core = "prboom";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2015-11-20 14:49:45 +00:00
|
|
|
description = "Prboom libretro port";
|
2018-03-02 00:11:16 +00:00
|
|
|
license = gpl2;
|
2020-03-15 05:48:14 +00:00
|
|
|
makefile = "Makefile";
|
Replaced retroarchBare with retroarchBareMaster, also added a few new libretro cores
retroarchBare was too old for any practical use at this point, so it was removed in favor
of fetching releases from git. RetroArch often recommends checkout out the latest git master
if you are on a desktop platform, so we are conforming with their recommendation. I plan on
bumping the git of retroarch and each core every month, and I plan on adding more libretro
cores in the future.
The libretro cores that were added are nestopia, quicknes, snes9x, and vba-m
planned next are : bsnes-accuracy, bsnes-balanced, bsnes-performance, a few libretro mame ports
Closes #4448
2014-10-10 04:11:54 +01:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
prosystem = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "prosystem";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of ProSystem to libretro";
|
|
|
|
license = gpl2;
|
|
|
|
makefile = "Makefile";
|
2014-09-19 21:42:41 +01:00
|
|
|
};
|
|
|
|
|
2021-11-15 17:07:07 +00:00
|
|
|
quicknes = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "quicknes";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "QuickNES libretro port";
|
|
|
|
license = lgpl21Plus;
|
|
|
|
makefile = "Makefile";
|
2020-03-15 05:48:14 +00:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
sameboy = mkLibRetroCore rec {
|
2020-03-15 05:48:14 +00:00
|
|
|
core = "sameboy";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2020-03-15 05:48:14 +00:00
|
|
|
description = "SameBoy libretro port";
|
|
|
|
license = mit;
|
2020-03-22 02:54:01 +00:00
|
|
|
extraNativeBuildInputs = [ which hexdump ];
|
|
|
|
preBuild = "cd libretro";
|
2020-03-15 05:48:14 +00:00
|
|
|
makefile = "Makefile";
|
2017-02-10 11:11:29 +00:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
scummvm = mkLibRetroCore rec {
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 18:32:35 +01:00
|
|
|
core = "scummvm";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 18:32:35 +01:00
|
|
|
description = "Libretro port of ScummVM";
|
2018-03-02 00:11:16 +00:00
|
|
|
license = gpl2;
|
2019-11-07 20:31:41 +00:00
|
|
|
extraBuildInputs = [ fluidsynth libjpeg libvorbis libGLU libGL SDL ];
|
2020-03-15 05:48:14 +00:00
|
|
|
makefile = "Makefile";
|
2020-03-22 02:54:01 +00:00
|
|
|
preConfigure = "cd backends/platform/libretro/build";
|
2020-03-15 05:48:14 +00:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
smsplus-gx = mkLibRetroCore rec {
|
2020-03-15 05:48:14 +00:00
|
|
|
core = "smsplus";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc "smsplus-gx";
|
2020-03-15 05:48:14 +00:00
|
|
|
description = "SMS Plus GX libretro port";
|
|
|
|
license = gpl2Plus;
|
Replaced retroarchBare with retroarchBareMaster, also added a few new libretro cores
retroarchBare was too old for any practical use at this point, so it was removed in favor
of fetching releases from git. RetroArch often recommends checkout out the latest git master
if you are on a desktop platform, so we are conforming with their recommendation. I plan on
bumping the git of retroarch and each core every month, and I plan on adding more libretro
cores in the future.
The libretro cores that were added are nestopia, quicknes, snes9x, and vba-m
planned next are : bsnes-accuracy, bsnes-balanced, bsnes-performance, a few libretro mame ports
Closes #4448
2014-10-10 04:11:54 +01:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
snes9x = mkLibRetroCore rec {
|
Replaced retroarchBare with retroarchBareMaster, also added a few new libretro cores
retroarchBare was too old for any practical use at this point, so it was removed in favor
of fetching releases from git. RetroArch often recommends checkout out the latest git master
if you are on a desktop platform, so we are conforming with their recommendation. I plan on
bumping the git of retroarch and each core every month, and I plan on adding more libretro
cores in the future.
The libretro cores that were added are nestopia, quicknes, snes9x, and vba-m
planned next are : bsnes-accuracy, bsnes-balanced, bsnes-performance, a few libretro mame ports
Closes #4448
2014-10-10 04:11:54 +01:00
|
|
|
core = "snes9x";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2015-11-20 14:49:45 +00:00
|
|
|
description = "Port of SNES9x git to libretro";
|
2018-03-02 00:11:16 +00:00
|
|
|
license = "Non-commercial";
|
2020-03-15 05:48:14 +00:00
|
|
|
makefile = "Makefile";
|
2020-03-22 02:54:01 +00:00
|
|
|
preBuild = "cd libretro";
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 18:32:35 +01:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
snes9x2002 = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "snes9x2002";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Optimized port/rewrite of SNES9x 1.39 to Libretro";
|
|
|
|
license = "Non-commercial";
|
|
|
|
makefile = "Makefile";
|
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
snes9x2005 = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "snes9x2005";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Optimized port/rewrite of SNES9x 1.43 to Libretro";
|
|
|
|
license = "Non-commercial";
|
|
|
|
makefile = "Makefile";
|
2020-03-15 05:48:14 +00:00
|
|
|
makeFlags = [ "USE_BLARGG_APU=1" ];
|
|
|
|
postBuild = "mv snes9x2005_plus_libretro${stdenv.hostPlatform.extensions.sharedLibrary} snes9x2005_libretro${stdenv.hostPlatform.extensions.sharedLibrary}";
|
2019-11-02 11:16:10 +00:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
snes9x2010 = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "snes9x2010";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 18:32:35 +01:00
|
|
|
description = "Optimized port/rewrite of SNES9x 1.52+ to Libretro";
|
2018-03-02 00:11:16 +00:00
|
|
|
license = "Non-commercial";
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 18:32:35 +01:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
stella = mkLibRetroCore rec {
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 18:32:35 +01:00
|
|
|
core = "stella";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2020-03-15 05:48:14 +00:00
|
|
|
description = "Port of Stella to libretro";
|
|
|
|
license = gpl2;
|
2021-01-17 02:30:45 +00:00
|
|
|
extraBuildInputs = [ libpng pkg-config SDL ];
|
2020-03-15 05:48:14 +00:00
|
|
|
makefile = "Makefile";
|
2020-03-22 02:54:01 +00:00
|
|
|
preBuild = "cd src/libretro";
|
|
|
|
dontConfigure = true;
|
2020-03-15 05:48:14 +00:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
stella2014 = mkLibRetroCore rec {
|
2020-03-15 05:48:14 +00:00
|
|
|
core = "stella2014";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 18:32:35 +01:00
|
|
|
description = "Port of Stella to libretro";
|
2018-03-02 00:11:16 +00:00
|
|
|
license = gpl2;
|
2019-11-02 11:16:10 +00:00
|
|
|
makefile = "Makefile";
|
2020-03-15 05:48:14 +00:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
tgbdual = mkLibRetroCore rec {
|
2020-03-15 05:48:14 +00:00
|
|
|
core = "tgbdual";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2020-03-15 05:48:14 +00:00
|
|
|
description = "Port of TGBDual to libretro";
|
|
|
|
license = gpl2;
|
|
|
|
makefile = "Makefile";
|
|
|
|
};
|
|
|
|
|
2021-04-20 01:19:36 +01:00
|
|
|
thepowdertoy = mkLibRetroCore rec {
|
|
|
|
core = "thepowdertoy";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2021-04-20 01:19:36 +01:00
|
|
|
description = "Port of The Powder Toy to libretro";
|
|
|
|
license = gpl3Only;
|
|
|
|
extraNativeBuildInputs = [ cmake ];
|
|
|
|
makefile = "Makefile";
|
|
|
|
postBuild = "cd src/";
|
|
|
|
};
|
|
|
|
|
2021-11-15 17:07:07 +00:00
|
|
|
tic80 = mkLibRetroCore rec {
|
2020-03-15 05:48:14 +00:00
|
|
|
core = "tic80";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2020-03-15 05:48:14 +00:00
|
|
|
description = "Port of TIC-80 to libretro";
|
|
|
|
license = mit;
|
2021-11-15 17:07:07 +00:00
|
|
|
extraNativeBuildInputs = [ cmake pkg-config libGL libGLU ];
|
2020-03-15 05:48:14 +00:00
|
|
|
makefile = "Makefile";
|
|
|
|
cmakeFlags = [
|
|
|
|
"-DBUILD_LIBRETRO=ON"
|
|
|
|
"-DBUILD_DEMO_CARTS=OFF"
|
|
|
|
"-DBUILD_PRO=OFF"
|
|
|
|
"-DBUILD_PLAYER=OFF"
|
|
|
|
"-DBUILD_SDL=OFF"
|
|
|
|
"-DBUILD_SOKOL=OFF"
|
|
|
|
];
|
|
|
|
postBuild = "cd lib";
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 18:32:35 +01:00
|
|
|
};
|
|
|
|
|
2015-11-20 14:49:45 +00:00
|
|
|
vba-next = mkLibRetroCore rec {
|
|
|
|
core = "vba-next";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2015-11-20 14:49:45 +00:00
|
|
|
description = "VBA-M libretro port with modifications for speed";
|
2018-03-02 00:11:16 +00:00
|
|
|
license = gpl2;
|
2015-11-20 14:49:45 +00:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
vba-m = mkLibRetroCore rec {
|
Replaced retroarchBare with retroarchBareMaster, also added a few new libretro cores
retroarchBare was too old for any practical use at this point, so it was removed in favor
of fetching releases from git. RetroArch often recommends checkout out the latest git master
if you are on a desktop platform, so we are conforming with their recommendation. I plan on
bumping the git of retroarch and each core every month, and I plan on adding more libretro
cores in the future.
The libretro cores that were added are nestopia, quicknes, snes9x, and vba-m
planned next are : bsnes-accuracy, bsnes-balanced, bsnes-performance, a few libretro mame ports
Closes #4448
2014-10-10 04:11:54 +01:00
|
|
|
core = "vbam";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc "vba-m";
|
Replaced retroarchBare with retroarchBareMaster, also added a few new libretro cores
retroarchBare was too old for any practical use at this point, so it was removed in favor
of fetching releases from git. RetroArch often recommends checkout out the latest git master
if you are on a desktop platform, so we are conforming with their recommendation. I plan on
bumping the git of retroarch and each core every month, and I plan on adding more libretro
cores in the future.
The libretro cores that were added are nestopia, quicknes, snes9x, and vba-m
planned next are : bsnes-accuracy, bsnes-balanced, bsnes-performance, a few libretro mame ports
Closes #4448
2014-10-10 04:11:54 +01:00
|
|
|
description = "vanilla VBA-M libretro port";
|
2018-03-02 00:11:16 +00:00
|
|
|
license = gpl2;
|
2020-03-15 05:48:14 +00:00
|
|
|
makefile = "Makefile";
|
2020-03-22 02:54:01 +00:00
|
|
|
preBuild = "cd src/libretro";
|
Replaced retroarchBare with retroarchBareMaster, also added a few new libretro cores
retroarchBare was too old for any practical use at this point, so it was removed in favor
of fetching releases from git. RetroArch often recommends checkout out the latest git master
if you are on a desktop platform, so we are conforming with their recommendation. I plan on
bumping the git of retroarch and each core every month, and I plan on adding more libretro
cores in the future.
The libretro cores that were added are nestopia, quicknes, snes9x, and vba-m
planned next are : bsnes-accuracy, bsnes-balanced, bsnes-performance, a few libretro mame ports
Closes #4448
2014-10-10 04:11:54 +01:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
vecx = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "vecx";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of Vecx to libretro";
|
|
|
|
license = gpl3;
|
2021-11-15 17:07:07 +00:00
|
|
|
extraBuildInputs = [ libGL libGLU ];
|
2019-11-02 11:16:10 +00:00
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
virtualjaguar = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "virtualjaguar";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of VirtualJaguar to libretro";
|
|
|
|
license = gpl3;
|
|
|
|
makefile = "Makefile";
|
|
|
|
};
|
|
|
|
|
2020-03-22 02:54:01 +00:00
|
|
|
yabause = mkLibRetroCore rec {
|
2019-11-02 11:16:10 +00:00
|
|
|
core = "yabause";
|
2021-11-15 17:07:07 +00:00
|
|
|
src = getCoreSrc core;
|
2019-11-02 11:16:10 +00:00
|
|
|
description = "Port of Yabause to libretro";
|
|
|
|
license = gpl2;
|
2020-03-15 05:48:14 +00:00
|
|
|
makefile = "Makefile";
|
|
|
|
# Disable SSE for non-x86. DYNAREC doesn't build on either Aarch64 or x86_64.
|
2021-01-15 13:21:58 +00:00
|
|
|
makeFlags = lib.optional (!stdenv.hostPlatform.isx86) "HAVE_SSE=0";
|
2020-03-22 02:54:01 +00:00
|
|
|
preBuild = "cd yabause/src/libretro";
|
2019-11-02 11:16:10 +00:00
|
|
|
};
|
|
|
|
|
2014-10-28 09:08:43 +00:00
|
|
|
}
|