SubDir TOP ge-drivers ;

# T-
ntfs_config_defines =
		# do *not* apply -DDEBUG to all subdirs (C files but also Genode-native C++ files), since the latter are allergic to that pollution since 23.08
		# apply it only where relevant, in the lib-NTFS .c files
	#	-DDEBUG
	-DHAVE_SETXATTR  # HoG_GENODE addition: enable handling of extended attributes in libntfs-3g
	-DHAVE_CONFIG_H
	-DRECORD_LOCKING_NOT_IMPLEMENTED
	;

# Forward libc symbols, so they do not conflict/trip the rest of the code.
# -- Note: this can be useful for e.g. the NTFS plug-in, but ONLY if it gets loaded into a component that uses the "real" libc, in which case LD would get confused between "our" printf and the "real" printf and so on.
# -- If you only intend to load the plug-in into a "pure Genode" component, like the vfs server, the below aliasing does not bring any benefit.
#
#CC_OPT += -Dopen=fuselibc_open -Dclose=fuselibc_close \
#	-Dpread=fuselibc_pread -Dpwrite=fuselibc_pwrite \
#	-Dstat=fuselibc_stat -Dseek=fuselibc_seek -Dsync=fuselibc_sync \
#	-Dfstat=fuselibc_fstat -Dlseek=fuselibc_lseek -Dfsync=fuselibc_fsync \
#	-Dmalloc=fuselibc_malloc -Dcalloc=fuselibc_calloc \
#	-Dfprintf=fuselibc_fprintf
#	#-Dread=fuselibc_read -Dwrite=fuselibc_write : messes with Readonly_File.read()
#	#-Dfree=fuselibc_free  -Drealloc=fuselibc_realloc : messes with avlallocator.free()
#	#-Dioctl=fuselibc_ioctl -Dfcntl=fuselibc_fcntl

# T+
SubInclude TOP ge-drivers lib_fuse_tts ;
SubInclude TOP ge-drivers libntfs-3g ;
SubInclude TOP ge-drivers vfs_fuse_ntfs_tts ;

