added some support for Haiku

This commit is contained in:
Araq
2012-07-29 00:23:37 +02:00
parent d962b75c18
commit 48e95fe9f9
4 changed files with 33 additions and 20 deletions

View File

@@ -68,7 +68,8 @@ proc InitDefines*() =
of osWindows:
DefineSymbol("mswindows")
DefineSymbol("win32")
of osLinux, osMorphOS, osSkyOS, osIrix, osPalmOS, osQNX, osAtari, osAix:
of osLinux, osMorphOS, osSkyOS, osIrix, osPalmOS, osQNX, osAtari, osAix,
osHaiku:
# these are all 'unix-like'
DefineSymbol("unix")
DefineSymbol("posix")

View File

@@ -21,7 +21,7 @@ type
# conditionals to condsyms (end of module).
osNone, osDos, osWindows, osOs2, osLinux, osMorphos, osSkyos, osSolaris,
osIrix, osNetbsd, osFreebsd, osOpenbsd, osAix, osPalmos, osQnx, osAmiga,
osAtari, osNetware, osMacos, osMacosx, osEcmaScript, osNimrodVM,
osAtari, osNetware, osMacos, osMacosx, osHaiku, osEcmaScript, osNimrodVM,
osStandalone
type
@@ -132,6 +132,10 @@ const
objExt: ".o", newLine: "\x0A", pathSep: ":", dirSep: "/",
scriptExt: ".sh", curDir: ".", exeExt: "", extSep: ".",
props: {ospNeedsPIC, ospPosix, ospLacksThreadVars}),
(name: "Haiku", parDir: "..", dllFrmt: "lib$1.so", altDirSep: ":",
objExt: ".o", newLine: "\x0A", pathSep: ":", dirSep: "/",
scriptExt: ".sh", curDir: ".", exeExt: "", extSep: ".",
props: {ospNeedsPIC, ospPosix, ospLacksThreadVars}),
(name: "EcmaScript", parDir: "..",
dllFrmt: "lib$1.so", altDirSep: "/",
objExt: ".o", newLine: "\x0A",

View File

@@ -8,23 +8,23 @@ set -e
while :
do
case "$1" in
--extraBuildArgs)
extraBuildArgs=" $2"
shift 2
;;
--) # End of all options
shift
break;
;;
-*)
echo "Error: Unknown option: $1" >&2
exit 1
;;
*) # No more options
break
;;
esac
case "$1" in
--extraBuildArgs)
extraBuildArgs=" $2"
shift 2
;;
--) # End of all options
shift
break;
;;
-*)
echo "Error: Unknown option: $1" >&2
exit 1
;;
*) # No more options
break
;;
esac
done
CC="gcc"
@@ -71,6 +71,10 @@ case $uos in
myos="solaris"
LINK_FLAGS="$LINK_FLAGS -ldl -lm"
;;
*haiku* )
myos="haiku"
# Haiku does not need -ldl nor -lm
;;
*)
echo "Error: unknown operating system: $uos"
exit 1
@@ -78,7 +82,7 @@ case $uos in
esac
case $ucpu in
*i386* | *i486* | *i586* | *i686* )
*i386* | *i486* | *i586* | *i686* | *bepc* )
mycpu="i386" ;;
*amd*64* | *x86-64* | *x86_64* )
mycpu="amd64" ;;

View File

@@ -99,6 +99,10 @@ Changes affecting backwards compatibility
to ``int8``.
- ``bind`` expressions in templates are not properly supported anymore. Use
the declarative ``bind`` statement instead.
- The default calling convention for a procedural **type** is now ``closure``,
for procs it remains ``nimcall`` (which is compatible to ``closure``).
Activate the warning ``ImplicitClosure`` to make the compiler list the
occurances of proc types which are affected.
Compiler Additions