-
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
Merged
+196
−20
Merged
Changes from all commits
Commits
Show all changes
7 commits
Select commit
Hold shift + click to select a range
be11b50
Share: Update submodule
andrewbird 4c58d4c
CI: Add DOS builds
andrewbird 3c97674
Country: Update submodule
andrewbird 6092afc
Build: Country submodule now has production target
andrewbird 92f9a51
CI: Test DOS built kernels for existence and boot
andrewbird 5b87617
CI: No need to rerun the workflow if PR is edited
andrewbird d8ecb40
CI: Use FreeDOS kernel and FreeCOM
andrewbird File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,82 @@ | ||
#!/bin/sh | ||
|
||
set -e | ||
|
||
sudo add-apt-repository -y ppa:tkchia/build-ia16 | ||
sudo add-apt-repository -y ppa:dosemu2/ppa | ||
sudo apt update | ||
|
||
# for cross building | ||
sudo apt install gcc-ia16-elf libi86-ia16-elf nasm upx qemu-system-x86 mtools util-linux bash | ||
|
||
# for building with DOS using an emulator | ||
sudo apt install dosemu2 dos2unix | ||
# Perhaps later we should build using Freecom from published package | ||
|
||
mkdir -p _downloads | ||
cd _downloads | ||
|
||
HERE=$(pwd) | ||
|
||
#IBIBLIO_PATH='http://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/distributions/1.2/repos' | ||
IBIBLIO_PATH='https://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/repositories/1.3' | ||
|
||
BASE=${IBIBLIO_PATH}/base | ||
|
||
# get FreeDOS kernel | ||
[ -f kernel.zip ] || wget --no-verbose ${BASE}/kernel.zip | ||
|
||
# get FreeCOM | ||
[ -f freecom.zip ] || wget --no-verbose ${BASE}/freecom.zip | ||
|
||
DEVEL=${IBIBLIO_PATH}/devel | ||
|
||
# get gnumake for DOS | ||
[ -f djgpp_mk.zip ] || wget --no-verbose ${DEVEL}/djgpp_mk.zip | ||
|
||
# get nasm for DOS | ||
[ -f nasm.zip ] || wget --no-verbose ${DEVEL}/nasm.zip | ||
|
||
# get upx for DOS | ||
[ -f upx.zip ] || wget --no-verbose ${DEVEL}/upx.zip | ||
|
||
# grab ia16-gcc from ibiblio.org | ||
#[ -f i16gcc.zip ] || wget --no-verbose ${DEVEL}/i16gcc.zip | ||
#[ -f i16newli.zip ] || wget --no-verbose ${DEVEL}/i16newli.zip | ||
#[ -f i16butil.zip ] || wget --no-verbose ${DEVEL}/i16butil.zip | ||
#[ -f i16lbi86.zip ] || wget --no-verbose ${DEVEL}/i16lbi86.zip | ||
|
||
# get watcom for DOS | ||
[ -f watcomc.zip ] || wget --no-verbose ${DEVEL}/watcomc.zip | ||
|
||
mkdir -p ${HOME}/.dosemu/drive_c | ||
cd ${HOME}/.dosemu/drive_c && ( | ||
|
||
mkdir -p bin | ||
|
||
# Boot files | ||
unzip -L -q ${HERE}/kernel.zip | ||
cp -p bin/kernl386.sys ./kernel.sys | ||
unzip -L -q ${HERE}/freecom.zip | ||
cp -p bin/command.com ./command.com | ||
cp -p /usr/share/dosemu/dosemu2-cmds-0.3/c/fdconfig.sys . | ||
|
||
# Development files | ||
unzip -L -q ${HERE}/djgpp_mk.zip | ||
cp -p devel/djgpp/bin/make.exe bin/. | ||
unzip -L -q ${HERE}/upx.zip | ||
cp -p devel/upx/upx.exe bin/. | ||
echo PATH to make and upx binaries is 'c:/bin' | ||
|
||
unzip -L -q ${HERE}/nasm.zip | ||
echo PATH to nasm binary is 'c:/devel/nasm' | ||
|
||
# unzip -L -q ${HERE}/i16gcc.zip | ||
# unzip -L -q ${HERE}/i16newli.zip | ||
# unzip -L -q ${HERE}/i16butil.zip | ||
# unzip -L -q ${HERE}/i16lbi86.zip | ||
# echo PATH to ia16 binaries is 'c:/devel/i16gnu/bin' | ||
|
||
unzip -L -q ${HERE}/watcomc.zip | ||
echo PATH to watcom binaries is 'c:/devel/watcomc/binw' | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Submodule share
updated
22 files
+38 −0 | .gitattributes | |
+2 −2 | .github/workflows/ci-build.yml | |
+6 −0 | .gitmodules | |
+0 −16 | Makefile | |
+5 −1 | README.md | |
+26 −3 | build.bat | |
+25 −6 | build.sh | |
+10 −0 | help/share.de | |
+10 −0 | help/share.en | |
+11 −0 | help/share.fr | |
+11 −0 | help/share.tr | |
+1 −0 | kitten | |
+46 −0 | nls/share.de | |
+47 −0 | nls/share.en | |
+47 −0 | nls/share.fr | |
+47 −0 | nls/share.tr | |
+0 −6 | share.hlp | |
+37 −0 | src/Makefile | |
+0 −0 | src/amis.mac | |
+353 −53 | src/gcc_help.asm | |
+231 −133 | src/share.c | |
+1 −0 | tnyprntf |
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
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:kernel/ci_test.sh
Line 19 in edd0732
The three parameters to test.sh are called:
Quoted from
kernel/test/test.sh
Line 74 in edd0732