1a38a92c9SIngo WeinholdSubDir HAIKU_TOP src tools fs_shell ; 2a38a92c9SIngo Weinhold 3a38a92c9SIngo WeinholdUseHeaders [ FDirName $(HAIKU_TOP) headers build ] : true ; 4655195feSIngo Weinhold 5b357daa5SAugustin Cavalierif ! $(HOST_PLATFORM_HAIKU_COMPATIBLE) { 6a38a92c9SIngo Weinhold UseHeaders [ FDirName $(HAIKU_TOP) headers build os ] : true ; 7a38a92c9SIngo Weinhold UseHeaders [ FDirName $(HAIKU_TOP) headers build os kernel ] : true ; 8a38a92c9SIngo Weinhold UseHeaders [ FDirName $(HAIKU_TOP) headers build os storage ] : true ; 9a38a92c9SIngo Weinhold UseHeaders [ FDirName $(HAIKU_TOP) headers build os support ] : true ; 10655195feSIngo Weinhold} 11a38a92c9SIngo Weinhold 12*fae0689aSAugustin CavalierUsePrivateHeaders fs_shell shared file_systems ; 13a38a92c9SIngo Weinhold 140bab2e8aSIngo WeinholdDEFINES += FS_SHELL=1 ; 150bab2e8aSIngo Weinhold 160b5d4856SAugustin Cavalier# prevent inclusion of HaikuBuildCompatibility.h and _BSD_SOURCE headers 170b5d4856SAugustin CavalierDEFINES += HAIKU_BUILD_COMPATIBILITY_H __STRICT_ANSI__ ; 186f057874SIngo Weinhold 194d121ec0SIngo Weinhold# platform specific sources/libraries 20f6233d23SIngo Weinholdlocal fsShellCommandSources ; 21f6233d23SIngo Weinholdlocal externalCommandsSources ; 224d121ec0SIngo Weinholdlocal fsShellCommandLibs ; 23b357daa5SAugustin Cavalierif $(HOST_PLATFORM_HAIKU_COMPATIBLE) && $(HOST_PLATFORM) != haiku_host { 2417ebe2b0SIngo Weinhold # BeOS compatible, but not Haiku -- use BeOS ports for communication 25f6233d23SIngo Weinhold fsShellCommandSources = fs_shell_command_beos.cpp ; 26f6233d23SIngo Weinhold externalCommandsSources = external_commands_beos.cpp ; 27f6233d23SIngo Weinhold} else { 2817ebe2b0SIngo Weinhold # Unix or Haiku -- use FIFOs for communication 29f6233d23SIngo Weinhold fsShellCommandSources = fs_shell_command_unix.cpp ; 30f6233d23SIngo Weinhold externalCommandsSources = external_commands_unix.cpp ; 31f6233d23SIngo Weinhold} 32f6233d23SIngo Weinhold 3318128d58SStephan Aßmuslocal kernelEmulationSources = 34a38a92c9SIngo Weinhold atomic.cpp 35a38a92c9SIngo Weinhold block_cache.cpp 3642d3fc04SIngo Weinhold byte_order.cpp 37fd62d01fSIngo Weinhold command_cp.cpp 388c8f8c84SIngo Weinhold disk_device_manager.cpp 39eedc1553SIngo Weinhold driver_settings.cpp 40a38a92c9SIngo Weinhold errno.cpp 41a38a92c9SIngo Weinhold fcntl.cpp 42a38a92c9SIngo Weinhold fd.cpp 43a38a92c9SIngo Weinhold file_cache.cpp 443d268edaSAxel Dörfler file_map.cpp 45a38a92c9SIngo Weinhold kernel_export.cpp 46a38a92c9SIngo Weinhold KPath.cpp 47a38a92c9SIngo Weinhold hash.cpp 48a38a92c9SIngo Weinhold list.cpp 49a38a92c9SIngo Weinhold lock.cpp 5090c08768SIngo Weinhold module.cpp 51a38a92c9SIngo Weinhold node_monitor.cpp 523e617040SIngo Weinhold partition_support.cpp 534f7504e3SIngo Weinhold path_util.cpp 5490c08768SIngo Weinhold rootfs.cpp 55a38a92c9SIngo Weinhold sem.cpp 56a38a92c9SIngo Weinhold stat.cpp 57a38a92c9SIngo Weinhold stat_util.cpp 58a38a92c9SIngo Weinhold stdio.cpp 59a38a92c9SIngo Weinhold string.cpp 60a38a92c9SIngo Weinhold thread.cpp 61a38a92c9SIngo Weinhold time.cpp 62a38a92c9SIngo Weinhold uio.cpp 63a38a92c9SIngo Weinhold unistd.cpp 64a38a92c9SIngo Weinhold vfs.cpp 6518128d58SStephan Aßmus; 66a38a92c9SIngo Weinhold 67cf844822SIngo WeinholdBuildPlatformMergeObject <build>fs_shell_kernel.o : $(kernelEmulationSources) ; 68cf844822SIngo Weinhold 6918128d58SStephan AßmusBuildPlatformStaticLibrary <build>fuse_module.a : 7018128d58SStephan Aßmus $(externalCommandsSources) 7118128d58SStephan Aßmus 7218128d58SStephan Aßmus fuse.cpp 73cf844822SIngo Weinhold : <build>fs_shell_kernel.o 7418128d58SStephan Aßmus; 7518128d58SStephan Aßmus 7618128d58SStephan AßmusBuildPlatformStaticLibrary <build>fs_shell.a : 77f6233d23SIngo Weinhold $(externalCommandsSources) 78f6233d23SIngo Weinhold 79a38a92c9SIngo Weinhold fssh.cpp 80360a6446SAxel Dörfler fssh_additional_commands.cpp 81360a6446SAxel Dörfler 82cf844822SIngo Weinhold : <build>fs_shell_kernel.o 83a38a92c9SIngo Weinhold; 84f6233d23SIngo Weinhold 856f057874SIngo WeinholdSEARCH on [ FGristFiles rootfs.cpp ] 866f057874SIngo Weinhold = [ FDirName $(HAIKU_TOP) src system kernel fs ] ; 87846b2f90SAxel DörflerSEARCH on [ FGristFiles file_map.cpp ] 88846b2f90SAxel Dörfler = [ FDirName $(HAIKU_TOP) src system kernel cache ] ; 896f057874SIngo Weinhold 90ca6586d9SIngo WeinholdBuildPlatformMain <build>fs_shell_command 91f6233d23SIngo Weinhold : fs_shell_command.cpp $(fsShellCommandSources) 924d121ec0SIngo Weinhold : $(HOST_LIBSTDC++) $(HOST_LIBSUPC++) $(fsShellCommandLibs) ; 934d121ec0SIngo Weinhold 94