PROJECT_BEGIN(rdsconsole EXECUTABLE)

SET(SOURCES ${SOURCES}
	main.cpp
	mainwindow.cpp
	extensionbase.cpp
	loginwindow.cpp
	usermanagerwidget.cpp
	rdsentitymodel.cpp
	rdsentitysortmodel.cpp
	rdsentitywidget.cpp
	usereditwidget.cpp
	changepassworddialog.cpp
	selectiondialog.cpp
	primarygroupwidget.cpp
	usergroupswidget.cpp
	newuserdialog.cpp
	rdsusergroupcomputermodel.cpp
	rdsusergroupcomputersortmodel.cpp
	oueditwidget.cpp
	groupeditwidget.cpp
	memberswidget.cpp
	computermanagerwidget.cpp
	computereditwidget.cpp
	multigeneratedpassworddialog.cpp
	sharemanagerwidget.cpp
	rdssharemodel.cpp
	shareeditwidget.cpp
	rdsfilemodel.cpp
	rdsfilesortmodel.cpp
	browsedialog.cpp
	permissionswidget.cpp
	aclmodel.cpp
	foldereditwidget.cpp
	acemodel.cpp
	drivemapwidget.cpp
	addsharedialog.cpp
	storagemanagerwidget.cpp
	rdsstoragemodel.cpp
	freespacedelegate.cpp
	storageeditorwidget.cpp
	initializevolumedialog.cpp
	rdsstoragedevicemodel.cpp
	unuseddevicedialog.cpp
	rdsstoragedevicesortmodel.cpp
	rdsstoragesortmodel.cpp
	provisionwizard.cpp
	rdsprovisionator.cpp
	qxtcommandoptions.cpp
	servermanagerwidget.cpp
	datetimewidget.cpp
	logswidget.cpp
	serverstatuswidget.cpp
	aboutdialog.cpp
	aceflagswidget.cpp
	passwordpolicywidget.cpp
	networkwidget.cpp
	networksavedialog.cpp
	dnsmanagerwidget.cpp
	rdsdnsmodel.cpp
	rdsdhcpmodel.cpp
	dhcpmanagerwidget.cpp
	dhcpeditwidget.cpp
	listwidget.cpp
	dnseditwidget.cpp
	dnszoneeditwidget.cpp
	checkwidget.cpp
	dhcpinterfacewidget.cpp
	addsubnetdialog.cpp
	dnsrecordeditwidget.cpp
	dhcpgroupeditwidget.cpp
	dhcphosteditwidget.cpp
	dhcpsubneteditwidget.cpp
	dhcpconfigurewidget.cpp
	dhcpconfiguredialog.cpp
	computeripwidget.cpp
	adddomaindialog.cpp
	addrecorddialog.cpp
	qxtconfirmationmessage.cpp
)

USE_QT_LIB(NETWORK)

SET(FORMS ${FORMS}
	mainwindow.ui
	loginwindow.ui
	usermanagerwidget.ui
	usereditwidget.ui
	changepassworddialog.ui
	SelectionDialog.ui
	primarygroupwidget.ui
	usergroupswidget.ui
	newuserdialog.ui
	oueditwidget.ui
	groupeditwidget.ui
	memberswidget.ui
	computereditwidget.ui
	computermanagerwidget.ui
	multiplegeneratedpassworddialog.ui
	sharemanagerwidget.ui
	shareeditwidget.ui
	browsedialog.ui
	permissionswidget.ui
	foldereditwidget.ui
	drivemapwidget.ui
	addsharedialog.ui
	storagemanagerwidget.ui
	storageeditorwidget.ui
	initializevolumedialog.ui
	unuseddevicedialog.ui
	provisionwizard.ui
	servermanager.ui
	serverstatuswidget.ui
	datetimewidget.ui
	LogsWidget.ui
	aboutdialog.ui
	aceflagswidget.ui
	passwordpolicywidget.ui
	networkwidget.ui
	networksavedialog.ui
	dnsmanagerwidget.ui
	dhcpmanagerwidget.ui
	dhcpeditwidget.ui
	listwidget.ui
	dnseditwidget.ui
	dnszoneeditwidget.ui
	checkwidget.ui
	dhcpinterfacewidget.ui
	addsubnetdialog.ui
	dnsrecordeditwidget.ui
	dhcpgroupeditwidget.ui
	dhcphosteditwidget.ui
	dhcpsubneteditwidget.ui
	dhcpconfigurewidget.ui
	dhcpconfiguredialog.ui
	computeripwidget.ui
	adddomaindialog.ui
	addrecorddialog.ui
)

