⛏️ index : haiku.git

SubDir HAIKU_TOP src tools fat_shell ;

# prevent inclusion of HaikuBuildCompatibility.h
DEFINES += HAIKU_BUILD_COMPATIBILITY_H ;

# set some additional defines
{
	local defines =
		FS_SHELL
		;
	defines = [ FDefines $(defines) ] ;

	local c++flags = -fno-rtti ;

	SubDirCcFlags $(defines) [ FDefines _FSSH_AUTO_LOCKER_H=1 _FSSH_STACK_H=1 ] ;
		# prevent inclusion of C++ headers
	SubDirC++Flags $(defines) $(c++flags) ;
}

UsePrivateHeaders shared storage file_systems ;
UsePrivateHeaders fs_shell ;
UseHeaders [ FDirName $(HAIKU_TOP) src tools fs_shell ] ;

local commonSource ;

include [ FDirName $(HAIKU_TOP) src add-ons kernel file_systems fat JamCommon ] ;

BuildPlatformMergeObject <build>fatfs.o
	:
	$(commonSource)
;

BuildPlatformMain <build>fat_shell
	: :
	<build>fatfs.o
	<build>fs_shell.a
	$(HOST_LIBSUPC++) $(HOST_LIBSTDC++)
	$(HOST_LIBROOT)
	$(fsShellCommandLibs)
;

BuildPlatformMain <build>fat_fuse
	: :
	<build>fatfs.o
	<build>fuse_module.a
	$(HOST_LIBSUPC++) $(HOST_LIBSTDC++)
	$(HOST_STATIC_LIBROOT)
	$(fsShellCommandLibs) fuse
;