Files
ueforth/posix/BUILD
2024-01-15 11:37:13 -08:00

41 lines
1.7 KiB
Python

# Copyright 2023 Bradley D. Nelson
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
Importation('$dst/gen/posix_boot.h', '$src/posix/posix_boot.fs', name='boot')
Compile('$dst/posix/ueforth', '$src/posix/main.c',
implicit=['$dst/gen/posix_boot.h'])
Alias('posix', ' '.join([
ForthTest('$dst/tests/posix_all_tests.out',
'$dst/posix/ueforth', '$src/common/all_tests.fs'),
TestCommand('$dst/tests/posix_see_all_test.out',
'$dst/posix/ueforth',
'echo internals see-all bye | $dst/posix/ueforth 2>&1 | '
'cat >$dst/tests/posix_see_all_test.out'),
TestCommand(' '.join(['$dst/tests/posix_save_restore_test.out',
'$dst/tests/posix_save_restore.bin']),
'$dst/posix/ueforth',
'echo ": foosquare dup * ; save $dst/tests/posix_save_restore.bin bye" | '
'$dst/posix/ueforth > $dst/tests/posix_save_restore_test.out && '
'echo "restore $dst/tests/posix_save_restore.bin 4 foosquare 16 <> posix sysexit" | '
'$dst/posix/ueforth >> $dst/tests/posix_save_restore_test.out'),
]))
OneShot('install',
'$dst/posix/ueforth',
'sudo cp $dst/posix/ueforth /usr/bin/ueforth',
pool='console')
Default('posix')