diff --git a/pkgs/misc/emulators/gxemul/0001-fix-attributes.patch b/pkgs/misc/emulators/gxemul/0001-fix-attributes.patch new file mode 100644 index 00000000000..3ed9cabc7ad --- /dev/null +++ b/pkgs/misc/emulators/gxemul/0001-fix-attributes.patch @@ -0,0 +1,26 @@ +diff -Naur gxemul-0.7.0-old/src/include/thirdparty/pcireg.h gxemul-0.7.0/src/include/thirdparty/pcireg.h +--- gxemul-0.7.0-old/src/include/thirdparty/pcireg.h 2021-04-22 15:04:14.000000000 -0300 ++++ gxemul-0.7.0-new/src/include/thirdparty/pcireg.h 2021-06-28 18:41:13.063065322 -0300 +@@ -12,9 +12,6 @@ + #undef __noreturn__ + #endif + +-#define __attribute__(x) /* */ +-#define __noreturn__ /* */ +- + /* + * Copyright (c) 1995, 1996, 1999, 2000 + * Christopher G. Demetriou. All rights reserved. +diff -Naur gxemul-0.7.0-old/src/include/thirdparty/sgi_arcbios.h gxemul-0.7.0/src/include/thirdparty/sgi_arcbios.h +--- gxemul-0.7.0-old/src/include/thirdparty/sgi_arcbios.h 2021-04-22 15:04:14.000000000 -0300 ++++ gxemul-0.7.0-new/src/include/thirdparty/sgi_arcbios.h 2021-06-28 18:41:33.549981505 -0300 +@@ -14,9 +14,6 @@ + #undef __noreturn__ + #endif + +-#define __attribute__(x) /* */ +-#define __noreturn__ /* */ +- + /* $NetBSD: arcbios.h,v 1.3 2001/12/06 14:59:02 rafal Exp $ */ + + /*- diff --git a/pkgs/misc/emulators/gxemul/default.nix b/pkgs/misc/emulators/gxemul/default.nix index 3149ccaaaac..cacb521c2fb 100644 --- a/pkgs/misc/emulators/gxemul/default.nix +++ b/pkgs/misc/emulators/gxemul/default.nix @@ -1,21 +1,31 @@ -{ lib, stdenv, fetchurl }: +{ lib +, stdenv +, fetchurl +, libX11 +}: stdenv.mkDerivation rec { pname = "gxemul"; - version = "0.6.2"; + version = "0.7.0"; src = fetchurl { - url = "http://gavare.se/gxemul/src/gxemul-${version}.tar.gz"; - sha256 = "0iqmazfn7ss5n27m1a9n9nps3vzhag1phzb7qw0wgczycmwsq0x7"; + url = "http://gavare.se/gxemul/src/${pname}-${version}.tar.gz"; + sha256 = "sha256-ecRDfG+MqQT0bTOsNgYqZf3PSpKiSEeOQIqxEpXPjoM="; }; - configurePhase = "./configure"; + buildInputs = [ + libX11 + ]; - installPhase = '' - mkdir -p {$out/bin,$out/share/${pname}-${version}} - cp -r {doc,demos} $out/share/${pname}-${version} - cp gxemul $out/bin - cp -r ./man $out + patches = [ + # Fix compilation; remove when next release arrives + ./0001-fix-attributes.patch + ]; + + dontAddPrefix = true; + + preConfigure = '' + export PREFIX=${placeholder "out"} ''; meta = with lib; { @@ -24,12 +34,14 @@ stdenv.mkDerivation rec { longDescription = '' GXemul is a framework for full-system computer architecture emulation. Several real machines have been implemented within the - framework, consisting of processors (ARM, MIPS, Motorola 88K, - PowerPC, and SuperH) and surrounding hardware components such as - framebuffers, interrupt controllers, busses, disk controllers, - and serial controllers. The emulation is working well enough to - allow several unmodified "guest" operating systems to run. + framework, consisting of processors (ARM, MIPS, Motorola 88K, PowerPC, and + SuperH) and surrounding hardware components such as framebuffers, + interrupt controllers, busses, disk controllers, and serial + controllers. The emulation is working well enough to allow several + unmodified "guest" operating systems to run. ''; license = licenses.bsd3; + maintainers = with maintainers; [ AndersonTorres ]; + platforms = platforms.unix; }; }