Commit c5f74966 authored by Ian Lynagh's avatar Ian Lynagh
Browse files

Change remaining uses of cTargetOS to platformOS

And remove cTargetOS/cTargetPlatform.
parent 00f44fdc
......@@ -49,8 +49,6 @@ compiler/stage%/build/Config.hs : mk/config.mk mk/project.mk | $$(dir $$@)/.
@echo '{-# LANGUAGE CPP #-}' >> $@
@echo 'module Config where' >> $@
@echo >> $@
@echo 'import Distribution.System' >> $@
@echo >> $@
@echo '#include "ghc_boot_platform.h"' >> $@
@echo >> $@
@echo 'cBuildPlatformString :: String' >> $@
......@@ -60,94 +58,6 @@ compiler/stage%/build/Config.hs : mk/config.mk mk/project.mk | $$(dir $$@)/.
@echo 'cTargetPlatformString :: String' >> $@
@echo 'cTargetPlatformString = TargetPlatform_NAME' >> $@
@echo >> $@
# Sync this with checkArch in configure.ac
@echo 'cTargetArch :: Arch' >> $@
@echo '#if i386_TARGET_ARCH' >> $@
@echo 'cTargetArch = I386' >> $@
@echo '#elif x86_64_TARGET_ARCH' >> $@
@echo 'cTargetArch = X86_64' >> $@
@echo '#elif powerpc_TARGET_ARCH' >> $@
@echo 'cTargetArch = PPC' >> $@
@echo '#elif powerpc64_TARGET_ARCH' >> $@
@echo 'cTargetArch = PPC64' >> $@
@echo '#elif sparc_TARGET_ARCH || sparc64_TARGET_ARCH' >> $@
@echo 'cTargetArch = Sparc' >> $@
@echo '#elif arm_TARGET_ARCH' >> $@
@echo 'cTargetArch = Arm' >> $@
@echo '#elif mips_TARGET_ARCH || mipseb_TARGET_ARCH || mipsel_TARGET_ARCH' >> $@
@echo 'cTargetArch = Mips' >> $@
@echo '#elif 0' >> $@
@echo 'cTargetArch = SH' >> $@
@echo '#elif ia64_TARGET_ARCH' >> $@
@echo 'cTargetArch = IA64' >> $@
@echo '#elif s390_TARGET_ARCH' >> $@
@echo 'cTargetArch = S390' >> $@
@echo '#elif alpha_TARGET_ARCH' >> $@
@echo 'cTargetArch = Alpha' >> $@
@echo '#elif hppa_TARGET_ARCH || hppa1_1_TARGET_ARCH' >> $@
@echo 'cTargetArch = Hppa' >> $@
@echo '#elif rs6000_TARGET_ARCH' >> $@
@echo 'cTargetArch = Rs6000' >> $@
@echo '#elif m68k_TARGET_ARCH' >> $@
@echo 'cTargetArch = M68k' >> $@
@echo '#elif vax_TARGET_ARCH' >> $@
@echo 'cTargetArch = Vax' >> $@
@echo '#else' >> $@
@echo '#error Unknown target arch' >> $@
@echo '#endif' >> $@
@echo >> $@
# Sync this with checkOS in configure.ac
@echo 'cTargetOS :: OS' >> $@
@echo '#if linux_TARGET_OS' >> $@
@echo 'cTargetOS = Linux' >> $@
@echo '#elif freebsd_TARGET_OS' >> $@
@echo 'cTargetOS = FreeBSD' >> $@
@echo '#elif netbsd_TARGET_OS' >> $@
@echo 'cTargetOS = NetBSD' >> $@
@echo '#elif openbsd_TARGET_OS' >> $@
@echo 'cTargetOS = OpenBSD' >> $@
@echo '#elif dragonfly_TARGET_OS' >> $@
@echo 'cTargetOS = OtherOS "dragonfly"' >> $@
@echo '#elif osf1_TARGET_OS' >> $@
@echo 'cTargetOS = OtherOS "osf"' >> $@
@echo '#elif osf3_TARGET_OS' >> $@
@echo 'cTargetOS = OtherOS "osf"' >> $@
@echo '#elif hpux_TARGET_OS' >> $@
@echo 'cTargetOS = HPUX' >> $@
@echo '#elif linuxaout_TARGET_OS' >> $@
@echo 'cTargetOS = Linux' >> $@
@echo '#elif kfreebsdgnu_TARGET_OS' >> $@
@echo 'cTargetOS = OtherOS "kfreebsdgnu"' >> $@
@echo '#elif freebsd2_TARGET_OS' >> $@
@echo 'cTargetOS = FreeBSD' >> $@
@echo '#elif solaris2_TARGET_OS' >> $@
@echo 'cTargetOS = Solaris' >> $@
@echo '#elif cygwin32_TARGET_OS' >> $@
@echo 'cTargetOS = Windows' >> $@
@echo '#elif mingw32_TARGET_OS' >> $@
@echo 'cTargetOS = Windows' >> $@
@echo '#elif darwin_TARGET_OS' >> $@
@echo 'cTargetOS = OSX' >> $@
@echo '#elif gnu_TARGET_OS' >> $@
@echo 'cTargetOS = OtherOS "gnu"' >> $@
@echo '#elif nextstep2_TARGET_OS' >> $@
@echo 'cTargetOS = OtherOS "nextstep"' >> $@
@echo '#elif nextstep3_TARGET_OS' >> $@
@echo 'cTargetOS = OtherOS "nextstep"' >> $@
@echo '#elif sunos4_TARGET_OS' >> $@
@echo 'cTargetOS = Solaris' >> $@
@echo '#elif ultrix_TARGET_OS' >> $@
@echo 'cTargetOS = OtherOS "ultrix"' >> $@
@echo '#elif irix_TARGET_OS' >> $@
@echo 'cTargetOS = IRIX' >> $@
@echo '#elif aix_TARGET_OS' >> $@
@echo 'cTargetOS = AIX' >> $@
@echo '#elif haiku_TARGET_OS' >> $@
@echo 'cTargetOS = OtherOS "haiku"' >> $@
@echo '#else' >> $@
@echo '#error Unknown target OS' >> $@
@echo '#endif' >> $@
@echo >> $@
@echo 'cProjectName :: String' >> $@
@echo 'cProjectName = "$(ProjectName)"' >> $@
@echo 'cProjectVersion :: String' >> $@
......
......@@ -55,7 +55,6 @@ import Platform
import Exception
import Data.IORef ( readIORef )
import Distribution.System
import System.Directory
import System.FilePath
import System.IO
......@@ -1092,7 +1091,7 @@ runPhase cc_phase input_fn dflags
-- These symbols are imported into the stub.c file via RtsAPI.h, and the
-- way we do the import depends on whether we're currently compiling
-- the base package or not.
++ (if cTargetOS == Windows &&
++ (if platformOS (targetPlatform dflags) == OSMinGW32 &&
thisPackage dflags == basePackageId
then [ "-DCOMPILING_BASE_PACKAGE" ]
else [])
......@@ -1329,7 +1328,7 @@ runPhase LlvmLlc input_fn dflags
return (LlvmMangle, output_fn)
where
-- Bug in LLVM at O3 on OSX.
llvmOpts = if cTargetOS == OSX
llvmOpts = if platformOS (targetPlatform dflags) == OSDarwin
then ["-O1", "-O2", "-O2"]
else ["-O1", "-O2", "-O3"]
......@@ -1646,7 +1645,7 @@ linkBinary dflags o_files dep_packages = do
-- Permit the linker to auto link _symbol to _imp_symbol.
-- This lets us link against DLLs without needing an "import library".
++ (if cTargetOS == Windows
++ (if platformOS (targetPlatform dflags) == OSMinGW32
then ["-Wl,--enable-auto-import"]
else [])
......@@ -1680,13 +1679,13 @@ linkBinary dflags o_files dep_packages = do
exeFileName :: DynFlags -> FilePath
exeFileName dflags
| Just s <- outputFile dflags =
if cTargetOS == Windows
if platformOS (targetPlatform dflags) == OSMinGW32
then if null (takeExtension s)
then s <.> "exe"
else s
else s
| otherwise =
if cTargetOS == Windows
if platformOS (targetPlatform dflags) == OSMinGW32
then "main.exe"
else "a.out"
......
......@@ -242,7 +242,6 @@ case $host in
;;
esac
# Sync this with cTargetArch in compiler/ghc.mk
checkArch() {
case $1 in
alpha|arm|hppa|hppa1_1|i386|ia64|m68k|mips|mipseb|mipsel|powerpc|powerpc64|rs6000|s390|sparc|sparc64|vax|x86_64)
......@@ -265,7 +264,6 @@ checkVendor() {
esac
}
# Sync this with cTargetOS in compiler/ghc.mk
checkOS() {
case $1 in
linux|freebsd|netbsd|openbsd|dragonfly|osf1|osf3|hpux|linuxaout|kfreebsdgnu|freebsd2|solaris2|cygwin32|mingw32|darwin|gnu|nextstep2|nextstep3|sunos4|ultrix|irix|aix|haiku)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment