Package Details: dev86 0.16.21-8

Git Clone URL: https://aur.archlinux.org/dev86.git (read-only, click to copy)
Package Base: dev86
Description: Simple C compiler to generate 8086 code
Upstream URL: https://v3.sk/~lkundrak/dev86/
Licenses: GPL
Submitter: eworm
Maintainer: SengeRinchen
Last Packager: SengeRinchen
Votes: 0
Popularity: 0.000000
First Submitted: 2024-05-01 20:45 (UTC)
Last Updated: 2024-06-14 01:43 (UTC)

Latest Comments

SengeRinchen commented on 2024-06-14 01:48 (UTC)

Fixes pushed into 0.16.21-8

eworm commented on 2024-06-13 07:06 (UTC)

I do no longer use this, so disowned. (Same for bin86...) Feel free to adopt and fix it yourself.

SengeRinchen commented on 2024-06-13 06:21 (UTC) (edited on 2024-06-13 06:22 (UTC) by SengeRinchen)

Doesn't bulild as of today. I applied the following steps to build:

  • Add patches from Fedora, just paste them into 0001-mandir.patch: Note it's necessary to update the sha256 in PKGBUILD 
--- dev86-0.16.17/makefile.in.noelks    2006-01-25 17:03:02.000000000 -0500
+++ dev86-0.16.17/makefile.in   2006-01-25 17:03:19.000000000 -0500
@@ -89,10 +89,10 @@

 #ifdef GNUMAKE
 all: check_config bcc86 cpp unproto copt as86 ar86 ld86 objdump86 \
-     library lib-bsd alt-libs elksemu
+     library lib-bsd alt-libs 

 install: check_config install-bcc install-man \
-     install-lib install-emu
+     install-lib

 install-all: install install-other

diff -up dev86-0.16.19/ld/x86_aout.h.long dev86-0.16.19/ld/x86_aout.h
--- dev86-0.16.19/ld/x86_aout.h.long    2012-07-30 10:17:06.000000000 +0200
+++ dev86-0.16.19/ld/x86_aout.h 2012-11-15 15:19:12.215396644 +0100
@@ -11,17 +11,11 @@
 /* If the host isn't an x86 all bets are off, use chars. */
 #if defined(i386) || defined(__BCC__) || defined(MSDOS)
 typedef long Long;
-#define __OUT_OK 1
 #else
-/* Beware: this will probably allow some BE hosts to generate broken files. */
-#ifdef INT32_MAX
 #include <stdint.h>
 typedef int32_t Long;
-#define __OUT_OK 1
-#else
-typedef char Long[4];
-#endif
 #endif
+#define __OUT_OK 1

 struct exec {          /* a.out header */
   unsigned char    a_magic[2]; /* magic number */

  • In PKGBUILD, change the line export CFLAGS+=' -ffat-lto-objects' with the following:
  export COMPILE_FLAGS="-O2 -ffat-lto-objects -Wno-implicit-function-declaration -Wno-implicit-int -Wno-return-mismatch"
  make bcc86 unproto copt as86 ld86 DIST="$pkgdir" PREFIX="/usr" CFLAGS="$COMPILE_FLAGS"
  make -C cpp DIST="$pkgdir" PREFIX="/usr" CFLAGS="$COMPILE_FLAGS"
  make -C ar DIST="$pkgdir" PREFIX="/usr" CFLAGS="$COMPILE_FLAGS"
  make -C ld DIST="$pkgdir" PREFIX="/usr" CFLAGS="$COMPILE_FLAGS"
  • In PKGBUILD, change the line make install-all DIST="$pkgdir" to
make install install-man DIST="$pkgdir"