Add FLAGDIR utility and clean DOS utility build files
Add a NetWare-style FLAGDIR implementation for directory attributes and register it in the multi-call DOS utility dispatcher. The new command supports the 386-style directory flags Normal, System, Hidden, DeleteInhibit, Purge and RenameInhibit, and formats output close to the Novell FLAGDIR tool for simple mapped paths. Update the DOS utilities install/build metadata so flagdir.exe is emitted alongside the other public tools. Adjust the Open Watcom CMake build to compile C sources into the build directory instead of leaving object files in the source tree. Move the historical Borland/TASM build files into doc/ to keep the active source directory focused on the modern Watcom/CMake build.
This commit is contained in:
@@ -62,10 +62,39 @@ if(MARS_NWE_BUILD_DOSUTILS)
|
||||
-fo="${CMAKE_CURRENT_BINARY_DIR}/kern.obj"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/kern_wasm.asm"
|
||||
DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/kern_wasm.asm"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
VERBATIM
|
||||
)
|
||||
|
||||
set(DOSUTILS_OBJECTS)
|
||||
foreach(src IN LISTS DOSUTILS_C_SOURCES)
|
||||
get_filename_component(obj_name "${src}" NAME_WE)
|
||||
set(obj "${CMAKE_CURRENT_BINARY_DIR}/${obj_name}.obj")
|
||||
list(APPEND DOSUTILS_OBJECTS "${obj}")
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT "${obj}"
|
||||
COMMAND "${CMAKE_COMMAND}" -E env ${OPENWATCOM_ENV}
|
||||
"${OPENWATCOM_WCL}"
|
||||
-q
|
||||
-zq
|
||||
-bt=dos
|
||||
-ml
|
||||
-0
|
||||
-c
|
||||
-fo="${obj}"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${src}"
|
||||
DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/${src}"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/net.h"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/kern.h"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/c32ncp.h"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/nwcrypt.h"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
VERBATIM
|
||||
)
|
||||
endforeach()
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/net.exe"
|
||||
COMMAND "${CMAKE_COMMAND}" -E env ${OPENWATCOM_ENV}
|
||||
@@ -77,15 +106,12 @@ if(MARS_NWE_BUILD_DOSUTILS)
|
||||
-0
|
||||
-k32768
|
||||
-fe="${CMAKE_CURRENT_BINARY_DIR}/net.exe"
|
||||
${DOSUTILS_C_SOURCES}
|
||||
${DOSUTILS_OBJECTS}
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/kern.obj"
|
||||
DEPENDS
|
||||
${DOSUTILS_C_SOURCES}
|
||||
${DOSUTILS_OBJECTS}
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/kern.obj"
|
||||
net.h
|
||||
kern.h
|
||||
nwcrypt.h
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
||||
VERBATIM
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user