[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[tyndur-devel] [PATCH] lbuilds: FASM
From: Max Reitz <max@xxxxxxxxxx>
+ Cross-FASM (1.69.09)
+ FASM 1.69.09
Signed-off-by: Max Reitz <max@xxxxxxxxxx>
---
lbuilds/fasm/1.69.09/fasm-1.69.09.lbuild | 33 ++++++++++++++++++++++++++++++
lbuilds/fasm/1.69.09/files/formats.patch | 4 +++
patches/fasm/1.69.09/formats.patch | 4 +++
scripts/build_crosstools | 23 ++++++++++++++++++++-
4 files changed, 63 insertions(+), 1 deletions(-)
create mode 100644 lbuilds/fasm/1.69.09/fasm-1.69.09.lbuild
create mode 100644 lbuilds/fasm/1.69.09/files/formats.patch
create mode 100644 patches/fasm/1.69.09/formats.patch
diff --git a/lbuilds/fasm/1.69.09/fasm-1.69.09.lbuild b/lbuilds/fasm/1.69.09/fasm-1.69.09.lbuild
new file mode 100644
index 0000000..23da5b2
--- /dev/null
+++ b/lbuilds/fasm/1.69.09/fasm-1.69.09.lbuild
@@ -0,0 +1,33 @@
+include toolchain
+include lutils
+
+DESCRIPTION="Der Flatassembler (Intelsyntax)"
+HOMEPAGE="http://flatassembler.net/"
+SRC_URI="http://flatassembler.net/${P}.tar.gz"
+
+LICENSE="Proprietary"
+
+BUILD_DEPEND=""
+RUN_DEPEND=""
+
+MY_S="${S}/${P}"
+
+src_unpack() {
+lunpack ${P}.tar.gz
+cd fasm
+
+ patch source/formats.inc ${F}/formats.patch || die "could not patch formats.inc"
+}
+
+src_compile() {
+ cd fasm
+ fasm source/libc/fasm.asm fasm.o || die "assembling failed"
+ i386-pc-tyndur-gcc fasm.o -o fasm || die "linking failed"
+ cd ..
+}
+
+src_install() {
+ cd fasm
+ install -d ${D}${R}/bin
+ cp fasm ${D}${R}/bin || die "could not install fasm"
+}
diff --git a/lbuilds/fasm/1.69.09/files/formats.patch b/lbuilds/fasm/1.69.09/files/formats.patch
new file mode 100644
index 0000000..7e4ec4b
--- /dev/null
+++ b/lbuilds/fasm/1.69.09/files/formats.patch
@@ -0,0 +1,4 @@
+3606c3606
+< mov [image_base],8048000h
+---
+> mov [image_base],40000000h
diff --git a/patches/fasm/1.69.09/formats.patch b/patches/fasm/1.69.09/formats.patch
new file mode 100644
index 0000000..7e4ec4b
--- /dev/null
+++ b/patches/fasm/1.69.09/formats.patch
@@ -0,0 +1,4 @@
+3606c3606
+< mov [image_base],8048000h
+---
+> mov [image_base],40000000h
diff --git a/scripts/build_crosstools b/scripts/build_crosstools
index febb5eb..3ec1321 100755
--- a/scripts/build_crosstools
+++ b/scripts/build_crosstools
@@ -9,12 +9,13 @@ MAKEOPTS=-j3
mkdir -p ${TMP}/cross-binutils/build
mkdir -p ${TMP}/cross-gcc/build
mkdir -p ${TMP}/cross-fpc
+mkdir -p ${TMP}/cross-fasm
cd ${TMP}/cross-binutils
echo "[binutils] Herunterladen..."
[ -f binutils-2.18.tar.bz2 ] || wget -q http://ftp.gnu.org/gnu/binutils/binutils-2.18.tar.bz2 || exit -1
echo "[binutils] Entpacken..."
-tar -xjf binutils-2.18.tar.bz2 || exit -1
+#tar -xjf binutils-2.18.tar.bz2 || exit -1
echo "[binutils] Patch anwenden..."
patch -p0 -d binutils-2.18/ < ${PATCHES}/binutils/2.18/binutils-2.18.patch >${LOGS}/binutils.log || exit -1
cd build
@@ -68,6 +69,26 @@ cp compiler/ppc386 ${PREFIX}/bin/fpc
cp utils/fpcm/fpcmake ${PREFIX}/bin/fpcmake
echo -e "[fpc] Abgeschlossen\n"
+cd ${TMP}/cross-fasm
+echo "[fasm] Herunterladen..."
+[ -f fasm-1.69.09.tar.gz ] || wget -q http://flatassembler.net/fasm-1.69.09.tar.gz || exit -1
+echo "[fasm] Entpacken..."
+tar -xzf fasm-1.69.09.tar.gz || exit -1
+echo "[fasm] Linux-FASM linken..."
+cd fasm
+gcc fasm.o -o fasm || exit -1
+echo "[fasm] Patch anwenden..."
+patch source/formats.inc ${PATCHES}/fasm/1.69.09/formats.patch || exit -1
+echo "[fasm] Assemblieren..."
+./fasm source/libc/fasm.asm fasm.o || exit -1
+echo "[fasm] Týndur-FASM linken..."
+gcc fasm.o -o fasm || exit -1
+echo "[fasm] Installieren..."
+cp fasm ${PREFIX}/bin/fasm
+echo -e "[fasm] Abgeschlossen\n"
+
+
rm -rf ${TMP}/cross-binutils/binutils-2.18/
rm -rf ${TMP}/cross-gcc/gcc-4.2.2/
rm -rf ${TMP}/cross-fpc/fpc/
+rm -rf ${TMP}/cross-fasm/fasm/
--
1.6.3.3