Make DragonFlyBSD a first class BSD-like OS (#5548)

This commit is contained in:
Eugene Kabanov 2017-03-16 15:47:53 +02:00 • committed by Andreas Rumpf
commit 9c99973ff8
4 changed files with 15 additions and 6 deletions

View file

@ -41,9 +41,9 @@ proc isDefined*(symbol: string): bool =
result = targetOS in {osLinux, osMorphos, osSkyos, osIrix, osPalmos, result = targetOS in {osLinux, osMorphos, osSkyos, osIrix, osPalmos,
osQnx, osAtari, osAix, osQnx, osAtari, osAix,
osHaiku, osVxWorks, osSolaris, osNetbsd, osHaiku, osVxWorks, osSolaris, osNetbsd,
osFreebsd, osOpenbsd, osMacosx} osFreebsd, osOpenbsd, osDragonfly, osMacosx}
of "bsd": of "bsd":
result = targetOS in {osNetbsd, osFreebsd, osOpenbsd} result = targetOS in {osNetbsd, osFreebsd, osOpenbsd, osDragonfly}
of "emulatedthreadvars": of "emulatedthreadvars":
result = platform.OS[targetOS].props.contains(ospLacksThreadVars) result = platform.OS[targetOS].props.contains(ospLacksThreadVars)
of "msdos": result = targetOS == osDos of "msdos": result = targetOS == osDos
@ -57,7 +57,8 @@ proc isDefined*(symbol: string): bool =
of "cpu32": result = CPU[targetCPU].bit == 32 of "cpu32": result = CPU[targetCPU].bit == 32
of "cpu64": result = CPU[targetCPU].bit == 64 of "cpu64": result = CPU[targetCPU].bit == 64
of "nimrawsetjmp": of "nimrawsetjmp":
result = targetOS in {osSolaris, osNetbsd, osFreebsd, osOpenbsd, osMacosx} result = targetOS in {osSolaris, osNetbsd, osFreebsd, osOpenbsd,
osDragonfly, osMacosx}
else: discard else: discard
proc isDefined*(symbol: PIdent): bool = isDefined(symbol.s) proc isDefined*(symbol: PIdent): bool = isDefined(symbol.s)

View file

@ -12,6 +12,7 @@ Platforms: """
freebsd: i386;amd64 freebsd: i386;amd64
netbsd: i386;amd64 netbsd: i386;amd64
openbsd: i386;amd64 openbsd: i386;amd64
dragonfly: i386;amd64
haiku: i386;amd64 haiku: i386;amd64
""" """

View file

@ -20,8 +20,8 @@ type
TSystemOS* = enum # Also add OS in initialization section and alias TSystemOS* = enum # Also add OS in initialization section and alias
# 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, osDragonfly, osAix, osPalmos, osQnx,
osAtari, osNetware, osMacos, osMacosx, osHaiku, osVxworks, osAmiga, osAtari, osNetware, osMacos, osMacosx, osHaiku, osVxworks,
osJS, osNimrodVM, osStandalone osJS, osNimrodVM, osStandalone
type type
@ -98,6 +98,13 @@ const
scriptExt: ".sh", curDir: ".", scriptExt: ".sh", curDir: ".",
exeExt: "", extSep: ".", exeExt: "", extSep: ".",
props: {ospNeedsPIC, ospPosix}), props: {ospNeedsPIC, ospPosix}),
(name: "DragonFly", parDir: "..",
dllFrmt: "lib$1.so", altDirSep: "/",
objExt: ".o", newLine: "\x0A",
pathSep: ":", dirSep: "/",
scriptExt: ".sh", curDir: ".",
exeExt: "", extSep: ".",
props: {ospNeedsPIC, ospPosix}),
(name: "AIX", parDir: "..", dllFrmt: "lib$1.so", altDirSep: "/", (name: "AIX", parDir: "..", dllFrmt: "lib$1.so", altDirSep: "/",
objExt: ".o", newLine: "\x0A", pathSep: ":", dirSep: "/", objExt: ".o", newLine: "\x0A", pathSep: ":", dirSep: "/",
scriptExt: ".sh", curDir: ".", exeExt: "", extSep: ".", scriptExt: ".sh", curDir: ".", exeExt: "", extSep: ".",

View file

@ -56,7 +56,7 @@ case $uos in
LINK_FLAGS="$LINK_FLAGS -ldl -lm -lrt" LINK_FLAGS="$LINK_FLAGS -ldl -lm -lrt"
;; ;;
*dragonfly* ) *dragonfly* )
myos="freebsd" myos="dragonfly"
LINK_FLAGS="$LINK_FLAGS -lm" LINK_FLAGS="$LINK_FLAGS -lm"
;; ;;
*freebsd* ) *freebsd* )