about summary refs log tree commit diff
path: root/pkgs/development/compilers/open-watcom/bin.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/compilers/open-watcom/bin.nix')
-rw-r--r--pkgs/development/compilers/open-watcom/bin.nix125
1 files changed, 0 insertions, 125 deletions
diff --git a/pkgs/development/compilers/open-watcom/bin.nix b/pkgs/development/compilers/open-watcom/bin.nix
deleted file mode 100644
index 1f8079908999..000000000000
--- a/pkgs/development/compilers/open-watcom/bin.nix
+++ /dev/null
@@ -1,125 +0,0 @@
-{ lib, stdenvNoCC, fetchurl, qemu, expect, writeScript, writeScriptBin, ncurses, bash, coreutils }:
-
-let
-
-  # We execute all OpenWatcom binaries in qemu-user, because otherwise
-  # some binaries (most notably the installer itself and wlib) fail to
-  # use the stat() systemcall. The failure mode is that it returns
-  # EOVERFLOW for completely legitimate requests. This seems like an
-  # incompatibility of new Linux kernels to run this ancient binary.
-  wrapLegacyBinary = writeScript "wrapLegacyBinary" ''
-    #!${bash}/bin/bash
-
-    set -eu
-
-    if [ $# -ne 2 ]; then
-       echo "Usage: $0 unwrapped-binary wrapped-binary"
-       exit 1
-    fi
-
-    IN="$(${coreutils}/bin/realpath $1)"
-    OUT="$2"
-    ARGV0="$(basename $2)"
-
-    cat > "$OUT" <<EOF
-    #!${bash}/bin/bash
-
-    TERMINFO=${ncurses}/share/terminfo TERM=vt100 exec ${qemu}/bin/qemu-i386 -0 $ARGV0 $IN "\$@"
-    EOF
-
-    chmod +x "$OUT"
-  '';
-
-  wrapInPlace = writeScriptBin "wrapInPlace" ''
-    #!${bash}/bin/bash
-
-    set -eu
-
-    if [ $# -ne 1 ]; then
-       echo "Usage: $0 unwrapped-binary"
-       exit 1
-    fi
-
-    TARGET="$1"
-
-    mv "$TARGET" "$TARGET-unwrapped"
-    chmod +x "$TARGET-unwrapped"
-
-    exec ${wrapLegacyBinary} "$TARGET-unwrapped" "$TARGET"
-  '';
-
-  # Do a scripted installation of OpenWatcom with its original installer.
-  #
-  # If maintaining this expect script turns out to be too much of a
-  # hassle, we can switch to just using `unzip' on the installer and
-  # the correct file permissions manually.
-  performInstall = writeScriptBin "performInstall" ''
-    #!${expect}/bin/expect -f
-
-    spawn [lindex $argv 0]
-
-    # Wait for button saying "I agree" with escape sequences.
-    expect "gree"
-
-    # Navigate to "I Agree!" and hit enter.
-    send "\t\t\n"
-
-    expect "Install Open Watcom"
-
-    # Where do we want to install to.
-    send "$env(out)\n"
-
-    expect "will be installed"
-
-    # Select Full Installation, Next
-    send "fn"
-
-    expect "Setup will now copy"
-
-    # Next
-    send "n"
-
-    expect "completed successfully"
-    send "\n"
-  '';
-
-in
-stdenvNoCC.mkDerivation rec {
-  pname = "${passthru.prettyName}-unwrapped";
-  version = "1.9";
-
-  src = fetchurl {
-    url = "http://ftp.openwatcom.org/install/open-watcom-c-linux-${version}";
-    sha256 = "1wzkvc6ija0cjj5mcyjng5b7hnnc5axidz030c0jh05pgvi4nj7p";
-  };
-
-  nativeBuildInputs = [ wrapInPlace performInstall ];
-
-  dontUnpack = true;
-  dontConfigure = true;
-
-  buildPhase = ''
-    cp ${src} install-bin-unwrapped
-    wrapInPlace install-bin-unwrapped
-  '';
-
-  installPhase = ''
-    performInstall ./install-bin-unwrapped
-
-    for e in $(find $out/binl -type f -executable); do
-      echo "Wrapping $e"
-      wrapInPlace "$e"
-    done
-  '';
-
-  passthru.prettyName = "open-watcom-bin";
-
-  meta = with lib; {
-    description = "Project to maintain and enhance the Watcom C, C++, and Fortran cross compilers and tools";
-    sourceProvenance = with sourceTypes; [ binaryNativeCode ];
-    homepage = "http://www.openwatcom.org/";
-    license = licenses.watcom;
-    platforms = [ "x86_64-linux" "i686-linux" ];
-    maintainers = [ maintainers.blitz ];
-  };
-}