-
Notifications
You must be signed in to change notification settings - Fork 143
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CI add Watcom and optionally Turbo C 2.01 builds #137
Conversation
exit 1 | ||
fi | ||
|
||
echo Kernels have all been built | ||
find _output -ls | ||
|
||
cd test |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @ecm-pushbx I'd like to add to your boot test here. The DOS built kernels are built for 386, but they don't have to be I just thought I'd add some variety. Is there any special command line required for them? BTW there is no Turbo C version at present, as it fails to build sys
, kernel
and maybe more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there any special command line required for them?
Just call the test script with ./test.sh ../_output/PATH/FILE.sys diskID bootID 'boot ID: '
after chdir to the repo's test/ directory, where PATH and FILE point to your kernel and ID is something unique, ideally with 4 or less letters. (I'd suggest wcd for Watcom DOS and tcd for Turbo C DOS.) It's called like that here:
Line 19 in edd0732
if ! ./test.sh ../_output/gcc/KGC${KVER}.sys diskgc bootgc 'boot gcc: ' |
The three parameters to test.sh are called:
KERNELPATHNAME="$1"
DISKETTE="$2"
BOOT="$3"
testrunname="$4"
Quoted from
Line 74 in edd0732
if [[ -z "$1" || -z "$2" || -z "$3" ]] |
4b4fac2
to
8aefed8
Compare
1/ Watcom 1.9 a) Kernel and other directories building fine b) Share doesn't support Watcom for TSR. 2/ Turbo C 2.01 a) Kernel build needs some functions that are missing. b) Sys not building for the same reason, c) Share building nicely. d) Need to figure out how to get tc201 compiler to Github Actions 3/ IA16-GCC a) not currently supported by build.bat so commented out
When country was converted to a submodule (by me) the production installation target was hacked onto the kernel subdirectory Makefile which wasn't ideal. Introduce a production target into the country Makefile that does the installation. Since we want the submodule to be buildable standalone, we can't include the variable definitions from the upper level, such as $(DIRSEP) and $(CP), so the caller has to pass those in at build time if using the production target. Tested on Linux (GCC + Watcom) and DOS (Watcom)
CI DOS builds are now running on FreeDOS 1.3 kernel and FreeCOM. |
Does anyone have any objections to my merging this? |
Nope. |
Thanks, for the feedback. I've merged it now. |
thank you, sorry been busy couple weeks with other projects |
No worries. |
I added an OpenWatcom(DOS) build to the CI, and also an optional Turbo C 2.01 compile and test. There are a couple of problems with using Turbo C:
I don't know where / how to host the Turbo C compiler as I don't want to make it publicly available. I can't use the official source as I believe it requires sign up to download.
Building the current kernel with Turbo C is broken and has been for a few years. I don't want to add a broken build into CI as it will obscure any new breakage.
So for now the CI checks to see if Turbo C is installed at
C:\TC201
and will try to build and test with it if found, otherwise it will be silently skipped.