SET(HEADERS ${HEADERS}
	mainwindow.h
	extensionbase.h
	loginwindow.h
	usermanagerwidget.h
	rdsentitymodel.h
	rdsentitymodel_p.h
	rdsentitysortmodel.h
	rdsentitysortmodel_p.h
	rdsentitywidget.h
	rdsentitywidget_p.h
	usereditwidget.h
	changepassworddialog.h
	selectiondialog.h
	primarygroupwidget.h
	usergroupswidget.h
	newuserdialog.h
	rdsusergroupcomputermodel.h
	rdsusergroupcomputersortmodel.h
	oueditwidget.h
	groupeditwidget.h
	memberswidget.h
	computermanagerwidget.h
	computereditwidget.h
	multigeneratedpassworddialog.h
	sharemanagerwidget.h
	rdssharemodel.h
	shareeditwidget.h
	rdsfilemodel.h
	rdsfilesortmodel.h
	browsedialog.h
	permissionswidget.h
	aclmodel.h
	foldereditwidget.h
	acemodel.h
	drivemapwidget.h
	addsharedialog.h
	storagemanagerwidget.h
	rdsstoragemodel.h
	freespacedelegate.h
	storageeditorwidget.h
	initializevolumedialog.h
	rdsstoragedevicemodel.h
	unuseddevicedialog.h
	rdsstoragedevicesortmodel.h
	rdsstoragesortmodel.h
	provisionwizard.h
	rdsprovisionator.h
	servermanagerwidget.h
	datetimewidget.h
	logswidget.h
	serverstatuswidget.h
	aboutdialog.h
	aceflagswidget.h
	passwordpolicywidget.h
	networkwidget.h
	networksavedialog.h
	rdsdnsmodel.h
	dnsmanagerwidget.h
	rdsdhcpmodel.h
	dhcpmanagerwidget.h
	dhcpeditwidget.h
	listwidget.h
	dnseditwidget.h
	dnszoneeditwidget.h
	checkwidget.h
	dhcpinterfacewidget.h
	addsubnetdialog.h
	dnsrecordeditwidget.h
	dhcpgroupeditwidget.h
	dhcphosteditwidget.h
	dhcpsubneteditwidget.h
	dhcpconfigurewidget.h
	dhcpconfiguredialog.h
	computeripwidget.h
	adddomaindialog.h
	addrecorddialog.h
	qxtconfirmationmessage.h
)

SET(INCLUDES ${INCLUDES}
	./include/
	 ../rdsclient
	 ../shared/
	 ../rdsclient/include/
	 ../shared/include/
)

SET(RESOURCES ${RESOURCES}
	rdsconsole.qrc
)

# Include and link against qtrpc2
SET(INCLUDES ${INCLUDES}
	../qtrpc2/
	../qtrpc2/include/
)
SET(LIBRARIES ${LIBRARIES}
	qtrpc2
	rdsclient
)

IF(UNIX)
	SET(INCLUDES ${INCLUDES}
		/usr/include/qt4/QtUiTools/
	)
	SET(LIBRARIES ${LIBRARIES}
		QtUiTools
	)
ENDIF(UNIX)

PROJECT_END()

INSTALL(TARGETS rdsconsole
        BUNDLE DESTINATION .
        RUNTIME DESTINATION bin
        LIBRARY DESTINATION lib
        ARCHIVE DESTINATION lib
)

IF(APPLE)
	FILE(GLOB QTRPC2LIBS ${CMAKE_BINARY_DIR}/qtrpc2/libqtrpc2.*)
	FILE(GLOB RDSCLIENTLIBS ${CMAKE_BINARY_DIR}/rdsclient/librdsclient.*)
	INSTALL(FILES ${QTRPCLIBS} ${RDSCLIENTLIBS} DESTINATION ${CMAKE_INSTALL_PREFIX}/rdsconsole.app/Contents/MacOS/)
	INSTALL(CODE "
	   include(BundleUtilities)
	   fixup_bundle(\"${CMAKE_INSTALL_PREFIX}/rdsconsole.app\"   \"\"   \"${CMAKE_INSTALL_PREFIX}/rdsconsole.app/Contents/MacOS/\")
	   " COMPONENT Runtime)
	INSTALL(SCRIPT post-install-mac.cmake)
ENDIF(APPLE)

