added some support for Haiku
This commit is contained in:
parent
d962b75c18
commit
48e95fe9f9
4 changed files with 33 additions and 20 deletions
|
|
@ -68,7 +68,8 @@ proc InitDefines*() =
|
||||||
of osWindows:
|
of osWindows:
|
||||||
DefineSymbol("mswindows")
|
DefineSymbol("mswindows")
|
||||||
DefineSymbol("win32")
|
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'
|
# these are all 'unix-like'
|
||||||
DefineSymbol("unix")
|
DefineSymbol("unix")
|
||||||
DefineSymbol("posix")
|
DefineSymbol("posix")
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,7 @@ type
|
||||||
# conditionals to condsyms (end of module).
|
# conditionals to condsyms (end of module).
|
||||||
osNone, osDos, osWindows, osOs2, osLinux, osMorphos, osSkyos, osSolaris,
|
osNone, osDos, osWindows, osOs2, osLinux, osMorphos, osSkyos, osSolaris,
|
||||||
osIrix, osNetbsd, osFreebsd, osOpenbsd, osAix, osPalmos, osQnx, osAmiga,
|
osIrix, osNetbsd, osFreebsd, osOpenbsd, osAix, osPalmos, osQnx, osAmiga,
|
||||||
osAtari, osNetware, osMacos, osMacosx, osEcmaScript, osNimrodVM,
|
osAtari, osNetware, osMacos, osMacosx, osHaiku, osEcmaScript, osNimrodVM,
|
||||||
osStandalone
|
osStandalone
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
@ -132,6 +132,10 @@ const
|
||||||
objExt: ".o", newLine: "\x0A", pathSep: ":", dirSep: "/",
|
objExt: ".o", newLine: "\x0A", pathSep: ":", dirSep: "/",
|
||||||
scriptExt: ".sh", curDir: ".", exeExt: "", extSep: ".",
|
scriptExt: ".sh", curDir: ".", exeExt: "", extSep: ".",
|
||||||
props: {ospNeedsPIC, ospPosix, ospLacksThreadVars}),
|
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: "..",
|
(name: "EcmaScript", parDir: "..",
|
||||||
dllFrmt: "lib$1.so", altDirSep: "/",
|
dllFrmt: "lib$1.so", altDirSep: "/",
|
||||||
objExt: ".o", newLine: "\x0A",
|
objExt: ".o", newLine: "\x0A",
|
||||||
|
|
|
||||||
|
|
@ -8,23 +8,23 @@ set -e
|
||||||
|
|
||||||
while :
|
while :
|
||||||
do
|
do
|
||||||
case "$1" in
|
case "$1" in
|
||||||
--extraBuildArgs)
|
--extraBuildArgs)
|
||||||
extraBuildArgs=" $2"
|
extraBuildArgs=" $2"
|
||||||
shift 2
|
shift 2
|
||||||
;;
|
;;
|
||||||
--) # End of all options
|
--) # End of all options
|
||||||
shift
|
shift
|
||||||
break;
|
break;
|
||||||
;;
|
;;
|
||||||
-*)
|
-*)
|
||||||
echo "Error: Unknown option: $1" >&2
|
echo "Error: Unknown option: $1" >&2
|
||||||
exit 1
|
exit 1
|
||||||
;;
|
;;
|
||||||
*) # No more options
|
*) # No more options
|
||||||
break
|
break
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
|
||||||
CC="gcc"
|
CC="gcc"
|
||||||
|
|
@ -71,6 +71,10 @@ case $uos in
|
||||||
myos="solaris"
|
myos="solaris"
|
||||||
LINK_FLAGS="$LINK_FLAGS -ldl -lm"
|
LINK_FLAGS="$LINK_FLAGS -ldl -lm"
|
||||||
;;
|
;;
|
||||||
|
*haiku* )
|
||||||
|
myos="haiku"
|
||||||
|
# Haiku does not need -ldl nor -lm
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
echo "Error: unknown operating system: $uos"
|
echo "Error: unknown operating system: $uos"
|
||||||
exit 1
|
exit 1
|
||||||
|
|
@ -78,7 +82,7 @@ case $uos in
|
||||||
esac
|
esac
|
||||||
|
|
||||||
case $ucpu in
|
case $ucpu in
|
||||||
*i386* | *i486* | *i586* | *i686* )
|
*i386* | *i486* | *i586* | *i686* | *bepc* )
|
||||||
mycpu="i386" ;;
|
mycpu="i386" ;;
|
||||||
*amd*64* | *x86-64* | *x86_64* )
|
*amd*64* | *x86-64* | *x86_64* )
|
||||||
mycpu="amd64" ;;
|
mycpu="amd64" ;;
|
||||||
|
|
|
||||||
|
|
@ -99,6 +99,10 @@ Changes affecting backwards compatibility
|
||||||
to ``int8``.
|
to ``int8``.
|
||||||
- ``bind`` expressions in templates are not properly supported anymore. Use
|
- ``bind`` expressions in templates are not properly supported anymore. Use
|
||||||
the declarative ``bind`` statement instead.
|
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
|
Compiler Additions
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue