Skip to content

Commit 38faa38

Browse files
committed
Partial /bin/sh building
1 parent de3f6fe commit 38faa38

3 files changed

Lines changed: 16 additions & 9 deletions

File tree

BSD/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,4 +23,4 @@ add_custom_target(BSD)
2323
add_dependencies(BSD Darwin)
2424

2525
add_subdirectory(lib)
26-
#add_subdirectory(bin)
26+
add_subdirectory(bin)

BSD/bin/sh/CMakeLists.txt

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
cmake_minimum_required(VERSION 4.0)
22

3-
add_executable(sh
3+
add_executable(sh)
4+
set(sh_src
5+
bltin/echo.c
46
alias.c
57
arith_yacc.c
68
arith_yylex.c
7-
builtins.c
89
cd.c
910
error.c
1011
eval.c
@@ -17,8 +18,6 @@ add_executable(sh
1718
main.c
1819
memalloc.c
1920
miscbltin.c
20-
mknodes.c
21-
mksyntax.c
2221
mystring.c
2322
options.c
2423
output.c
@@ -28,9 +27,12 @@ add_executable(sh
2827
trap.c
2928
var.c)
3029
target_sources(sh PRIVATE
30+
${sh_src}
31+
${CMAKE_CURRENT_BINARY_DIR}/builtins.c
3132
${CMAKE_CURRENT_BINARY_DIR}/nodes.c
3233
${CMAKE_CURRENT_BINARY_DIR}/syntax.c)
3334
target_sources(sh PRIVATE
35+
${CMAKE_CURRENT_BINARY_DIR}/builtins.h
3436
${CMAKE_CURRENT_BINARY_DIR}/nodes.h
3537
${CMAKE_CURRENT_BINARY_DIR}/syntax.h
3638
${CMAKE_CURRENT_BINARY_DIR}/token.h)
@@ -46,6 +48,10 @@ target_include_directories(sh PRIVATE
4648
${CMAKE_CURRENT_BINARY_DIR}
4749
../../lib/libedit/src)
4850

51+
add_custom_command(OUTPUT builtins.c builtins.h
52+
COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/mkbuiltins ${CMAKE_CURRENT_SOURCE_DIR}
53+
DEPENDS ${sh_src})
54+
4955
add_custom_command(OUTPUT syntax.c syntax.h
5056
COMMAND ${CMAKE_CURRENT_BINARY_DIR}/mksyntax
5157
DEPENDS mksyntax)
@@ -74,7 +80,8 @@ add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/token.h
7480
COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/mktokens)
7581

7682
target_link_options(sh PRIVATE
77-
-mmacos-version-min=${MACOS_VERSION_MIN})
83+
-mmacos-version-min=${MACOS_VERSION_MIN}
84+
-L${ROOT_BINARY_DIR}/BSD/lib/ncurses -lncurses)
7885

7986
target_link_libraries(sh PRIVATE
8087
${ROOT_BINARY_DIR}/BSD/lib/libedit/libedit.a)

BSD/bin/sh/builtins.def

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -69,16 +69,16 @@ hashcmd hash
6969
histcmd fc
7070
jobidcmd -n jobid
7171
jobscmd -n jobs
72-
killcmd -n kill
72+
#killcmd -n kill
7373
localcmd local
74-
printfcmd -n printf
74+
#printfcmd -n printf
7575
pwdcmd -n pwd
7676
readcmd read
7777
returncmd -s return
7878
setcmd -s set
7979
setvarcmd setvar
8080
shiftcmd -s shift
81-
testcmd -n test [
81+
#testcmd -n test [
8282
timescmd -n -s times
8383
trapcmd -s trap
8484
truecmd -n -s : true

0 commit comments

Comments
 (0)