Compare commits
2 Commits
26ab661dbf
...
4e25a7e3b9
Author | SHA1 | Date |
---|---|---|
|
4e25a7e3b9 | |
|
7c75b832b2 |
|
@ -3,3 +3,4 @@ __pycache__/
|
||||||
compile_commands.json
|
compile_commands.json
|
||||||
|
|
||||||
sysroot/bin
|
sysroot/bin
|
||||||
|
sysroot/usr/bin
|
||||||
|
|
|
@ -15,4 +15,5 @@ set(BASE_LINK_FLAGS "-nostdlib")
|
||||||
add_subdirectory(zion)
|
add_subdirectory(zion)
|
||||||
add_subdirectory(lib)
|
add_subdirectory(lib)
|
||||||
add_subdirectory(yunq)
|
add_subdirectory(yunq)
|
||||||
|
add_subdirectory(usr)
|
||||||
add_subdirectory(sys)
|
add_subdirectory(sys)
|
||||||
|
|
|
@ -3,6 +3,8 @@
|
||||||
#include <glacier/string/str_format.h>
|
#include <glacier/string/str_format.h>
|
||||||
#include <glacier/string/str_split.h>
|
#include <glacier/string/str_split.h>
|
||||||
#include <mammoth/file/file.h>
|
#include <mammoth/file/file.h>
|
||||||
|
#include <mammoth/proc/process.h>
|
||||||
|
#include <zglobal.h>
|
||||||
|
|
||||||
void Terminal::HandleCharacter(char c) {
|
void Terminal::HandleCharacter(char c) {
|
||||||
console_.WriteChar(c);
|
console_.WriteChar(c);
|
||||||
|
@ -58,6 +60,16 @@ void Terminal::ExecuteCommand(const glcr::String& command) {
|
||||||
console_.WriteChar('\n');
|
console_.WriteChar('\n');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} else if (cmd == "exec") {
|
||||||
|
if (tokens.size() != 2) {
|
||||||
|
console_.WriteString("Provide the name of an executable.\n>");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
auto file = mmth::File::Open(tokens[1]);
|
||||||
|
|
||||||
|
// TODO: Wait until the process exits.
|
||||||
|
mmth::SpawnProcessFromElfRegion((uint64_t)file.raw_ptr(), gInitEndpointCap);
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
console_.WriteString("Unknown command: ");
|
console_.WriteString("Unknown command: ");
|
||||||
console_.WriteString(command);
|
console_.WriteString(command);
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
|
||||||
|
add_subdirectory(testbed)
|
|
@ -0,0 +1,21 @@
|
||||||
|
|
||||||
|
add_executable(testbed
|
||||||
|
test.cpp
|
||||||
|
)
|
||||||
|
|
||||||
|
target_include_directories(testbed
|
||||||
|
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})
|
||||||
|
|
||||||
|
target_link_libraries(testbed
|
||||||
|
mammoth
|
||||||
|
)
|
||||||
|
|
||||||
|
set(CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS "")
|
||||||
|
|
||||||
|
set_target_properties(testbed PROPERTIES
|
||||||
|
COMPILE_FLAGS "${CMAKE_CXX_FLAGS} ${BASE_COMPILE_FLAGS}"
|
||||||
|
LINK_FLAGS "${CMAKE_EXE_LINK_FLAGS} ${BASE_LINK_FLAGS}"
|
||||||
|
)
|
||||||
|
|
||||||
|
install(TARGETS testbed DESTINATION usr/bin)
|
||||||
|
|
|
@ -0,0 +1,7 @@
|
||||||
|
#include <mammoth/util/debug.h>
|
||||||
|
|
||||||
|
uint64_t main(uint64_t init_port_cap) {
|
||||||
|
dbgln("testbed");
|
||||||
|
|
||||||
|
return glcr::OK;
|
||||||
|
}
|
Loading…
Reference in New Issue