summaryrefslogtreecommitdiff
path: root/system
diff options
context:
space:
mode:
Diffstat (limited to 'system')
-rw-r--r--system/gxemul/README15
-rw-r--r--system/gxemul/gxemul.SlackBuild52
-rw-r--r--system/gxemul/gxemul.info8
-rw-r--r--system/gxemul/slack-desc19
4 files changed, 94 insertions, 0 deletions
diff --git a/system/gxemul/README b/system/gxemul/README
new file mode 100644
index 0000000000..554d204500
--- /dev/null
+++ b/system/gxemul/README
@@ -0,0 +1,15 @@
+GXemul is an experimental instruction-level machine emulator. Several
+emulation modes are available. In some modes, processors and
+surrounding hardware components are emulated well enough to let
+unmodified operating systems (e.g. NetBSD) run as if they were running
+on a real machine.
+
+The emulator is written in C, does not depend on third-party
+libraries, and should compile and run on most 64-bit and 32-bit
+Unix-like systems, with few or no modifications.
+
+Devices and processors are not simulated with 100% accuracy. They are
+only "faked" well enough to allow guest operating systems to run
+without complaining too much. Still, the emulator could be of interest
+for academic research and experiments, such as when learning how to
+write operating system code.
diff --git a/system/gxemul/gxemul.SlackBuild b/system/gxemul/gxemul.SlackBuild
new file mode 100644
index 0000000000..3a165f59a6
--- /dev/null
+++ b/system/gxemul/gxemul.SlackBuild
@@ -0,0 +1,52 @@
+#!/bin/sh
+
+# Slackware build script for GXemul
+
+# Written by Aleksandar B. Samardzic (<asamardzic@matf.bg.ac.yu>)
+
+set -e
+
+PRGNAM=gxemul
+VERSION=0.4.6
+ARCH=${ARCH:-i486}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+CWD=$(pwd)
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+fi
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar -xzvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+chmod -R u+w,go+r-w,a-s .
+
+CFLAGS="$SLKCFLAGS" ./configure
+make
+
+mkdir -p $PKG/usr/bin $PKG/usr/man/man1
+install -m 0755 gxemul $PKG/usr/bin
+install -m 0644 man/gxemul.1 $PKG/usr/man/man1
+strip --strip-unneeded $PKG/usr/bin/gxemul
+gzip -9 $PKG/usr/man/man1/gxemul.1
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/html
+install -m 0644 HISTORY LICENSE README RELEASE TODO $PKG/usr/doc/$PRGNAM-$VERSION
+install -m 0644 doc/* $PKG/usr/doc/$PRGNAM-$VERSION/html
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz
diff --git a/system/gxemul/gxemul.info b/system/gxemul/gxemul.info
new file mode 100644
index 0000000000..3f436d820c
--- /dev/null
+++ b/system/gxemul/gxemul.info
@@ -0,0 +1,8 @@
+PRGNAM="gxemul"
+VERSION="0.4.6"
+HOMEPAGE="http://gavare.se/gxemul/"
+DOWNLOAD="http://gavare.se/gxemul/src/gxemul-0.4.6.tar.gz"
+MD5SUM="462e4e77ad0721742f8655ab6ff0ec4f"
+MAINTAINER="Aleksandar B. Samardzic"
+EMAIL="asamardzic@matf.bg.ac.yu"
+APPROVED="rworkman"
diff --git a/system/gxemul/slack-desc b/system/gxemul/slack-desc
new file mode 100644
index 0000000000..9f26809d8b
--- /dev/null
+++ b/system/gxemul/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+gxemul: GXemul (an instruction-level machine emulator)
+gxemul:
+gxemul: GXemul emulates (networks of) real machines, consisting of
+gxemul: processors (ARM, MIPS, PowerPC, and SuperH, emulated using
+gxemul: dynamic translation) and various surrounding hardware
+gxemul: components such as framebuffers, interrupt controllers,
+gxemul: busses, disk controllers, and serial controllers.
+gxemul:
+gxemul: GXemul home page is: http://gavare.se/gxemul/
+gxemul:
+gxemul: