⛏️ index : haiku.git

SubDir HAIKU_TOP src add-ons kernel drivers audio echo 3g ;

SubDirHdrs $(HAIKU_TOP) src add-ons kernel drivers audio generic ;
SubDirHdrs $(HAIKU_TOP) src add-ons kernel drivers audio echo ;
SubDirHdrs $(HAIKU_TOP) src add-ons kernel drivers audio echo generic ;
SubDirHdrs $(HAIKU_TOP) src add-ons kernel drivers audio echo generic DSP ;
SubDirHdrs $(HAIKU_TOP) src add-ons kernel drivers audio echo generic ASIC ;

UsePrivateSystemHeaders ;
UsePrivateHeaders kernel 			# For kernel_cpp.cpp
	audio ;

# set some additional defines
SubDirCcFlags -DECHO_BEOS -DECHO3G_FAMILY ;
SubDirC++Flags -DECHO_BEOS -DECHO3G_FAMILY -fno-rtti -DAUTO_DUCK_ALLOCATE ;

local echo_files =
	C3g.cpp
	C3gDco.cpp
	CChannelMask.cpp
	CDaffyDuck.cpp
	CDspCommObject.cpp
	CDspCommObjectVmixer.cpp
	CEchoGals.cpp
	CEchoGals_info.cpp
	CEchoGals_midi.cpp
	CEchoGals_mixer.cpp
	CEchoGals_power.cpp
	CEchoGals_transport.cpp
	CEchoGalsMTC.cpp
	CEchoGalsVmixer.cpp
	CLineLevel.cpp
	CMidiInQ.cpp
	CMonitorCtrl.cpp
	CMtcSync.cpp
	CPipeOutCtrl.cpp
	;

KernelAddon echo3g :
	kernel_cpp.cpp
	debug.c
	echo.cpp
	midi.cpp
	multi.cpp
	util.c
	$(echo_files)
	OsSupportBeOS.cpp
;

# suppress warnings on some files including the echo headers which provoke ugly warnings
ObjectC++Flags $(echo_files) : -w ;
ObjectC++Flags echo.cpp : -w ;

SEARCH on [ FGristFiles
	$(echo_files)
	OsSupportBeOS.cpp
	] = [ FDirName $(HAIKU_TOP) src add-ons kernel drivers audio echo generic ] ;

SEARCH on [ FGristFiles
		kernel_cpp.cpp
	] = [ FDirName $(HAIKU_TOP) src system kernel util ] ;

SEARCH on [ FGristFiles
		debug.c
		echo.cpp
		midi.cpp
		multi.cpp
	] = [ FDirName $(HAIKU_TOP) src add-ons kernel drivers audio echo ] ;

SEARCH on [ FGristFiles
		util.c
	] = [ FDirName $(HAIKU_TOP) src add-ons kernel drivers audio generic ] ;