Discussion:
about "obscure" watcom targets
(too old to reply)
Jens Staal
2014-10-08 03:39:49 UTC
Permalink
Hi again

As I said in my previous message, I am trying to package libraries to use
Open Watcom as a multi-target cross compiler on Arch linux (the nice thing
about Arch AUR is that anyone can package stuff). Naturally I want to target
as many targets as possible ;)

I have installed all targets that I knew of from the v2 binary distributuion
from Sourceforge:
linux, Win32/nt, Win16, Dos-16bit, Dos-32bit, OS/2-16, OS/2-32, Netware
... in addition there are some libraries specific for rdos installed.

For Netware: I see some netware-specific libraries in lib386/netware, but no
netware-specific headers. Is this how it should be?
Googling on Watcom and Netware does not give much info.

QNX : As far as I have understood it, QNX support was depreceated because
the libc could not be legally redistributed when Watcom got open sourced. I
looked a bit in the watcom sources (under build/wcc and build/wl) and saw
some references to QNX.
Is QNX still an "active" target by the compiler or has it been removed from
there? If it is still "active" - could one actually still use Open Watcom to
cross-compile for QNX using an alternative free libc (like for example
newlib) ported to QNX?
Paul S. Person
2014-10-10 16:42:50 UTC
Permalink
On Wed, 08 Oct 2014 05:39:49 +0200, Jens Staal <***@gmail.com>
wrote:

Since none of those who actually know something about this are
responding, I will do what I can.
Post by Jens Staal
As I said in my previous message, I am trying to package libraries to use
Open Watcom as a multi-target cross compiler on Arch linux (the nice thing
about Arch AUR is that anyone can package stuff). Naturally I want to target
as many targets as possible ;)
I take it this makes sense in Linux, that is, that there is some
reason you cannot simply "package" all of OW and have everything.
Post by Jens Staal
I have installed all targets that I knew of from the v2 binary distributuion
linux, Win32/nt, Win16, Dos-16bit, Dos-32bit, OS/2-16, OS/2-32, Netware
... in addition there are some libraries specific for rdos installed.
For Netware: I see some netware-specific libraries in lib386/netware, but no
netware-specific headers. Is this how it should be?
Googling on Watcom and Netware does not give much info.
QNX : As far as I have understood it, QNX support was depreceated because
the libc could not be legally redistributed when Watcom got open sourced. I
looked a bit in the watcom sources (under build/wcc and build/wl) and saw
some references to QNX.
Is QNX still an "active" target by the compiler or has it been removed from
there? If it is still "active" - could one actually still use Open Watcom to
cross-compile for QNX using an alternative free libc (like for example
newlib) ported to QNX?
Both Netware and QNX are still documented in the help files. I have
never worked with either of them. At least, they do in OW 1.9.

In either case, however, it is quite likely that they may be active in
the sense that the linker, debugger, and perhaps other tools work as
documented, but not in the sense that any development is being done on
them.
--
"Nature must be explained in
her own terms through
the experience of our senses."
Jens Staal
2014-10-16 08:34:53 UTC
Permalink
Post by Paul S. Person
Since none of those who actually know something about this are
responding, I will do what I can.
Post by Jens Staal
As I said in my previous message, I am trying to package libraries to use
Open Watcom as a multi-target cross compiler on Arch linux (the nice thing
about Arch AUR is that anyone can package stuff). Naturally I want to
target as many targets as possible ;)
I take it this makes sense in Linux, that is, that there is some
reason you cannot simply "package" all of OW and have everything.
Well I make a full install of OW 2 in the compiler package. What I am
packaging are 3rd party libraries (like zlib, bzip2, ...) that are commonly
needed for various open source software. I try to start off with the most
important ones, but I have also looked at the list at

http://www.openwatcom.org/index.php/Resources#C_source

for inspiration for what to package. In Arch AUR, there are similarly lots
of libraries built for MinGW to ease the life for people doing Win32 cross
compiling. Another nice thing with making packages is that they can be
installed and uninstalled cleanly so libraries and headers can be installed
in the $WATCOM directories without risk (so less need to define custom paths
etc).

What I try to do is to support as many OW targets as possible by cross-
compiling to them all. I see this as a positive differentiator compared to
the binutils-based compilers - a single multi-target compiler. Some things
do not seem to build as 16-bit so there are limitations. For another
possible limitation, see below.
Post by Paul S. Person
Post by Jens Staal
I have installed all targets that I knew of from the v2 binary
linux, Win32/nt, Win16, Dos-16bit, Dos-32bit, OS/2-16, OS/2-32, Netware
... in addition there are some libraries specific for rdos installed.
For Netware: I see some netware-specific libraries in lib386/netware, but
no netware-specific headers. Is this how it should be?
Googling on Watcom and Netware does not give much info.
QNX : As far as I have understood it, QNX support was depreceated because
the libc could not be legally redistributed when Watcom got open sourced.
I looked a bit in the watcom sources (under build/wcc and build/wl) and
saw some references to QNX.
Is QNX still an "active" target by the compiler or has it been removed
from there? If it is still "active" - could one actually still use Open
Watcom to cross-compile for QNX using an alternative free libc (like for
example newlib) ported to QNX?
Both Netware and QNX are still documented in the help files. I have
never worked with either of them. At least, they do in OW 1.9.
In either case, however, it is quite likely that they may be active in
the sense that the linker, debugger, and perhaps other tools work as
documented, but not in the sense that any development is being done on
them.
While compiling libzip, the netware compile complained about not finding
import files in $WATCOM/novi to make an nlm. Apparently there is also a
$WATCOM/novh for the SDK-specific headers.
Some googling found information on the proprietary Novel Netware SDK and
open watcom

http://www.novell.com/coolsolutions/trench/411.html

in the dowloads section, the SDK is only available "for windows", but I have
browsed around in the tar.gz archive and there are various things that I
suppose are netware libraries that simply could be copied. Does anyone have
experience with this SDK and more recent versions of open watcom? What are
the critical things to extract/include for Watcom? I suppose the "import"
stuff, the "nlm" stuff and the headers should be sufficient? I have no idea
why I would need the .exe s.

http://www.novell.com/developer/ndk/netware_developer_suite_for_c.html

Alternatively - should I try to suppress the generation of NLMs and use
vanilla watcom stuff in lib386/netware? (the configure was run with --
disable-shared but apparently this was not enough in the case of Netware)

In a similar vein - is there some other hobyist-friendly but proprietary
clib for QNX that works with Watcom? Otherwise I think I should start
looking at the syscalls and the process of porting PDClib which seems like a
good fit (and also is explicitly compilable with Watcom).
The only flaw in that equation is the ammount of spare time available ;)
Loading...