SubDir HAIKU_TOP src kits ;

# If defined allows to run applications without the registrar
# -- for development only, of course.
if $(RUN_WITHOUT_REGISTRAR) {
	local defines = [ FDefines RUN_WITHOUT_REGISTRAR ] ;
	SubDirCcFlags $(defines) ;
	SubDirC++Flags $(defines) ;
}

# If defined allows to run applications without the app server
# -- needed until the app server runs on our kernel.
RUN_WITHOUT_APP_SERVER ?= 0 ;
if $(RUN_WITHOUT_APP_SERVER) != 0 {
	local defines = [ FDefines RUN_WITHOUT_APP_SERVER ] ;
	SubDirCcFlags $(defines) ;
	SubDirC++Flags $(defines) ;
}

UsePrivateHeaders app interface kernel locale shared ;

# Build our libbe.so

AddResources libbe.so : 
	libbe_version.rdef CountryFlags.rdef LanguageFlags.rdef 
;


SetVersionScript libbe.so : libbe_versions ;

SharedLibrary libbe.so : :
	<libbe>app_kit.o
	<libbe>interface_kit.o
	<libbe>locale_kit.o
	<libbe>storage_kit.o
	<libbe>support_kit.o

	libicon.a
	libagg.a

	libroot.so	# make sure it links against our libroot.so
	$(TARGET_LIBSTDC++) $(HAIKU_ICU_LIBS)
;

# Build libbe_test.so

SetSupportedPlatformsForTarget libbe_test.so : libbe_test ;

SetVersionScript libbe_test.so : libbe_test_versions ;

SharedLibrary libbe_test.so :
	LocaleBackend.cpp
	:
	<libbe>app_kit.o
	<libbe>interface_kit.o
	<libbe>storage_kit.o
	<libbe>support_kit.o

	libicon.a
	libagg.a

	$(TARGET_LIBSTDC++)
;

SEARCH on [ FGristFiles AboutMenuItem.cpp ] += [ FDirName $(HAIKU_TOP) src kits shared ] ;
SEARCH on [ FGristFiles AboutWindow.cpp ] += [ FDirName $(HAIKU_TOP) src kits shared ] ;
SEARCH on [ FGristFiles ColorControl.cpp ] += [ FDirName $(HAIKU_TOP) src kits interface ] ;
SEARCH on [ FGristFiles StringForSize.cpp ] += [ FDirName $(HAIKU_TOP) src kits shared ] ;
SEARCH on [ FGristFiles TextView.cpp ] += [ FDirName $(HAIKU_TOP) src kits interface ] ;
SEARCH on [ FGristFiles Dragger.cpp ] += [ FDirName $(HAIKU_TOP) src kits interface ] ;
SEARCH on [ FGristFiles Menu.cpp ] += [ FDirName $(HAIKU_TOP) src kits interface ] ;
SEARCH on [ FGristFiles PrintJob.cpp ] += [ FDirName $(HAIKU_TOP) src kits interface ] ;
SEARCH on [ FGristFiles ZombieReplicantView.cpp ] += [ FDirName $(HAIKU_TOP) src kits interface ] ;

DoCatalogs libbe.so
	: x-vnd.Haiku-libbe
	:
	AboutMenuItem.cpp
	AboutWindow.cpp
	ColorControl.cpp
	Dragger.cpp
	Menu.cpp
	PrintJob.cpp
	StringForSize.cpp
	TextView.cpp
	ZombieReplicantView.cpp
	;
	
#SEARCH on [ FGristFiles KMessage.cpp ]
#	= [ FDirName $(HAIKU_TOP) src system kernel messaging ] ;
#
#SEARCH on [ FGristFiles syslog.cpp ]
#	= [ FDirName $(HAIKU_TOP) src system libroot posix ] ;


SubInclude HAIKU_TOP src kits app ;
SubInclude HAIKU_TOP src kits bluetooth ;
SubInclude HAIKU_TOP src kits debug ;
SubInclude HAIKU_TOP src kits device ;
SubInclude HAIKU_TOP src kits game ;
SubInclude HAIKU_TOP src kits interface ;
SubInclude HAIKU_TOP src kits locale ;
SubInclude HAIKU_TOP src kits mail ;
SubInclude HAIKU_TOP src kits media ;
SubInclude HAIKU_TOP src kits midi ;
SubInclude HAIKU_TOP src kits midi2 ;
SubInclude HAIKU_TOP src kits network ;
SubInclude HAIKU_TOP src kits opengl ;
SubInclude HAIKU_TOP src kits package ;
SubInclude HAIKU_TOP src kits print ;
SubInclude HAIKU_TOP src kits screensaver ;
SubInclude HAIKU_TOP src kits shared ;
SubInclude HAIKU_TOP src kits storage ;
SubInclude HAIKU_TOP src kits support ;
SubInclude HAIKU_TOP src kits textencoding ;
SubInclude HAIKU_TOP src kits tracker ;
SubInclude HAIKU_TOP src kits translation ;
