summaryrefslogtreecommitdiff
path: root/indra/newview/CMakeLists.txt
diff options
context:
space:
mode:
authorLoren Shih <seraph@lindenlab.com>2009-11-02 15:39:55 -0500
committerLoren Shih <seraph@lindenlab.com>2009-11-02 15:39:55 -0500
commitbde7d67066d189416a725da4527a02eb4f78ba4a (patch)
treeef0897dcf3663ff236321054c4cdf3704ebf0ec6 /indra/newview/CMakeLists.txt
parent96841c60b7d51cdb640feb5765d4bf21d047f122 (diff)
EXT-1866 : Inventory Side Panel
svn merge -r137106:137808 svn+ssh://svn.lindenlab.com/svn/linden/branches/avatar-pipeline/inventory-panel Porting over changes from svn Inventory Panel work.
Diffstat (limited to 'indra/newview/CMakeLists.txt')
-rw-r--r--indra/newview/CMakeLists.txt3543
1 files changed, 1777 insertions, 1766 deletions
diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt
index a7681e4a1d..644ebfa3f4 100644
--- a/indra/newview/CMakeLists.txt
+++ b/indra/newview/CMakeLists.txt
@@ -1,1766 +1,1777 @@
-# -*- cmake -*-
-
-project(viewer)
-
-include(00-Common)
-include(Boost)
-include(BuildVersion)
-include(DBusGlib)
-include(DirectX)
-include(ELFIO)
-include(FMOD)
-include(OPENAL)
-include(FindOpenGL)
-include(LLAudio)
-include(LLCharacter)
-include(LLCommon)
-include(LLImage)
-include(LLImageJ2COJ)
-include(LLInventory)
-include(LLMath)
-include(LLMessage)
-include(LLPlugin)
-include(LLPrimitive)
-include(LLRender)
-include(LLUI)
-include(LLVFS)
-include(LLWindow)
-include(LLXML)
-include(LLXUIXML)
-include(LScript)
-include(Linking)
-include(NDOF)
-include(GooglePerfTools)
-include(TemplateCheck)
-include(UI)
-include(UnixInstall)
-include(LLKDU)
-include(ViewerMiscLibs)
-include(LLLogin)
-include(CMakeCopyIfDifferent)
-
-include_directories(
- ${DBUSGLIB_INCLUDE_DIRS}
- ${ELFIO_INCLUDE_DIR}
- ${LLAUDIO_INCLUDE_DIRS}
- ${LLCHARACTER_INCLUDE_DIRS}
- ${LLCOMMON_INCLUDE_DIRS}
- ${LLIMAGE_INCLUDE_DIRS}
- ${LLINVENTORY_INCLUDE_DIRS}
- ${LLMATH_INCLUDE_DIRS}
- ${LLMESSAGE_INCLUDE_DIRS}
- ${LLPLUGIN_INCLUDE_DIRS}
- ${LLPRIMITIVE_INCLUDE_DIRS}
- ${LLRENDER_INCLUDE_DIRS}
- ${LLUI_INCLUDE_DIRS}
- ${LLVFS_INCLUDE_DIRS}
- ${LLWINDOW_INCLUDE_DIRS}
- ${LLXML_INCLUDE_DIRS}
- ${LLXUIXML_INCLUDE_DIRS}
- ${LSCRIPT_INCLUDE_DIRS}
- ${LSCRIPT_INCLUDE_DIRS}/lscript_compile
- ${LLLOGIN_INCLUDE_DIRS}
- )
-
-set(viewer_SOURCE_FILES
- llaccordionctrl.cpp
- llaccordionctrltab.cpp
- llagent.cpp
- llagentaccess.cpp
- llagentdata.cpp
- llagentlanguage.cpp
- llagentlistener.cpp
- llagentpicksinfo.cpp
- llagentpilot.cpp
- llagentui.cpp
- llagentwearables.cpp
- llanimstatelabels.cpp
- llappearancemgr.cpp
- llappviewer.cpp
- llappviewerlistener.cpp
- llassetuploadqueue.cpp
- llassetuploadresponders.cpp
- llaudiosourcevo.cpp
- llavataractions.cpp
- llavatariconctrl.cpp
- llavatarlist.cpp
- llavatarlistitem.cpp
- llavatarpropertiesprocessor.cpp
- llbottomtray.cpp
- llbox.cpp
- llbreadcrumbview.cpp
- llcallbacklist.cpp
- llcallingcard.cpp
- llcapabilitylistener.cpp
- llcaphttpsender.cpp
- llchannelmanager.cpp
- llchatbar.cpp
- llchathistory.cpp
- llchatitemscontainerctrl.cpp
- llchatmsgbox.cpp
- llchiclet.cpp
- llclassifiedinfo.cpp
- llclassifiedstatsresponder.cpp
- llcloud.cpp
- llcolorswatch.cpp
- llcommandhandler.cpp
- llcommandlineparser.cpp
- llcompilequeue.cpp
- llconfirmationmanager.cpp
- llcurrencyuimanager.cpp
- llcylinder.cpp
- lldateutil.cpp
- lldebugmessagebox.cpp
- lldebugview.cpp
- lldelayedgestureerror.cpp
- lldirpicker.cpp
- lldndbutton.cpp
- lldrawable.cpp
- lldrawpool.cpp
- lldrawpoolalpha.cpp
- lldrawpoolavatar.cpp
- lldrawpoolbump.cpp
- lldrawpoolground.cpp
- lldrawpoolsimple.cpp
- lldrawpoolsky.cpp
- lldrawpoolterrain.cpp
- lldrawpooltree.cpp
- lldrawpoolwater.cpp
- lldrawpoolwlsky.cpp
- lldriverparam.cpp
- lldynamictexture.cpp
- llemote.cpp
- lleventinfo.cpp
- lleventnotifier.cpp
- lleventpoll.cpp
- llexpandabletextbox.cpp
- llface.cpp
- llfasttimerview.cpp
- llfavoritesbar.cpp
- llfeaturemanager.cpp
- llfilepicker.cpp
- llfirstuse.cpp
- llflexibleobject.cpp
- llfloaterabout.cpp
- llfloateractivespeakers.cpp
- llfloateranimpreview.cpp
- llfloaterauction.cpp
- llfloateravatarpicker.cpp
- llfloateravatartextures.cpp
- llfloaterbeacons.cpp
- llfloaterbuildoptions.cpp
- llfloaterbulkpermission.cpp
- llfloaterbump.cpp
- llfloaterbuy.cpp
- llfloaterbuycontents.cpp
- llfloaterbuycurrency.cpp
- llfloaterbuyland.cpp
- llfloatercall.cpp
- llfloatercamera.cpp
- llfloaterchat.cpp
- llfloaterchatterbox.cpp
- llfloatercolorpicker.cpp
- llfloatercustomize.cpp
- llfloaterdaycycle.cpp
- llfloaterenvsettings.cpp
- llfloaterfonttest.cpp
- llfloaterfriends.cpp
- llfloatergesture.cpp
- llfloatergodtools.cpp
- llfloatergroupinvite.cpp
- llfloatergroups.cpp
- llfloaterhandler.cpp
- llfloaterhardwaresettings.cpp
- llfloaterhelpbrowser.cpp
- llfloaterhud.cpp
- llfloaterimagepreview.cpp
- llfloaterinspect.cpp
- llfloaterinventory.cpp
- llfloaterjoystick.cpp
- llfloaterlagmeter.cpp
- llfloaterland.cpp
- llfloaterlandholdings.cpp
- llfloatermap.cpp
- llfloatermediabrowser.cpp
- llfloatermediasettings.cpp
- llfloatermemleak.cpp
- llfloaternamedesc.cpp
- llfloaternotificationsconsole.cpp
- llfloateropenobject.cpp
- llfloaterparcel.cpp
- llfloaterpay.cpp
- llfloaterperms.cpp
- llfloaterpostcard.cpp
- llfloaterpostprocess.cpp
- llfloaterpreference.cpp
- llfloaterproperties.cpp
- llfloaterregioninfo.cpp
- llfloaterreporter.cpp
- llfloaterscriptdebug.cpp
- llfloatersearch.cpp
- llfloatersellland.cpp
- llfloatersettingsdebug.cpp
- llfloatersnapshot.cpp
- llfloatertelehub.cpp
- llfloatertestinspectors.cpp
- llfloatertestlistview.cpp
- llfloatertools.cpp
- llfloatertopobjects.cpp
- llfloatertos.cpp
- llfloateruipreview.cpp
- llfloaterurldisplay.cpp
- llfloaterurlentry.cpp
- llfloatervoicedevicesettings.cpp
- llfloaterwater.cpp
- llfloaterwhitelistentry.cpp
- llfloaterwindlight.cpp
- llfloaterworldmap.cpp
- llfoldertype.cpp
- llfolderview.cpp
- llfolderviewitem.cpp
- llfollowcam.cpp
- llfriendcard.cpp
- llgesturemgr.cpp
- llglsandbox.cpp
- llgroupactions.cpp
- llgrouplist.cpp
- llgroupmgr.cpp
- llgroupnotify.cpp
- llhomelocationresponder.cpp
- llhudeffect.cpp
- llhudeffectbeam.cpp
- llhudeffectlookat.cpp
- llhudeffectpointat.cpp
- llhudeffecttrail.cpp
- llhudicon.cpp
- llhudmanager.cpp
- llhudobject.cpp
- llhudrender.cpp
- llhudtext.cpp
- llhudview.cpp
- llimcontrolpanel.cpp
- llimfloater.cpp
- llimhandler.cpp
- llimpanel.cpp
- llimview.cpp
- llinspect.cpp
- llinspectavatar.cpp
- llinspectgroup.cpp
- llinspectobject.cpp
- llinventorybridge.cpp
- llinventoryclipboard.cpp
- llinventoryfilter.cpp
- llinventorymodel.cpp
- llinventorysubtreepanel.cpp
- lljoystickbutton.cpp
- lllandmarkactions.cpp
- lllandmarklist.cpp
- lllistbrowser.cpp
- lllistview.cpp
- lllocaltextureobject.cpp
- lllocationhistory.cpp
- lllocationinputctrl.cpp
- lllogchat.cpp
- llloginhandler.cpp
- lllogininstance.cpp
- llmanip.cpp
- llmaniprotate.cpp
- llmanipscale.cpp
- llmaniptranslate.cpp
- llmapresponders.cpp
- llmediactrl.cpp
- llmediadataclient.cpp
- llmediaremotectrl.cpp
- llmemoryview.cpp
- llmenucommands.cpp
- llmetricperformancetester.cpp
- llmimetypes.cpp
- llmorphview.cpp
- llmoveview.cpp
- llmutelist.cpp
- llnamebox.cpp
- llnameeditor.cpp
- llnamelistctrl.cpp
- llnavigationbar.cpp
- llnearbychat.cpp
- llnearbychatbar.cpp
- llnearbychathandler.cpp
- llnetmap.cpp
- llnotificationalerthandler.cpp
- llnotificationgrouphandler.cpp
- llnotificationmanager.cpp
- llnotificationscripthandler.cpp
- llnotificationtiphandler.cpp
- llnotify.cpp
- lloutputmonitorctrl.cpp
- lloverlaybar.cpp
- llpanelappearance.cpp
- llpanelappearancetab.cpp
- llpanelavatar.cpp
- llpanelavatarrow.cpp
- llpanelavatartag.cpp
- llpanelblockedlist.cpp
- llpanelclassified.cpp
- llpanelcontents.cpp
- llpaneleditwearable.cpp
- llpanelevent.cpp
- llpanelface.cpp
- llpanelgroup.cpp
- llpanelgroupgeneral.cpp
- llpanelgroupinvite.cpp
- llpanelgrouplandmoney.cpp
- llpanelgroupnotices.cpp
- llpanelgrouproles.cpp
- llpanelimcontrolpanel.cpp
- llpanelinventory.cpp
- llpanelland.cpp
- llpanellandaudio.cpp
- llpanellandmarks.cpp
- llpanellandmedia.cpp
- llpanellogin.cpp
- llpanellookinfo.cpp
- llpanellooks.cpp
- llpanelmedia.cpp
- llpanelmediasettingsgeneral.cpp
- llpanelmediasettingspermissions.cpp
- llpanelmediasettingssecurity.cpp
- llpanelmeprofile.cpp
- llpanelobject.cpp
- llpanelpeople.cpp
- llpanelpeoplemenus.cpp
- llpanelpermissions.cpp
- llpanelpick.cpp
- llpanelpicks.cpp
- llpanelplace.cpp
- llpanelplaceinfo.cpp
- llpanelplaces.cpp
- llpanelplacestab.cpp
- llpanelprimmediacontrols.cpp
- llpanelprofile.cpp
- llpanelprofileview.cpp
- llpanelshower.cpp
- llpanelteleporthistory.cpp
- llpanelvolume.cpp
- llparcelselection.cpp
- llparticipantlist.cpp
- llpatchvertexarray.cpp
- llplacesinventorybridge.cpp
- llpolymesh.cpp
- llpolymorph.cpp
- llpreview.cpp
- llpreviewanim.cpp
- llpreviewgesture.cpp
- llpreviewnotecard.cpp
- llpreviewscript.cpp
- llpreviewsound.cpp
- llpreviewtexture.cpp
- llproductinforequest.cpp
- llprogressview.cpp
- llrecentpeople.cpp
- llregionposition.cpp
- llremoteparcelrequest.cpp
- llsavedsettingsglue.cpp
- llscreenchannel.cpp
- llscrollingpanelparam.cpp
- llsearchcombobox.cpp
- llsearchhistory.cpp
- llselectmgr.cpp
- llsidetray.cpp
- llsidetraypanelcontainer.cpp
- llsky.cpp
- llslurl.cpp
- llspatialpartition.cpp
- llspeakers.cpp
- llsplitbutton.cpp
- llsprite.cpp
- llstartup.cpp
- llstatusbar.cpp
- llstylemap.cpp
- llsurface.cpp
- llsurfacepatch.cpp
- llsyswellitem.cpp
- llsyswellwindow.cpp
- llteleporthistory.cpp
- llteleporthistorystorage.cpp
- lltexglobalcolor.cpp
- lltexlayer.cpp
- lltexlayerparams.cpp
- lltextureatlas.cpp
- lltextureatlasmanager.cpp
- lltexturecache.cpp
- lltexturectrl.cpp
- lltexturefetch.cpp
- lltextureview.cpp
- lltoast.cpp
- lltoastalertpanel.cpp
- lltoastgroupnotifypanel.cpp
- lltoastimpanel.cpp
- lltoastnotifypanel.cpp
- lltoastpanel.cpp
- lltool.cpp
- lltoolbar.cpp
- lltoolbrush.cpp
- lltoolcomp.cpp
- lltooldraganddrop.cpp
- lltoolface.cpp
- lltoolfocus.cpp
- lltoolgrab.cpp
- lltoolgun.cpp
- lltoolindividual.cpp
- lltoolmgr.cpp
- lltoolmorph.cpp
- lltoolobjpicker.cpp
- lltoolpie.cpp
- lltoolpipette.cpp
- lltoolplacer.cpp
- lltoolselect.cpp
- lltoolselectland.cpp
- lltoolselectrect.cpp
- lltracker.cpp
- lltransientdockablefloater.cpp
- lltransientfloatermgr.cpp
- lluilistener.cpp
- lluploaddialog.cpp
- llurl.cpp
- llurldispatcher.cpp
- llurlhistory.cpp
- llurllineeditorctrl.cpp
- llurlsimstring.cpp
- llurlwhitelist.cpp
- llvectorperfoptions.cpp
- llviewchildren.cpp
- llviewerassetstorage.cpp
- llvieweraudio.cpp
- llviewercamera.cpp
- llviewercontrol.cpp
- llviewercontrollistener.cpp
- llviewerdisplay.cpp
- llviewerfloaterreg.cpp
- llviewergenericmessage.cpp
- llviewergesture.cpp
- llviewerhelp.cpp
- llviewerhelputil.cpp
- llviewerinventory.cpp
- llviewerjoint.cpp
- llviewerjointattachment.cpp
- llviewerjointmesh.cpp
- llviewerjointmesh_sse.cpp
- llviewerjointmesh_sse2.cpp
- llviewerjointmesh_vec.cpp
- llviewerjoystick.cpp
- llviewerkeyboard.cpp
- llviewerlayer.cpp
- llviewermedia.cpp
- llviewermedia_streamingaudio.cpp
- llviewermediafocus.cpp
- llviewermenu.cpp
- llviewermenufile.cpp
- llviewermessage.cpp
- llviewernetwork.cpp
- llviewerobject.cpp
- llviewerobjectlist.cpp
- llviewerparcelmedia.cpp
- llviewerparcelmediaautoplay.cpp
- llviewerparcelmgr.cpp
- llviewerparceloverlay.cpp
- llviewerpartsim.cpp
- llviewerpartsource.cpp
- llviewerregion.cpp
- llviewershadermgr.cpp
- llviewerstats.cpp
- llviewertexteditor.cpp
- llviewertexture.cpp
- llviewertextureanim.cpp
- llviewertexturelist.cpp
- llviewerthrottle.cpp
- llviewervisualparam.cpp
- llviewerwindow.cpp
- llviewerwindowlistener.cpp
- llvlcomposition.cpp
- llvlmanager.cpp
- llvoavatar.cpp
- llvoavatardefines.cpp
- llvoavatarself.cpp
- llvocache.cpp
- llvoclouds.cpp
- llvograss.cpp
- llvoground.cpp
- llvoicechannel.cpp
- llvoiceclient.cpp
- llvoicecontrolpanel.cpp
- llvoiceremotectrl.cpp
- llvoicevisualizer.cpp
- llvoinventorylistener.cpp
- llvopartgroup.cpp
- llvosky.cpp
- llvosurfacepatch.cpp
- llvotextbubble.cpp
- llvotree.cpp
- llvovolume.cpp
- llvowater.cpp
- llvowlsky.cpp
- llwatchdog.cpp
- llwaterparammanager.cpp
- llwaterparamset.cpp
- llwearable.cpp
- llwearabledictionary.cpp
- llwearablelist.cpp
- llweb.cpp
- llwind.cpp
- llwlanimator.cpp
- llwldaycycle.cpp
- llwlparammanager.cpp
- llwlparamset.cpp
- llworld.cpp
- llworldmap.cpp
- llworldmapview.cpp
- llxmlrpclistener.cpp
- llxmlrpctransaction.cpp
- noise.cpp
- pipeline.cpp
- )
-
-set(VIEWER_BINARY_NAME "secondlife-bin" CACHE STRING
- "The name of the viewer executable to create.")
-
-if (LINUX)
- # We can't set these flags for Darwin, because they get passed to
- # the PPC compiler. Ugh.
-
- set_source_files_properties(
- llviewerjointmesh_sse.cpp
- PROPERTIES COMPILE_FLAGS "-msse -mfpmath=sse"
- )
- set_source_files_properties(
- llviewerjointmesh_sse2.cpp
- PROPERTIES COMPILE_FLAGS "-msse2 -mfpmath=sse"
- )
-endif (LINUX)
-
-set(viewer_HEADER_FILES
- CMakeLists.txt
- ViewerInstall.cmake
- llaccordionctrl.h
- llaccordionctrltab.h
- llagent.h
- llagentaccess.h
- llagentdata.h
- llagentlanguage.h
- llagentlistener.h
- llagentpicksinfo.h
- llagentpilot.h
- llagentui.h
- llagentwearables.h
- llanimstatelabels.h
- llappearance.h
- llappearancemgr.h
- llappviewer.h
- llappviewerlistener.h
- llassetuploadqueue.h
- llassetuploadresponders.h
- llaudiosourcevo.h
- llavataractions.h
- llavatariconctrl.h
- llavatarlist.h
- llavatarlistitem.h
- llavatarpropertiesprocessor.h
- llbottomtray.h
- llbox.h
- llbreadcrumbview.h
- llcallbacklist.h
- llcallingcard.h
- llcapabilitylistener.h
- llcapabilityprovider.h
- llcaphttpsender.h
- llchannelmanager.h
- llchatbar.h
- llchathistory.h
- llchatitemscontainerctrl.h
- llchatmsgbox.h
- llchiclet.h
- llclassifiedinfo.h
- llclassifiedstatsresponder.h
- llcloud.h
- llcolorswatch.h
- llcommandhandler.h
- llcommandlineparser.h
- llcompilequeue.h
- llconfirmationmanager.h
- llcurrencyuimanager.h
- llcylinder.h
- lldateutil.h
- lldebugmessagebox.h
- lldebugview.h
- lldelayedgestureerror.h
- lldirpicker.h
- lldndbutton.h
- lldrawable.h
- lldrawpool.h
- lldrawpoolalpha.h
- lldrawpoolavatar.h
- lldrawpoolbump.h
- lldrawpoolclouds.h
- lldrawpoolground.h
- lldrawpoolsimple.h
- lldrawpoolsky.h
- lldrawpoolterrain.h
- lldrawpooltree.h
- lldrawpoolwater.h
- lldrawpoolwlsky.h
- lldriverparam.h
- lldynamictexture.h
- llemote.h
- lleventinfo.h
- lleventnotifier.h
- lleventpoll.h
- llexpandabletextbox.h
- llface.h
- llfasttimerview.h
- llfavoritesbar.h
- llfeaturemanager.h
- llfilepicker.h
- llfirstuse.h
- llflexibleobject.h
- llfloaterabout.h
- llfloateractivespeakers.h
- llfloateranimpreview.h
- llfloaterauction.h
- llfloateravatarpicker.h
- llfloateravatartextures.h
- llfloaterbeacons.h
- llfloaterbuildoptions.h
- llfloaterbulkpermission.h
- llfloaterbump.h
- llfloaterbuy.h
- llfloaterbuycontents.h
- llfloaterbuycurrency.h
- llfloaterbuyland.h
- llfloatercall.h
- llfloatercamera.h
- llfloaterchat.h
- llfloaterchatterbox.h
- llfloatercolorpicker.h
- llfloatercustomize.h
- llfloaterdaycycle.h
- llfloaterenvsettings.h
- llfloaterfonttest.h
- llfloaterfriends.h
- llfloatergesture.h
- llfloatergodtools.h
- llfloatergroupinvite.h
- llfloatergroups.h
- llfloaterhandler.h
- llfloaterhardwaresettings.h
- llfloaterhelpbrowser.h
- llfloaterhud.h
- llfloaterimagepreview.h
- llfloaterinspect.h
- llfloaterinventory.h
- llfloaterjoystick.h
- llfloaterlagmeter.h
- llfloaterland.h
- llfloaterlandholdings.h
- llfloatermap.h
- llfloatermediabrowser.h
- llfloatermediasettings.h
- llfloatermemleak.h
- llfloaternamedesc.h
- llfloaternotificationsconsole.h
- llfloateropenobject.h
- llfloaterparcel.h
- llfloaterpay.h
- llfloaterperms.h
- llfloaterpostcard.h
- llfloaterpostprocess.h
- llfloaterpreference.h
- llfloaterproperties.h
- llfloaterregioninfo.h
- llfloaterreporter.h
- llfloaterscriptdebug.h
- llfloatersearch.h
- llfloatersellland.h
- llfloatersettingsdebug.h
- llfloatersnapshot.h
- llfloatertelehub.h
- llfloatertestinspectors.h
- llfloatertestlistview.h
- llfloatertools.h
- llfloatertopobjects.h
- llfloatertos.h
- llfloateruipreview.h
- llfloaterurldisplay.h
- llfloaterurlentry.h
- llfloatervoicedevicesettings.h
- llfloaterwater.h
- llfloaterwhitelistentry.h
- llfloaterwindlight.h
- llfloaterworldmap.h
- llfoldertype.h
- llfolderview.h
- llfoldervieweventlistener.h
- llfolderviewitem.h
- llfollowcam.h
- llfriendcard.h
- llgesturemgr.h
- llgroupactions.h
- llgrouplist.h
- llgroupmgr.h
- llgroupnotify.h
- llhomelocationresponder.h
- llhudeffect.h
- llhudeffectbeam.h
- llhudeffectlookat.h
- llhudeffectpointat.h
- llhudeffecttrail.h
- llhudicon.h
- llhudmanager.h
- llhudobject.h
- llhudrender.h
- llhudtext.h
- llhudview.h
- llimcontrolpanel.h
- llimfloater.h
- llimpanel.h
- llimview.h
- llinspect.h
- llinspectavatar.h
- llinspectgroup.h
- llinspectobject.h
- llinventorybridge.h
- llinventoryclipboard.h
- llinventoryfilter.h
- llinventorymodel.h
- llinventorysubtreepanel.h
- lljoystickbutton.h
- lllandmarkactions.h
- lllandmarklist.h
- lllightconstants.h
- lllistbrowser.h
- lllistview.h
- lllocaltextureobject.h
- lllocationhistory.h
- lllocationinputctrl.h
- lllogchat.h
- llloginhandler.h
- lllogininstance.h
- llmanip.h
- llmaniprotate.h
- llmanipscale.h
- llmaniptranslate.h
- llmapresponders.h
- llmediactrl.h
- llmediadataclient.h
- llmediaremotectrl.h
- llmemoryview.h
- llmenucommands.h
- llmetricperformancetester.h
- llmimetypes.h
- llmorphview.h
- llmoveview.h
- llmutelist.h
- llnamebox.h
- llnameeditor.h
- llnamelistctrl.h
- llnavigationbar.h
- llnearbychat.h
- llnearbychatbar.h
- llnearbychathandler.h
- llnetmap.h
- llnotificationhandler.h
- llnotificationmanager.h
- llnotify.h
- lloutputmonitorctrl.h
- lloverlaybar.h
- llpanelappearance.h
- llpanelappearancetab.h
- llpanelavatar.h
- llpanelavatarrow.h
- llpanelavatartag.h
- llpanelblockedlist.h
- llpanelclassified.h
- llpanelcontents.h
- llpaneleditwearable.h
- llpanelevent.h
- llpanelface.h
- llpanelgroup.h
- llpanelgroupgeneral.h
- llpanelgroupinvite.h
- llpanelgrouplandmoney.h
- llpanelgroupnotices.h
- llpanelgrouproles.h
- llpanelimcontrolpanel.h
- llpanelinventory.h
- llpanelland.h
- llpanellandaudio.h
- llpanellandmarks.h
- llpanellandmedia.h
- llpanellogin.h
- llpanellookinfo.h
- llpanellooks.h
- llpanelmedia.h
- llpanelmediasettingsgeneral.h
- llpanelmediasettingspermissions.h
- llpanelmediasettingssecurity.h
- llpanelmeprofile.h
- llpanelobject.h
- llpanelpeople.h
- llpanelpeoplemenus.h
- llpanelpermissions.h
- llpanelpick.h
- llpanelpicks.h
- llpanelplace.h
- llpanelplaceinfo.h
- llpanelplaces.h
- llpanelplacestab.h
- llpanelprimmediacontrols.h
- llpanelprofile.h
- llpanelprofileview.h
- llpanelshower.h
- llpanelteleporthistory.h
- llpanelvolume.h
- llparcelselection.h
- llparticipantlist.h
- llpatchvertexarray.h
- llplacesinventorybridge.h
- llpolymesh.h
- llpolymorph.h
- llpreview.h
- llpreviewanim.h
- llpreviewgesture.h
- llpreviewnotecard.h
- llpreviewscript.h
- llpreviewsound.h
- llpreviewtexture.h
- llproductinforequest.h
- llprogressview.h
- llrecentpeople.h
- llregionposition.h
- llremoteparcelrequest.h
- llresourcedata.h
- llrootview.h
- llsavedsettingsglue.h
- llscreenchannel.h
- llscrollingpanelparam.h
- llsearchcombobox.h
- llsearchhistory.h
- llselectmgr.h
- llsidetray.h
- llsidetraypanelcontainer.h
- llsky.h
- llslurl.h
- llspatialpartition.h
- llspeakers.h
- llsplitbutton.h
- llsprite.h
- llstartup.h
- llstatusbar.h
- llstylemap.h
- llsurface.h
- llsurfacepatch.h
- llsyswellitem.h
- llsyswellwindow.h
- lltable.h
- llteleporthistory.h
- llteleporthistorystorage.h
- lltexglobalcolor.h
- lltexlayer.h
- lltexlayerparams.h
- lltextureatlas.h
- lltextureatlasmanager.h
- lltexturecache.h
- lltexturectrl.h
- lltexturefetch.h
- lltextureview.h
- lltoast.h
- lltoastalertpanel.h
- lltoastgroupnotifypanel.h
- lltoastimpanel.h
- lltoastnotifypanel.h
- lltoastpanel.h
- lltool.h
- lltoolbar.h
- lltoolbrush.h
- lltoolcomp.h
- lltooldraganddrop.h
- lltoolface.h
- lltoolfocus.h
- lltoolgrab.h
- lltoolgun.h
- lltoolindividual.h
- lltoolmgr.h
- lltoolmorph.h
- lltoolobjpicker.h
- lltoolpie.h
- lltoolpipette.h
- lltoolplacer.h
- lltoolselect.h
- lltoolselectland.h
- lltoolselectrect.h
- lltracker.h
- lltransientdockablefloater.h
- lltransientfloatermgr.h
- lluiconstants.h
- lluilistener.h
- lluploaddialog.h
- llurl.h
- llurldispatcher.h
- llurlhistory.h
- llurllineeditorctrl.h
- llurlsimstring.h
- llurlwhitelist.h
- llvectorperfoptions.h
- llviewchildren.h
- llviewerassetstorage.h
- llvieweraudio.h
- llviewerbuild.h
- llviewercamera.h
- llviewercontrol.h
- llviewercontrollistener.h
- llviewerdisplay.h
- llviewerfloaterreg.h
- llviewergenericmessage.h
- llviewergesture.h
- llviewerhelp.h
- llviewerinventory.h
- llviewerjoint.h
- llviewerjointattachment.h
- llviewerjointmesh.h
- llviewerjoystick.h
- llviewerkeyboard.h
- llviewerlayer.h
- llviewermedia.h
- llviewermediafocus.h
- llviewermediaobserver.h
- llviewermenu.h
- llviewermenufile.h
- llviewermessage.h
- llviewernetwork.h
- llviewerobject.h
- llviewerobjectlist.h
- llviewerparcelmedia.h
- llviewerparcelmediaautoplay.h
- llviewerparcelmgr.h
- llviewerparceloverlay.h
- llviewerpartsim.h
- llviewerpartsource.h
- llviewerprecompiledheaders.h
- llviewerregion.h
- llviewershadermgr.h
- llviewerstats.h
- llviewertexteditor.h
- llviewertexture.h
- llviewertextureanim.h
- llviewertexturelist.h
- llviewerthrottle.h
- llviewervisualparam.h
- llviewerwindow.h
- llviewerwindowlistener.h
- llvlcomposition.h
- llvlmanager.h
- llvoavatar.h
- llvoavatardefines.h
- llvoavatarself.h
- llvocache.h
- llvoclouds.h
- llvograss.h
- llvoground.h
- llvoicechannel.h
- llvoiceclient.h
- llvoicecontrolpanel.h
- llvoiceremotectrl.h
- llvoicevisualizer.h
- llvoinventorylistener.h
- llvopartgroup.h
- llvosky.h
- llvosurfacepatch.h
- llvotextbubble.h
- llvotree.h
- llvotreenew.h
- llvovolume.h
- llvowater.h
- llvowlsky.h
- llwatchdog.h
- llwaterparammanager.h
- llwaterparamset.h
- llwearable.h
- llwearabledictionary.h
- llwearablelist.h
- llweb.h
- llwind.h
- llwindebug.h
- llwlanimator.h
- llwldaycycle.h
- llwlparammanager.h
- llwlparamset.h
- llworld.h
- llworldmap.h
- llworldmapview.h
- llxmlrpclistener.h
- llxmlrpctransaction.h
- macmain.h
- noise.h
- pipeline.h
- randgauss.h
- VertexCache.h
- VorbisFramework.h
- )
-
-source_group("CMake Rules" FILES ViewerInstall.cmake)
-
-if (DARWIN)
- LIST(APPEND viewer_SOURCE_FILES llappviewermacosx.cpp)
-
- find_library(AGL_LIBRARY AGL)
- find_library(APPKIT_LIBRARY AppKit)
- find_library(COCOA_LIBRARY Cocoa)
- find_library(IOKIT_LIBRARY IOKit)
-
- set(viewer_LIBRARIES
- ${COCOA_LIBRARY}
- ${AGL_LIBRARY}
- ${IOKIT_LIBRARY}
- )
-
- # Add resource files to the project.
- set(viewer_RESOURCE_FILES
- secondlife.icns
- macview.r
- gpu_table.txt
- Info-SecondLife.plist
- SecondLife.nib/
- # CMake doesn't seem to support Xcode language variants well just yet
- English.lproj/InfoPlist.strings
- English.lproj/language.txt
- German.lproj/language.txt
- Japanese.lproj/language.txt
- Korean.lproj/language.txt
- )
- set_source_files_properties(
- ${viewer_RESOURCE_FILES}
- PROPERTIES
- HEADER_FILE_ONLY TRUE
- #MACOSX_PACKAGE_LOCATION Resources #don't do this! this tells cmake to copy the files.
- )
- SOURCE_GROUP("Resources" FILES ${viewer_RESOURCE_FILES})
- list(APPEND viewer_SOURCE_FILES ${viewer_RESOURCE_FILES})
-endif (DARWIN)
-
-if (LINUX)
- LIST(APPEND viewer_SOURCE_FILES llappviewerlinux.cpp)
- LIST(APPEND viewer_SOURCE_FILES llappviewerlinux_api_dbus.cpp)
- SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--as-needed")
-
- set(viewer_LIBRARIES
- Xinerama
- )
-endif (LINUX)
-
-if (WINDOWS)
- list(APPEND viewer_SOURCE_FILES
- llappviewerwin32.cpp
- llwindebug.cpp
- )
-
- list(APPEND viewer_HEADER_FILES
- llappviewerwin32.h
- llwindebug.h
- )
-
- # precompiled header configuration
- # llviewerprecompiledheaders.cpp generates
- # the .pch file.
- # All sources added to viewer_SOURCE_FILES
- # at this point use it.
- set_source_files_properties(llviewerprecompiledheaders.cpp
- PROPERTIES
- COMPILE_FLAGS "/Ycllviewerprecompiledheaders.h"
- )
- foreach( src_file ${viewer_SOURCE_FILES} )
- set_source_files_properties(
- ${src_file}
- PROPERTIES
- COMPILE_FLAGS "/Yullviewerprecompiledheaders.h"
- )
- endforeach( src_file ${viewer_SOURCE_FILES} )
- list(APPEND viewer_SOURCE_FILES llviewerprecompiledheaders.cpp)
- # llstartup.cpp needs special symbols for audio libraries, so it resets
- # COMPILE_FLAGS below. Make sure it maintains precompiled header settings.
- set(LLSTARTUP_COMPILE_FLAGS
- "${LLSTARTUP_COMPILE_FLAGS} /Yullviewerprecompiledheaders.h")
-
- # Add resource files to the project.
- # viewerRes.rc is the only buildable file, but
- # the rest are all dependencies of it.
- set(viewer_RESOURCE_FILES
- res/arrow.cur
- res/arrowcop.cur
- res/arrowcopmulti.cur
- res/arrowdrag.cur
- res/circleandline.cur
- res/icon1.ico
- res/llarrow.cur
- res/llarrowdrag.cur
- res/llarrowdragmulti.cur
- res/llarrowlocked.cur
- res/llgrablocked.cur
- res/llno.cur
- res/llnolocked.cur
- res/lltoolcamera.cur
- res/lltoolcreate.cur
- res/lltoolfocus.cur
- res/lltoolgrab.cur
- res/lltoolland.cur
- res/lltoolpan.cur
- res/lltoolpipette.cur
- res/lltoolrotate.cur
- res/lltoolscale.cur
- res/lltooltranslate.cur
- res/lltoolzoomin.cur
- res/lltoolzoomout.cur
- res/ll_icon.BMP
- res/ll_icon.ico
- res/resource.h
- res/toolpickobject.cur
- res/toolpickobject2.cur
- res/toolpickobject3.cur
- res/toolpipette.cur
- )
-
- set_source_files_properties(${viewer_RESOURCE_FILES}
- PROPERTIES HEADER_FILE_ONLY TRUE)
-
- set(viewer_RESOURCE_FILES
- res/viewerRes.rc
- ${viewer_RESOURCE_FILES}
- )
-
- SOURCE_GROUP("Resource Files" FILES ${viewer_RESOURCE_FILES})
-
- if (NOT STANDALONE)
- list(APPEND viewer_SOURCE_FILES ${viewer_RESOURCE_FILES})
- endif (NOT STANDALONE)
-
- find_library(DINPUT_LIBRARY dinput8 ${DIRECTX_LIBRARY_DIR})
- find_library(DXGUID_LIBRARY dxguid ${DIRECTX_LIBRARY_DIR})
- mark_as_advanced(
- DINPUT_LIBRARY
- DXGUID_LIBRARY
- )
-
- set(viewer_LIBRARIES
- ${WINDOWS_LIBRARIES}
- comdlg32
- ${DINPUT_LIBRARY}
- ${DXGUID_LIBRARY}
- kernel32
- odbc32
- odbccp32
- ole32
- oleaut32
- opengl32
- shell32
- Vfw32
- winspool
- )
-
- find_library(INTEL_MEMOPS_LIBRARY
- NAMES ll_intel_memops
- PATHS
- optimized ${ARCH_PREBUILT_DIRS_RELEASE}
- debug ${ARCH_PREBUILT_DIRS_DEBUG}
- )
- mark_as_advanced(INTEL_MEMOPS_LIBRARY)
-
- if (INTEL_MEMOPS_LIBRARY)
- list(APPEND viewer_LIBRARIES ${INTEL_MEMOPS_LIBRARY})
- endif (INTEL_MEMOPS_LIBRARY)
-
- use_prebuilt_binary(dbghelp)
-endif (WINDOWS)
-
-# Add the xui files. This is handy for searching for xui elements
-# from within the IDE.
-set(viewer_XUI_FILES
- skins/default/colors.xml
- skins/default/textures/textures.xml
-
-
-
- )
-file(GLOB DEFAULT_XUI_FILE_GLOB_LIST
- ${CMAKE_CURRENT_SOURCE_DIR}/skins/default/xui/en/*.xml)
-list(APPEND viewer_XUI_FILES ${DEFAULT_XUI_FILE_GLOB_LIST})
-
-file(GLOB DEFAULT_WIDGET_FILE_GLOB_LIST
- ${CMAKE_CURRENT_SOURCE_DIR}/skins/default/xui/en/widgets/*.xml)
-list(APPEND viewer_XUI_FILES ${DEFAULT_WIDGET_FILE_GLOB_LIST})
-
-file(GLOB SILVER_XUI_FILE_GLOB_LIST
- ${CMAKE_CURRENT_SOURCE_DIR}/skins/silver/xui/en-us/*.xml)
-list(APPEND viewer_XUI_FILES ${SILVER_XUI_FILE_GLOB_LIST})
-
-# Cannot append empty lists in CMake, wait until we have files here.
-#file(GLOB SILVER_WIDGET_FILE_GLOB_LIST
-# ${CMAKE_CURRENT_SOURCE_DIR}/skins/silver/xui/en-us/widgets/*.xml)
-#list(APPEND viewer_XUI_FILES ${SILVER_WIDGET_FILE_GLOB_LIST})
-
-list(SORT viewer_XUI_FILES)
-
-source_group("XUI Files" FILES ${viewer_XUI_FILES})
-
-set_source_files_properties(${viewer_XUI_FILES}
- PROPERTIES HEADER_FILE_ONLY TRUE)
-
-list(APPEND viewer_SOURCE_FILES ${viewer_XUI_FILES})
-
-set(viewer_APPSETTINGS_FILES
- app_settings/anim.ini
- app_settings/cmd_line.xml
- app_settings/grass.xml
- app_settings/high_graphics.xml
- app_settings/keys.ini
- app_settings/keywords.ini
- app_settings/logcontrol.xml
- app_settings/low_graphics.xml
- app_settings/mid_graphics.xml
- app_settings/settings.xml
- app_settings/settings_crash_behavior.xml
- app_settings/settings_files.xml
- app_settings/settings_per_account.xml
- app_settings/std_bump.ini
- app_settings/trees.xml
- app_settings/ultra_graphics.xml
- app_settings/viewerart.xml
- ${CMAKE_SOURCE_DIR}/../etc/message.xml
- ${CMAKE_SOURCE_DIR}/../scripts/messages/message_template.msg
- )
-
-use_prebuilt_binary(artwork-common)
-
-source_group("App Settings" FILES ${viewer_APPSETTINGS_FILES})
-
-set_source_files_properties(${viewer_APPSETTINGS_FILES}
- PROPERTIES HEADER_FILE_ONLY TRUE)
-
-list(APPEND viewer_SOURCE_FILES ${viewer_APPSETTINGS_FILES})
-
-set(viewer_CHARACTER_FILES
- character/attentions.xml
- character/attentionsN.xml
- character/avatar_lad.xml
- character/avatar_skeleton.xml
- character/genepool.xml
- )
-
-source_group("Character File" FILES ${viewer_CHARACTER_FILES})
-
-set_source_files_properties(${viewer_CHARACTER_FILES}
- PROPERTIES HEADER_FILE_ONLY TRUE)
-if (NOT STANDALONE)
- list(APPEND viewer_SOURCE_FILES ${viewer_CHARACTER_FILES})
-endif (NOT STANDALONE)
-
-if (WINDOWS)
- file(GLOB viewer_INSTALLER_FILES installers/windows/*.nsi)
-
- source_group("Installer Files" FILES ${viewer_INSTALLER_FILES})
-
- set_source_files_properties(${viewer_INSTALLER_FILES}
- PROPERTIES HEADER_FILE_ONLY TRUE)
-
- list(APPEND viewer_SOURCE_FILES ${viewer_INSTALLER_FILES})
-endif (WINDOWS)
-
-if (OPENAL)
- set(LLSTARTUP_COMPILE_FLAGS "${LLSTARTUP_COMPILE_FLAGS} -DLL_OPENAL")
-endif (OPENAL)
-
-if (FMOD)
- set(LLSTARTUP_COMPILE_FLAGS "${LLSTARTUP_COMPILE_FLAGS} -DLL_FMOD")
-
- if (DARWIN)
- set(fmodwrapper_SOURCE_FILES fmodwrapper.cpp)
- add_library(fmodwrapper SHARED ${fmodwrapper_SOURCE_FILES})
- set(fmodwrapper_needed_LIBRARIES ${FMOD_LIBRARY} ${CARBON_LIBRARY})
- set_target_properties(
- fmodwrapper
- PROPERTIES
- BUILD_WITH_INSTALL_RPATH 1
- INSTALL_NAME_DIR "@executable_path/../Resources"
- LINK_FLAGS "-unexported_symbols_list ${CMAKE_CURRENT_SOURCE_DIR}/fmod_hidden_symbols.exp"
- )
- set(FMODWRAPPER_LIBRARY fmodwrapper)
- target_link_libraries(fmodwrapper ${fmodwrapper_needed_LIBRARIES})
- else (DARWIN)
- # fmodwrapper unnecessary on linux or windows
- set(FMODWRAPPER_LIBRARY ${FMOD_LIBRARY})
- endif (DARWIN)
-endif (FMOD)
-
-set_source_files_properties(llstartup.cpp PROPERTIES COMPILE_FLAGS "${LLSTARTUP_COMPILE_FLAGS}")
-
-list(APPEND viewer_SOURCE_FILES ${viewer_HEADER_FILES})
-
-set_source_files_properties(${viewer_HEADER_FILES}
- PROPERTIES HEADER_FILE_ONLY TRUE)
-
-add_executable(${VIEWER_BINARY_NAME}
- WIN32
- MACOSX_BUNDLE
- ${viewer_SOURCE_FILES}
- )
-check_message_template(${VIEWER_BINARY_NAME})
-
-if (LLKDU_LIBRARY)
- add_dependencies(${VIEWER_BINARY_NAME} ${LLKDU_LIBRARY})
-endif (LLKDU_LIBRARY)
-
-# add package files
-file(GLOB EVENT_HOST_SCRIPT_GLOB_LIST
- ${CMAKE_CURRENT_SOURCE_DIR}/../viewer_components/*.py)
-list(APPEND EVENT_HOST_SCRIPTS ${EVENT_HOST_SCRIPT_GLOB_LIST})
-
-set(PACKAGE OFF CACHE BOOL
- "Add a package target that builds an installer package.")
-
-if (WINDOWS)
- if(MSVC71)
- set(release_flags "/MAP:Release/${VIEWER_BINARY_NAME}.map /MAPINFO:LINES")
- else(MSVC71)
- set(release_flags "/MAP:Release/${VIEWER_BINARY_NAME}.map")
- endif(MSVC71)
-
- set_target_properties(${VIEWER_BINARY_NAME}
- PROPERTIES
- # *TODO -reenable this once we get server usage sorted out
- #LINK_FLAGS "/debug /NODEFAULTLIB:LIBCMT /SUBSYSTEM:WINDOWS /INCLUDE:\"__tcmalloc\""
- LINK_FLAGS "/debug /NODEFAULTLIB:LIBCMT /SUBSYSTEM:WINDOWS"
- LINK_FLAGS_DEBUG "/NODEFAULTLIB:\"LIBCMT;LIBCMTD;MSVCRT\" /INCREMENTAL:NO"
- LINK_FLAGS_RELEASE ${release_flags}
- )
-
- # sets the 'working directory' for debugging from visual studio.
- if (NOT UNATTENDED)
- add_custom_command(
- TARGET ${VIEWER_BINARY_NAME} PRE_BUILD
- COMMAND ${CMAKE_SOURCE_DIR}/tools/vstool/vstool.exe
- ARGS
- --solution
- ${CMAKE_BINARY_DIR}/${CMAKE_PROJECT_NAME}.sln
- --workingdir
- ${VIEWER_BINARY_NAME}
- ${CMAKE_CURRENT_SOURCE_DIR}
- COMMENT "Setting the ${VIEWER_BINARY_NAME} working directory for debugging."
- )
- endif (NOT UNATTENDED)
-
- add_custom_command(
- TARGET ${VIEWER_BINARY_NAME} PRE_BUILD
- COMMAND ${CMAKE_COMMAND}
- ARGS
- -E
- copy_if_different
- ${CMAKE_CURRENT_SOURCE_DIR}/../../scripts/messages/message_template.msg
- ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/app_settings/message_template.msg
- COMMENT "Copying message_template.msg to the runtime folder."
- )
-
- add_custom_command(
- TARGET ${VIEWER_BINARY_NAME} PRE_BUILD
- COMMAND ${CMAKE_COMMAND}
- ARGS
- -E
- copy_if_different
- ${CMAKE_CURRENT_SOURCE_DIR}/../../etc/message.xml
- ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/app_settings/message.xml
- COMMENT "Copying message.xml to the runtime folder."
- )
-
- if(WINDOWS)
- # Copy Win Libs...
- # This happens at build time, not config time. We can't glob files in this cmake.
- # *FIX:Mani Write a sub script to glob the files...
- # *FIX:Mani Use actually dependencies rather than bulk copy.
- add_custom_command(
- TARGET ${VIEWER_BINARY_NAME} PRE_BUILD
- COMMAND ${CMAKE_COMMAND}
- ARGS
- -E
- copy_directory
- ${SHARED_LIB_STAGING_DIR}/${CMAKE_CFG_INTDIR}
- ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}
- COMMENT "Copying staged dlls."
- )
-
- add_dependencies(${VIEWER_BINARY_NAME} stage_third_party_libs llcommon)
- if(LLKDU_LIBRARY)
- # kdu may not exist!
- add_dependencies(${VIEWER_BINARY_NAME} llkdu)
- endif(LLKDU_LIBRARY)
- endif(WINDOWS)
-
- if (EXISTS ${CMAKE_SOURCE_DIR}/copy_win_scripts)
- add_dependencies(${VIEWER_BINARY_NAME} copy_win_scripts)
- endif (EXISTS ${CMAKE_SOURCE_DIR}/copy_win_scripts)
-
- add_custom_command(
- OUTPUT ${CMAKE_CFG_INTDIR}/touched.bat
- COMMAND ${PYTHON_EXECUTABLE}
- ARGS
- ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
- --configuration=${CMAKE_CFG_INTDIR}
- --channel=${VIEWER_CHANNEL}
- --login_channel=${VIEWER_LOGIN_CHANNEL}
- --grid=${GRID}
- --source=${CMAKE_CURRENT_SOURCE_DIR}
- --artwork=${ARTWORK_DIR}
- --build=${CMAKE_CURRENT_BINARY_DIR}
- --dest=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}
- --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/touched.bat
- DEPENDS ${VIEWER_BINARY_NAME} ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
- )
-
- add_dependencies(${VIEWER_BINARY_NAME} SLPlugin media_plugin_quicktime media_plugin_webkit)
-
- if (PACKAGE)
- add_custom_command(
- OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/event_host.tar.bz2
- COMMAND ${PYTHON_EXECUTABLE}
- ARGS
- ${CMAKE_CURRENT_SOURCE_DIR}/event_host_manifest.py
- ${CMAKE_CURRENT_SOURCE_DIR}/..
- ${CMAKE_CURRENT_BINARY_DIR}
- ${CMAKE_CFG_INTDIR}
-
- DEPENDS
- lleventhost
- ${EVENT_HOST_SCRIPTS}
- ${CMAKE_CURRENT_SOURCE_DIR}/event_host_manifest.py)
-
- add_custom_target(package ALL
- DEPENDS
- ${CMAKE_CFG_INTDIR}/touched.bat)
- # temporarily disable packaging of event_host until hg subrepos get
- # sorted out on the parabuild cluster...
- #${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/event_host.tar.bz2)
- add_dependencies(package windows-updater windows-crash-logger)
-
-
- endif (PACKAGE)
-endif (WINDOWS)
-
-target_link_libraries(${VIEWER_BINARY_NAME}
- ${LLAUDIO_LIBRARIES}
- ${LLCHARACTER_LIBRARIES}
- ${LLIMAGE_LIBRARIES}
- ${LLIMAGEJ2COJ_LIBRARIES}
- ${LLINVENTORY_LIBRARIES}
- ${LLMESSAGE_LIBRARIES}
- ${LLPLUGIN_LIBRARIES}
- ${LLPRIMITIVE_LIBRARIES}
- ${LLRENDER_LIBRARIES}
- ${FREETYPE_LIBRARIES}
- ${LLUI_LIBRARIES}
- ${LLVFS_LIBRARIES}
- ${LLWINDOW_LIBRARIES}
- ${LLXML_LIBRARIES}
- ${LLXUIXML_LIBRARIES}
- ${LSCRIPT_LIBRARIES}
- ${LLMATH_LIBRARIES}
- ${LLCOMMON_LIBRARIES}
- ${NDOF_LIBRARY}
- ${viewer_LIBRARIES}
- ${BOOST_PROGRAM_OPTIONS_LIBRARY}
- ${BOOST_REGEX_LIBRARY}
- ${DBUSGLIB_LIBRARIES}
- ${OPENGL_LIBRARIES}
- ${FMODWRAPPER_LIBRARY}
- ${OPENGL_LIBRARIES}
- ${SDL_LIBRARY}
- ${SMARTHEAP_LIBRARY}
- ${UI_LIBRARIES}
- ${WINDOWS_LIBRARIES}
- ${XMLRPCEPI_LIBRARIES}
- ${ELFIO_LIBRARIES}
- ${LLLOGIN_LIBRARIES}
- ${GOOGLE_PERFTOOLS_LIBRARIES}
- )
-
-build_version(viewer)
-
-set(ARTWORK_DIR ${CMAKE_CURRENT_SOURCE_DIR} CACHE PATH
- "Path to artwork files.")
-
-
-if (LINUX)
- add_custom_command(
- OUTPUT secondlife-stripped
- COMMAND strip
- ARGS --strip-debug -o secondlife-stripped ${VIEWER_BINARY_NAME}
- DEPENDS ${VIEWER_BINARY_NAME}
- )
-
- set(product SecondLife-${ARCH}-${viewer_VERSION})
-
- add_custom_command(
- OUTPUT ${product}.tar.bz2
- COMMAND ${PYTHON_EXECUTABLE}
- ARGS
- ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
- --grid=${GRID}
- --channel=${VIEWER_CHANNEL}
- --login_channel=${VIEWER_LOGIN_CHANNEL}
- --installer_name=${product}
- --arch=${ARCH}
- --source=${CMAKE_CURRENT_SOURCE_DIR}
- --artwork=${ARTWORK_DIR}
- --build=${CMAKE_CURRENT_BINARY_DIR}
- --dest=${CMAKE_CURRENT_BINARY_DIR}/packaged
- --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/.${product}.touched
- DEPENDS secondlife-stripped ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
- )
-
- add_dependencies(${VIEWER_BINARY_NAME} SLPlugin media_plugin_gstreamer010 media_plugin_webkit)
-
- if (NOT INSTALL)
- add_custom_target(package ALL DEPENDS ${product}.tar.bz2)
- add_dependencies(package linux-crash-logger-strip-target)
- add_dependencies(package linux-updater-strip-target)
- endif (NOT INSTALL)
-endif (LINUX)
-
-if (DARWIN)
- set(product "Second Life")
- set_target_properties(
- ${VIEWER_BINARY_NAME}
- PROPERTIES
- OUTPUT_NAME "${product}"
- MACOSX_BUNDLE_INFO_STRING "info string - localize me"
- MACOSX_BUNDLE_ICON_FILE "secondlife.icns"
- MACOSX_BUNDLE_GUI_IDENTIFIER "Second Life"
- MACOSX_BUNDLE_LONG_VERSION_STRING "ververver"
- MACOSX_BUNDLE_BUNDLE_NAME "Second Life"
- MACOSX_BUNDLE_SHORT_VERSION_STRING "asdf"
- MACOSX_BUNDLE_BUNDLE_VERSION "asdf"
- MACOSX_BUNDLE_COPYRIGHT "copyright linden lab 2007 - localize me and run me through a legal wringer"
- )
-
- add_custom_command(
- TARGET ${VIEWER_BINARY_NAME} POST_BUILD
- COMMAND ${PYTHON_EXECUTABLE}
- ARGS
- ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
- --grid=${GRID}
- --actions=copy
- --configuration=${CMAKE_CFG_INTDIR}
- --source=${CMAKE_CURRENT_SOURCE_DIR}
- --artwork=${ARTWORK_DIR}
- --build=${CMAKE_CURRENT_BINARY_DIR}
- --dest=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${product}.app
- DEPENDS ${VIEWER_BINARY_NAME} ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
- )
-
- add_dependencies(${VIEWER_BINARY_NAME} SLPlugin media_plugin_quicktime media_plugin_webkit)
-
- if (PACKAGE)
- add_custom_target(package ALL DEPENDS ${VIEWER_BINARY_NAME})
- add_dependencies(package mac-updater mac-crash-logger)
-
- add_custom_command(
- TARGET package POST_BUILD
- COMMAND ${PYTHON_EXECUTABLE}
- ARGS
- ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
- --grid=${GRID}
- --configuration=${CMAKE_CFG_INTDIR}
- --channel=${VIEWER_CHANNEL}
- --login_channel=${VIEWER_LOGIN_CHANNEL}
- --source=${CMAKE_CURRENT_SOURCE_DIR}
- --artwork=${ARTWORK_DIR}
- --build=${CMAKE_CURRENT_BINARY_DIR}
- --dest=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${product}.app
- --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/.${product}.touched
- DEPENDS
- ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
- )
-
-
- add_custom_command(
- TARGET package POST_BUILD
- COMMAND ${PYTHON_EXECUTABLE}
- ARGS
- ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
- --grid=${GRID}
- --configuration=${CMAKE_CFG_INTDIR}
- --channel=${VIEWER_CHANNEL}
- --login_channel=${VIEWER_LOGIN_CHANNEL}
- --source=${CMAKE_CURRENT_SOURCE_DIR}
- --artwork=${ARTWORK_DIR}
- --build=${CMAKE_CURRENT_BINARY_DIR}
- --dest=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${product}.app
- --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/.${product}.touched
- DEPENDS
- ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
- )
-
- endif (PACKAGE)
-endif (DARWIN)
-
-if (INSTALL)
- include(${CMAKE_CURRENT_SOURCE_DIR}/ViewerInstall.cmake)
-endif (INSTALL)
-
-# To add a viewer unit test, just add the test .cpp file below
-# This creates a separate test project per file listed.
-include(LLAddBuildTest)
-SET(viewer_TEST_SOURCE_FILES
- llagentaccess.cpp
- lldateutil.cpp
- llmediadataclient.cpp
- llviewerhelputil.cpp
- lllogininstance.cpp
- )
-set_source_files_properties(
- ${viewer_TEST_SOURCE_FILES}
- PROPERTIES
- LL_TEST_ADDITIONAL_SOURCE_FILES llviewerprecompiledheaders.cpp
- )
-LL_ADD_PROJECT_UNIT_TESTS(${VIEWER_BINARY_NAME} "${viewer_TEST_SOURCE_FILES}")
-
-#set(TEST_DEBUG on)
-set(test_sources llcapabilitylistener.cpp llviewerprecompiledheaders.cpp)
-set(test_libs
- ${LLMESSAGE_LIBRARIES}
- ${WINDOWS_LIBRARIES}
- ${LLVFS_LIBRARIES}
- ${LLMATH_LIBRARIES}
- ${LLCOMMON_LIBRARIES}
- ${GOOGLEMOCK_LIBRARIES}
- )
-
-LL_ADD_INTEGRATION_TEST(llcapabilitylistener
- "${test_sources}"
- "${test_libs}"
- ${PYTHON_EXECUTABLE}
- "${CMAKE_SOURCE_DIR}/llmessage/tests/test_llsdmessage_peer.py"
- )
-
-#ADD_VIEWER_BUILD_TEST(llmemoryview viewer)
-
-
-# Don't do these for DARWIN or LINUX here -- they're taken care of by viewer_manifest.py
-if (WINDOWS)
- add_custom_command(
- TARGET ${VIEWER_BINARY_NAME} POST_BUILD
- COMMAND ${CMAKE_COMMAND}
- ARGS
- -E
- make_directory
- ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/llplugin
- COMMENT "Creating llplugin dir."
- )
-
- get_target_property(BUILT_SLPLUGIN SLPlugin LOCATION)
- add_custom_command(
- TARGET ${VIEWER_BINARY_NAME} POST_BUILD
- COMMAND ${CMAKE_COMMAND}
- ARGS
- -E
- copy_if_different
- ${BUILT_SLPLUGIN}
- ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}
- COMMENT "Copying SLPlugin executable to the runtime folder."
- )
-
- get_target_property(BUILT_WEBKIT_PLUGIN media_plugin_webkit LOCATION)
- add_custom_command(
- TARGET ${VIEWER_BINARY_NAME} POST_BUILD
- COMMAND ${CMAKE_COMMAND}
- ARGS
- -E
- copy_if_different
- ${BUILT_WEBKIT_PLUGIN}
- ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/llplugin
- COMMENT "Copying WebKit Plugin to the runtime folder."
- )
-
- get_target_property(BUILT_QUICKTIME_PLUGIN media_plugin_quicktime LOCATION)
- add_custom_command(
- TARGET ${VIEWER_BINARY_NAME} POST_BUILD
- COMMAND ${CMAKE_COMMAND}
- ARGS
- -E
- copy_if_different
- ${BUILT_QUICKTIME_PLUGIN}
- ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/llplugin
- COMMENT "Copying Quicktime Plugin to the runtime folder."
- )
-
- #*******************************
- # Copy media plugin support dlls
- # Debug config runtime files required for the plugins
- set(plugins_debug_src_dir "${CMAKE_SOURCE_DIR}/../libraries/i686-win32/lib/debug")
- set(plugins_debug_files
- libeay32.dll
- qtcored4.dll
- qtguid4.dll
- qtnetworkd4.dll
- qtopengld4.dll
- qtwebkitd4.dll
- ssleay32.dll
- )
- copy_if_different(
- ${plugins_debug_src_dir}
- "${CMAKE_CURRENT_BINARY_DIR}/Debug/llplugin"
- out_targets
- ${plugins_debug_files}
- )
- set(media_plugin_targets ${media_plugin_targets} ${out_targets})
-
- # Release & ReleaseDebInfo config runtime files required for the plugins
- set(plugins_release_src_dir "${CMAKE_SOURCE_DIR}/../libraries/i686-win32/lib/release")
- set(plugins_release_files
- libeay32.dll
- qtcore4.dll
- qtgui4.dll
- qtnetwork4.dll
- qtopengl4.dll
- qtwebkit4.dll
- ssleay32.dll
- )
- copy_if_different(
- ${plugins_release_src_dir}
- "${CMAKE_CURRENT_BINARY_DIR}/Release/llplugin"
- out_targets
- ${plugins_release_files}
- )
- set(media_plugin_targets ${media_plugin_targets} ${out_targets})
-
- copy_if_different(
- ${plugins_release_src_dir}
- "${CMAKE_CURRENT_BINARY_DIR}/RelWithDebInfo/llplugin"
- out_targets
- ${plugins_release_files}
- )
- set(media_plugin_targets ${media_plugin_targets} ${out_targets})
-
- add_custom_target(copy_media_plugin_libs ALL
- DEPENDS
- ${media_plugin_targets}
- )
-
- add_custom_command(
- TARGET ${VIEWER_BINARY_NAME} POST_BUILD
- COMMAND ${CMAKE_COMMAND}
- ARGS
- -E
- copy_directory
- ${CMAKE_BINARY_DIR}/test_apps/llplugintest/${CMAKE_CFG_INTDIR}/imageformats
- ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/llplugin/imageformats
- COMMENT "Copying llpluging imageformat libs."
- )
-
- add_dependencies(${VIEWER_BINARY_NAME} llmediaplugintest copy_media_plugin_libs)
-
-endif (WINDOWS)
-
+# -*- cmake -*-
+
+project(viewer)
+
+include(00-Common)
+include(Boost)
+include(BuildVersion)
+include(DBusGlib)
+include(DirectX)
+include(ELFIO)
+include(FMOD)
+include(OPENAL)
+include(FindOpenGL)
+include(LLAudio)
+include(LLCharacter)
+include(LLCommon)
+include(LLImage)
+include(LLImageJ2COJ)
+include(LLInventory)
+include(LLMath)
+include(LLMessage)
+include(LLPlugin)
+include(LLPrimitive)
+include(LLRender)
+include(LLUI)
+include(LLVFS)
+include(LLWindow)
+include(LLXML)
+include(LLXUIXML)
+include(LScript)
+include(Linking)
+include(NDOF)
+include(GooglePerfTools)
+include(TemplateCheck)
+include(UI)
+include(UnixInstall)
+include(LLKDU)
+include(ViewerMiscLibs)
+include(LLLogin)
+include(CMakeCopyIfDifferent)
+
+include_directories(
+ ${DBUSGLIB_INCLUDE_DIRS}
+ ${ELFIO_INCLUDE_DIR}
+ ${LLAUDIO_INCLUDE_DIRS}
+ ${LLCHARACTER_INCLUDE_DIRS}
+ ${LLCOMMON_INCLUDE_DIRS}
+ ${LLIMAGE_INCLUDE_DIRS}
+ ${LLINVENTORY_INCLUDE_DIRS}
+ ${LLMATH_INCLUDE_DIRS}
+ ${LLMESSAGE_INCLUDE_DIRS}
+ ${LLPLUGIN_INCLUDE_DIRS}
+ ${LLPRIMITIVE_INCLUDE_DIRS}
+ ${LLRENDER_INCLUDE_DIRS}
+ ${LLUI_INCLUDE_DIRS}
+ ${LLVFS_INCLUDE_DIRS}
+ ${LLWINDOW_INCLUDE_DIRS}
+ ${LLXML_INCLUDE_DIRS}
+ ${LLXUIXML_INCLUDE_DIRS}
+ ${LSCRIPT_INCLUDE_DIRS}
+ ${LSCRIPT_INCLUDE_DIRS}/lscript_compile
+ ${LLLOGIN_INCLUDE_DIRS}
+ )
+
+set(viewer_SOURCE_FILES
+ llaccordionctrl.cpp
+ llaccordionctrltab.cpp
+ llagent.cpp
+ llagentaccess.cpp
+ llagentdata.cpp
+ llagentlanguage.cpp
+ llagentlistener.cpp
+ llagentpicksinfo.cpp
+ llagentpilot.cpp
+ llagentui.cpp
+ llagentwearables.cpp
+ llanimstatelabels.cpp
+ llappearancemgr.cpp
+ llappviewer.cpp
+ llappviewerlistener.cpp
+ llassetuploadqueue.cpp
+ llassetuploadresponders.cpp
+ llaudiosourcevo.cpp
+ llavataractions.cpp
+ llavatariconctrl.cpp
+ llavatarlist.cpp
+ llavatarlistitem.cpp
+ llavatarpropertiesprocessor.cpp
+ llbottomtray.cpp
+ llbox.cpp
+ llbreadcrumbview.cpp
+ llcallbacklist.cpp
+ llcallingcard.cpp
+ llcapabilitylistener.cpp
+ llcaphttpsender.cpp
+ llchannelmanager.cpp
+ llchatbar.cpp
+ llchathistory.cpp
+ llchatitemscontainerctrl.cpp
+ llchatmsgbox.cpp
+ llchiclet.cpp
+ llclassifiedinfo.cpp
+ llclassifiedstatsresponder.cpp
+ llcloud.cpp
+ llcolorswatch.cpp
+ llcommandhandler.cpp
+ llcommandlineparser.cpp
+ llcompilequeue.cpp
+ llconfirmationmanager.cpp
+ llcurrencyuimanager.cpp
+ llcylinder.cpp
+ lldateutil.cpp
+ lldebugmessagebox.cpp
+ lldebugview.cpp
+ lldelayedgestureerror.cpp
+ lldirpicker.cpp
+ lldndbutton.cpp
+ lldrawable.cpp
+ lldrawpool.cpp
+ lldrawpoolalpha.cpp
+ lldrawpoolavatar.cpp
+ lldrawpoolbump.cpp
+ lldrawpoolground.cpp
+ lldrawpoolsimple.cpp
+ lldrawpoolsky.cpp
+ lldrawpoolterrain.cpp
+ lldrawpooltree.cpp
+ lldrawpoolwater.cpp
+ lldrawpoolwlsky.cpp
+ lldriverparam.cpp
+ lldynamictexture.cpp
+ llemote.cpp
+ lleventinfo.cpp
+ lleventnotifier.cpp
+ lleventpoll.cpp
+ llexpandabletextbox.cpp
+ llface.cpp
+ llfasttimerview.cpp
+ llfavoritesbar.cpp
+ llfeaturemanager.cpp
+ llfilepicker.cpp
+ llfirstuse.cpp
+ llflexibleobject.cpp
+ llfloaterabout.cpp
+ llfloateractivespeakers.cpp
+ llfloateranimpreview.cpp
+ llfloaterauction.cpp
+ llfloateravatarpicker.cpp
+ llfloateravatartextures.cpp
+ llfloaterbeacons.cpp
+ llfloaterbuildoptions.cpp
+ llfloaterbulkpermission.cpp
+ llfloaterbump.cpp
+ llfloaterbuy.cpp
+ llfloaterbuycontents.cpp
+ llfloaterbuycurrency.cpp
+ llfloaterbuyland.cpp
+ llfloatercall.cpp
+ llfloatercamera.cpp
+ llfloaterchat.cpp
+ llfloaterchatterbox.cpp
+ llfloatercolorpicker.cpp
+ llfloatercustomize.cpp
+ llfloaterdaycycle.cpp
+ llfloaterenvsettings.cpp
+ llfloaterfonttest.cpp
+ llfloaterfriends.cpp
+ llfloatergesture.cpp
+ llfloatergodtools.cpp
+ llfloatergroupinvite.cpp
+ llfloatergroups.cpp
+ llfloaterhandler.cpp
+ llfloaterhardwaresettings.cpp
+ llfloaterhelpbrowser.cpp
+ llfloaterhud.cpp
+ llfloaterimagepreview.cpp
+ llfloaterinspect.cpp
+ llfloaterinventory.cpp
+ llfloaterjoystick.cpp
+ llfloaterlagmeter.cpp
+ llfloaterland.cpp
+ llfloaterlandholdings.cpp
+ llfloatermap.cpp
+ llfloatermediabrowser.cpp
+ llfloatermediasettings.cpp
+ llfloatermemleak.cpp
+ llfloaternamedesc.cpp
+ llfloaternotificationsconsole.cpp
+ llfloateropenobject.cpp
+ llfloaterparcel.cpp
+ llfloaterpay.cpp
+ llfloaterperms.cpp
+ llfloaterpostcard.cpp
+ llfloaterpostprocess.cpp
+ llfloaterpreference.cpp
+ llfloaterproperties.cpp
+ llfloaterregioninfo.cpp
+ llfloaterreporter.cpp
+ llfloaterscriptdebug.cpp
+ llfloatersearch.cpp
+ llfloatersellland.cpp
+ llfloatersettingsdebug.cpp
+ llfloatersnapshot.cpp
+ llfloatertelehub.cpp
+ llfloatertestinspectors.cpp
+ llfloatertestlistview.cpp
+ llfloatertools.cpp
+ llfloatertopobjects.cpp
+ llfloatertos.cpp
+ llfloateruipreview.cpp
+ llfloaterurldisplay.cpp
+ llfloaterurlentry.cpp
+ llfloatervoicedevicesettings.cpp
+ llfloaterwater.cpp
+ llfloaterwhitelistentry.cpp
+ llfloaterwindlight.cpp
+ llfloaterworldmap.cpp
+ llfoldertype.cpp
+ llfolderview.cpp
+ llfolderviewitem.cpp
+ llfollowcam.cpp
+ llfriendcard.cpp
+ llgesturemgr.cpp
+ llglsandbox.cpp
+ llgroupactions.cpp
+ llgrouplist.cpp
+ llgroupmgr.cpp
+ llgroupnotify.cpp
+ llhomelocationresponder.cpp
+ llhudeffect.cpp
+ llhudeffectbeam.cpp
+ llhudeffectlookat.cpp
+ llhudeffectpointat.cpp
+ llhudeffecttrail.cpp
+ llhudicon.cpp
+ llhudmanager.cpp
+ llhudobject.cpp
+ llhudrender.cpp
+ llhudtext.cpp
+ llhudview.cpp
+ llimcontrolpanel.cpp
+ llimfloater.cpp
+ llimhandler.cpp
+ llimpanel.cpp
+ llimview.cpp
+ llinspect.cpp
+ llinspectavatar.cpp
+ llinspectgroup.cpp
+ llinspectobject.cpp
+ llinventorybridge.cpp
+ llinventoryclipboard.cpp
+ llinventoryfilter.cpp
+ llinventoryfunctions.cpp
+ llinventorymodel.cpp
+ llinventorypanel.cpp
+ llinventorysubtreepanel.cpp
+ lljoystickbutton.cpp
+ lllandmarkactions.cpp
+ lllandmarklist.cpp
+ lllistbrowser.cpp
+ lllistview.cpp
+ lllocaltextureobject.cpp
+ lllocationhistory.cpp
+ lllocationinputctrl.cpp
+ lllogchat.cpp
+ llloginhandler.cpp
+ lllogininstance.cpp
+ llmanip.cpp
+ llmaniprotate.cpp
+ llmanipscale.cpp
+ llmaniptranslate.cpp
+ llmapresponders.cpp
+ llmediactrl.cpp
+ llmediadataclient.cpp
+ llmediaremotectrl.cpp
+ llmemoryview.cpp
+ llmenucommands.cpp
+ llmetricperformancetester.cpp
+ llmimetypes.cpp
+ llmorphview.cpp
+ llmoveview.cpp
+ llmutelist.cpp
+ llnamebox.cpp
+ llnameeditor.cpp
+ llnamelistctrl.cpp
+ llnavigationbar.cpp
+ llnearbychat.cpp
+ llnearbychatbar.cpp
+ llnearbychathandler.cpp
+ llnetmap.cpp
+ llnotificationalerthandler.cpp
+ llnotificationgrouphandler.cpp
+ llnotificationmanager.cpp
+ llnotificationscripthandler.cpp
+ llnotificationtiphandler.cpp
+ llnotify.cpp
+ lloutputmonitorctrl.cpp
+ lloverlaybar.cpp
+ llpanelappearance.cpp
+ llpanelappearancetab.cpp
+ llpanelavatar.cpp
+ llpanelavatarrow.cpp
+ llpanelavatartag.cpp
+ llpanelblockedlist.cpp
+ llpanelclassified.cpp
+ llpanelcontents.cpp
+ llpaneleditwearable.cpp
+ llpanelevent.cpp
+ llpanelface.cpp
+ llpanelgroup.cpp
+ llpanelgroupgeneral.cpp
+ llpanelgroupinvite.cpp
+ llpanelgrouplandmoney.cpp
+ llpanelgroupnotices.cpp
+ llpanelgrouproles.cpp
+ llpanelimcontrolpanel.cpp
+ llpanelland.cpp
+ llpanellandaudio.cpp
+ llpanellandmarks.cpp
+ llpanellandmedia.cpp
+ llpanellogin.cpp
+ llpanellookinfo.cpp
+ llpanellooks.cpp
+ llpanelmaininventory.cpp
+ llpanelmedia.cpp
+ llpanelmediasettingsgeneral.cpp
+ llpanelmediasettingspermissions.cpp
+ llpanelmediasettingssecurity.cpp
+ llpanelmeprofile.cpp
+ llpanelobject.cpp
+ llpanelobjectinventory.cpp
+ llpanelpeople.cpp
+ llpanelpeoplemenus.cpp
+ llpanelpermissions.cpp
+ llpanelpick.cpp
+ llpanelpicks.cpp
+ llpanelplace.cpp
+ llpanelplaceinfo.cpp
+ llpanelplaces.cpp
+ llpanelplacestab.cpp
+ llpanelprimmediacontrols.cpp
+ llpanelprofile.cpp
+ llpanelprofileview.cpp
+ llpanelshower.cpp
+ llpanelteleporthistory.cpp
+ llpanelvolume.cpp
+ llparcelselection.cpp
+ llparticipantlist.cpp
+ llpatchvertexarray.cpp
+ llplacesinventorybridge.cpp
+ llpolymesh.cpp
+ llpolymorph.cpp
+ llpreview.cpp
+ llpreviewanim.cpp
+ llpreviewgesture.cpp
+ llpreviewnotecard.cpp
+ llpreviewscript.cpp
+ llpreviewsound.cpp
+ llpreviewtexture.cpp
+ llproductinforequest.cpp
+ llprogressview.cpp
+ llrecentpeople.cpp
+ llregionposition.cpp
+ llremoteparcelrequest.cpp
+ llsavedsettingsglue.cpp
+ llscreenchannel.cpp
+ llscrollingpanelparam.cpp
+ llsearchcombobox.cpp
+ llsearchhistory.cpp
+ llselectmgr.cpp
+ llsidepanelinventory.cpp
+ llsidepanelobjectinfo.cpp
+ llsidetray.cpp
+ llsidetraypanelcontainer.cpp
+ llsky.cpp
+ llslurl.cpp
+ llspatialpartition.cpp
+ llspeakers.cpp
+ llsplitbutton.cpp
+ llsprite.cpp
+ llstartup.cpp
+ llstatusbar.cpp
+ llstylemap.cpp
+ llsurface.cpp
+ llsurfacepatch.cpp
+ llsyswellitem.cpp
+ llsyswellwindow.cpp
+ llteleporthistory.cpp
+ llteleporthistorystorage.cpp
+ lltexglobalcolor.cpp
+ lltexlayer.cpp
+ lltexlayerparams.cpp
+ lltextureatlas.cpp
+ lltextureatlasmanager.cpp
+ lltexturecache.cpp
+ lltexturectrl.cpp
+ lltexturefetch.cpp
+ lltextureview.cpp
+ lltoast.cpp
+ lltoastalertpanel.cpp
+ lltoastgroupnotifypanel.cpp
+ lltoastimpanel.cpp
+ lltoastnotifypanel.cpp
+ lltoastpanel.cpp
+ lltool.cpp
+ lltoolbar.cpp
+ lltoolbrush.cpp
+ lltoolcomp.cpp
+ lltooldraganddrop.cpp
+ lltoolface.cpp
+ lltoolfocus.cpp
+ lltoolgrab.cpp
+ lltoolgun.cpp
+ lltoolindividual.cpp
+ lltoolmgr.cpp
+ lltoolmorph.cpp
+ lltoolobjpicker.cpp
+ lltoolpie.cpp
+ lltoolpipette.cpp
+ lltoolplacer.cpp
+ lltoolselect.cpp
+ lltoolselectland.cpp
+ lltoolselectrect.cpp
+ lltracker.cpp
+ lltransientdockablefloater.cpp
+ lltransientfloatermgr.cpp
+ lluilistener.cpp
+ lluploaddialog.cpp
+ llurl.cpp
+ llurldispatcher.cpp
+ llurlhistory.cpp
+ llurllineeditorctrl.cpp
+ llurlsimstring.cpp
+ llurlwhitelist.cpp
+ llvectorperfoptions.cpp
+ llviewchildren.cpp
+ llviewerassetstorage.cpp
+ llvieweraudio.cpp
+ llviewercamera.cpp
+ llviewercontrol.cpp
+ llviewercontrollistener.cpp
+ llviewerdisplay.cpp
+ llviewerfloaterreg.cpp
+ llviewergenericmessage.cpp
+ llviewergesture.cpp
+ llviewerhelp.cpp
+ llviewerhelputil.cpp
+ llviewerinventory.cpp
+ llviewerjoint.cpp
+ llviewerjointattachment.cpp
+ llviewerjointmesh.cpp
+ llviewerjointmesh_sse.cpp
+ llviewerjointmesh_sse2.cpp
+ llviewerjointmesh_vec.cpp
+ llviewerjoystick.cpp
+ llviewerkeyboard.cpp
+ llviewerlayer.cpp
+ llviewermedia.cpp
+ llviewermedia_streamingaudio.cpp
+ llviewermediafocus.cpp
+ llviewermenu.cpp
+ llviewermenufile.cpp
+ llviewermessage.cpp
+ llviewernetwork.cpp
+ llviewerobject.cpp
+ llviewerobjectlist.cpp
+ llviewerparcelmedia.cpp
+ llviewerparcelmediaautoplay.cpp
+ llviewerparcelmgr.cpp
+ llviewerparceloverlay.cpp
+ llviewerpartsim.cpp
+ llviewerpartsource.cpp
+ llviewerregion.cpp
+ llviewershadermgr.cpp
+ llviewerstats.cpp
+ llviewertexteditor.cpp
+ llviewertexture.cpp
+ llviewertextureanim.cpp
+ llviewertexturelist.cpp
+ llviewerthrottle.cpp
+ llviewervisualparam.cpp
+ llviewerwindow.cpp
+ llviewerwindowlistener.cpp
+ llvlcomposition.cpp
+ llvlmanager.cpp
+ llvoavatar.cpp
+ llvoavatardefines.cpp
+ llvoavatarself.cpp
+ llvocache.cpp
+ llvoclouds.cpp
+ llvograss.cpp
+ llvoground.cpp
+ llvoicechannel.cpp
+ llvoiceclient.cpp
+ llvoicecontrolpanel.cpp
+ llvoiceremotectrl.cpp
+ llvoicevisualizer.cpp
+ llvoinventorylistener.cpp
+ llvopartgroup.cpp
+ llvosky.cpp
+ llvosurfacepatch.cpp
+ llvotextbubble.cpp
+ llvotree.cpp
+ llvovolume.cpp
+ llvowater.cpp
+ llvowlsky.cpp
+ llwatchdog.cpp
+ llwaterparammanager.cpp
+ llwaterparamset.cpp
+ llwearable.cpp
+ llwearabledictionary.cpp
+ llwearablelist.cpp
+ llweb.cpp
+ llwind.cpp
+ llwlanimator.cpp
+ llwldaycycle.cpp
+ llwlparammanager.cpp
+ llwlparamset.cpp
+ llworld.cpp
+ llworldmap.cpp
+ llworldmapview.cpp
+ llxmlrpclistener.cpp
+ llxmlrpctransaction.cpp
+ noise.cpp
+ pipeline.cpp
+ )
+
+set(VIEWER_BINARY_NAME "secondlife-bin" CACHE STRING
+ "The name of the viewer executable to create.")
+
+if (LINUX)
+ # We can't set these flags for Darwin, because they get passed to
+ # the PPC compiler. Ugh.
+
+ set_source_files_properties(
+ llviewerjointmesh_sse.cpp
+ PROPERTIES COMPILE_FLAGS "-msse -mfpmath=sse"
+ )
+ set_source_files_properties(
+ llviewerjointmesh_sse2.cpp
+ PROPERTIES COMPILE_FLAGS "-msse2 -mfpmath=sse"
+ )
+endif (LINUX)
+
+set(viewer_HEADER_FILES
+ CMakeLists.txt
+ ViewerInstall.cmake
+ llaccordionctrl.h
+ llaccordionctrltab.h
+ llagent.h
+ llagentaccess.h
+ llagentdata.h
+ llagentlanguage.h
+ llagentlistener.h
+ llagentpicksinfo.h
+ llagentpilot.h
+ llagentui.h
+ llagentwearables.h
+ llanimstatelabels.h
+ llappearance.h
+ llappearancemgr.h
+ llappviewer.h
+ llappviewerlistener.h
+ llassetuploadqueue.h
+ llassetuploadresponders.h
+ llaudiosourcevo.h
+ llavataractions.h
+ llavatariconctrl.h
+ llavatarlist.h
+ llavatarlistitem.h
+ llavatarpropertiesprocessor.h
+ llbottomtray.h
+ llbox.h
+ llbreadcrumbview.h
+ llcallbacklist.h
+ llcallingcard.h
+ llcapabilitylistener.h
+ llcapabilityprovider.h
+ llcaphttpsender.h
+ llchannelmanager.h
+ llchatbar.h
+ llchathistory.h
+ llchatitemscontainerctrl.h
+ llchatmsgbox.h
+ llchiclet.h
+ llclassifiedinfo.h
+ llclassifiedstatsresponder.h
+ llcloud.h
+ llcolorswatch.h
+ llcommandhandler.h
+ llcommandlineparser.h
+ llcompilequeue.h
+ llconfirmationmanager.h
+ llcurrencyuimanager.h
+ llcylinder.h
+ lldateutil.h
+ lldebugmessagebox.h
+ lldebugview.h
+ lldelayedgestureerror.h
+ lldirpicker.h
+ lldndbutton.h
+ lldrawable.h
+ lldrawpool.h
+ lldrawpoolalpha.h
+ lldrawpoolavatar.h
+ lldrawpoolbump.h
+ lldrawpoolclouds.h
+ lldrawpoolground.h
+ lldrawpoolsimple.h
+ lldrawpoolsky.h
+ lldrawpoolterrain.h
+ lldrawpooltree.h
+ lldrawpoolwater.h
+ lldrawpoolwlsky.h
+ lldriverparam.h
+ lldynamictexture.h
+ llemote.h
+ lleventinfo.h
+ lleventnotifier.h
+ lleventpoll.h
+ llexpandabletextbox.h
+ llface.h
+ llfasttimerview.h
+ llfavoritesbar.h
+ llfeaturemanager.h
+ llfilepicker.h
+ llfirstuse.h
+ llflexibleobject.h
+ llfloaterabout.h
+ llfloateractivespeakers.h
+ llfloateranimpreview.h
+ llfloaterauction.h
+ llfloateravatarpicker.h
+ llfloateravatartextures.h
+ llfloaterbeacons.h
+ llfloaterbuildoptions.h
+ llfloaterbulkpermission.h
+ llfloaterbump.h
+ llfloaterbuy.h
+ llfloaterbuycontents.h
+ llfloaterbuycurrency.h
+ llfloaterbuyland.h
+ llfloatercall.h
+ llfloatercamera.h
+ llfloaterchat.h
+ llfloaterchatterbox.h
+ llfloatercolorpicker.h
+ llfloatercustomize.h
+ llfloaterdaycycle.h
+ llfloaterenvsettings.h
+ llfloaterfonttest.h
+ llfloaterfriends.h
+ llfloatergesture.h
+ llfloatergodtools.h
+ llfloatergroupinvite.h
+ llfloatergroups.h
+ llfloaterhandler.h
+ llfloaterhardwaresettings.h
+ llfloaterhelpbrowser.h
+ llfloaterhud.h
+ llfloaterimagepreview.h
+ llfloaterinspect.h
+ llfloaterinventory.h
+ llfloaterjoystick.h
+ llfloaterlagmeter.h
+ llfloaterland.h
+ llfloaterlandholdings.h
+ llfloatermap.h
+ llfloatermediabrowser.h
+ llfloatermediasettings.h
+ llfloatermemleak.h
+ llfloaternamedesc.h
+ llfloaternotificationsconsole.h
+ llfloateropenobject.h
+ llfloaterparcel.h
+ llfloaterpay.h
+ llfloaterperms.h
+ llfloaterpostcard.h
+ llfloaterpostprocess.h
+ llfloaterpreference.h
+ llfloaterproperties.h
+ llfloaterregioninfo.h
+ llfloaterreporter.h
+ llfloaterscriptdebug.h
+ llfloatersearch.h
+ llfloatersellland.h
+ llfloatersettingsdebug.h
+ llfloatersnapshot.h
+ llfloatertelehub.h
+ llfloatertestinspectors.h
+ llfloatertestlistview.h
+ llfloatertools.h
+ llfloatertopobjects.h
+ llfloatertos.h
+ llfloateruipreview.h
+ llfloaterurldisplay.h
+ llfloaterurlentry.h
+ llfloatervoicedevicesettings.h
+ llfloaterwater.h
+ llfloaterwhitelistentry.h
+ llfloaterwindlight.h
+ llfloaterworldmap.h
+ llfoldertype.h
+ llfolderview.h
+ llfoldervieweventlistener.h
+ llfolderviewitem.h
+ llfollowcam.h
+ llfriendcard.h
+ llgesturemgr.h
+ llgroupactions.h
+ llgrouplist.h
+ llgroupmgr.h
+ llgroupnotify.h
+ llhomelocationresponder.h
+ llhudeffect.h
+ llhudeffectbeam.h
+ llhudeffectlookat.h
+ llhudeffectpointat.h
+ llhudeffecttrail.h
+ llhudicon.h
+ llhudmanager.h
+ llhudobject.h
+ llhudrender.h
+ llhudtext.h
+ llhudview.h
+ llimcontrolpanel.h
+ llimfloater.h
+ llimpanel.h
+ llimview.h
+ llinspect.h
+ llinspectavatar.h
+ llinspectgroup.h
+ llinspectobject.h
+ llinventorybridge.h
+ llinventoryclipboard.h
+ llinventoryfilter.h
+ llinventoryfunctions.h
+ llinventorymodel.h
+ llinventorypanel.h
+ llinventorysubtreepanel.h
+ lljoystickbutton.h
+ lllandmarkactions.h
+ lllandmarklist.h
+ lllightconstants.h
+ lllistbrowser.h
+ lllistview.h
+ lllocaltextureobject.h
+ lllocationhistory.h
+ lllocationinputctrl.h
+ lllogchat.h
+ llloginhandler.h
+ lllogininstance.h
+ llmanip.h
+ llmaniprotate.h
+ llmanipscale.h
+ llmaniptranslate.h
+ llmapresponders.h
+ llmediactrl.h
+ llmediadataclient.h
+ llmediaremotectrl.h
+ llmemoryview.h
+ llmenucommands.h
+ llmetricperformancetester.h
+ llmimetypes.h
+ llmorphview.h
+ llmoveview.h
+ llmutelist.h
+ llnamebox.h
+ llnameeditor.h
+ llnamelistctrl.h
+ llnavigationbar.h
+ llnearbychat.h
+ llnearbychatbar.h
+ llnearbychathandler.h
+ llnetmap.h
+ llnotificationhandler.h
+ llnotificationmanager.h
+ llnotify.h
+ lloutputmonitorctrl.h
+ lloverlaybar.h
+ llpanelappearance.h
+ llpanelappearancetab.h
+ llpanelavatar.h
+ llpanelavatarrow.h
+ llpanelavatartag.h
+ llpanelblockedlist.h
+ llpanelclassified.h
+ llpanelcontents.h
+ llpaneleditwearable.h
+ llpanelevent.h
+ llpanelface.h
+ llpanelgroup.h
+ llpanelgroupgeneral.h
+ llpanelgroupinvite.h
+ llpanelgrouplandmoney.h
+ llpanelgroupnotices.h
+ llpanelgrouproles.h
+ llpanelimcontrolpanel.h
+ llpanelinventory.h
+ llpanelland.h
+ llpanellandaudio.h
+ llpanellandmarks.h
+ llpanellandmedia.h
+ llpanellogin.h
+ llpanellookinfo.h
+ llpanellooks.h
+ llpanelmaininventory.h
+ llpanelmedia.h
+ llpanelmediasettingsgeneral.h
+ llpanelmediasettingspermissions.h
+ llpanelmediasettingssecurity.h
+ llpanelmeprofile.h
+ llpanelobject.h
+ llpanelobjectinventory.h
+ llpanelpeople.h
+ llpanelpeoplemenus.h
+ llpanelpermissions.h
+ llpanelpick.h
+ llpanelpicks.h
+ llpanelplace.h
+ llpanelplaceinfo.h
+ llpanelplaces.h
+ llpanelplacestab.h
+ llpanelprimmediacontrols.h
+ llpanelprofile.h
+ llpanelprofileview.h
+ llpanelshower.h
+ llpanelteleporthistory.h
+ llpanelvolume.h
+ llparcelselection.h
+ llparticipantlist.h
+ llpatchvertexarray.h
+ llplacesinventorybridge.h
+ llpolymesh.h
+ llpolymorph.h
+ llpreview.h
+ llpreviewanim.h
+ llpreviewgesture.h
+ llpreviewnotecard.h
+ llpreviewscript.h
+ llpreviewsound.h
+ llpreviewtexture.h
+ llproductinforequest.h
+ llprogressview.h
+ llrecentpeople.h
+ llregionposition.h
+ llremoteparcelrequest.h
+ llresourcedata.h
+ llrootview.h
+ llsavedsettingsglue.h
+ llscreenchannel.h
+ llscrollingpanelparam.h
+ llsearchcombobox.h
+ llsearchhistory.h
+ llselectmgr.h
+ llsidepanelinventory.h
+ llsidepanelobjectinfo.h
+ llsidetray.h
+ llsidetraypanelcontainer.h
+ llsky.h
+ llslurl.h
+ llspatialpartition.h
+ llspeakers.h
+ llsplitbutton.h
+ llsprite.h
+ llstartup.h
+ llstatusbar.h
+ llstylemap.h
+ llsurface.h
+ llsurfacepatch.h
+ llsyswellitem.h
+ llsyswellwindow.h
+ lltable.h
+ llteleporthistory.h
+ llteleporthistorystorage.h
+ lltexglobalcolor.h
+ lltexlayer.h
+ lltexlayerparams.h
+ lltextureatlas.h
+ lltextureatlasmanager.h
+ lltexturecache.h
+ lltexturectrl.h
+ lltexturefetch.h
+ lltextureview.h
+ lltoast.h
+ lltoastalertpanel.h
+ lltoastgroupnotifypanel.h
+ lltoastimpanel.h
+ lltoastnotifypanel.h
+ lltoastpanel.h
+ lltool.h
+ lltoolbar.h
+ lltoolbrush.h
+ lltoolcomp.h
+ lltooldraganddrop.h
+ lltoolface.h
+ lltoolfocus.h
+ lltoolgrab.h
+ lltoolgun.h
+ lltoolindividual.h
+ lltoolmgr.h
+ lltoolmorph.h
+ lltoolobjpicker.h
+ lltoolpie.h
+ lltoolpipette.h
+ lltoolplacer.h
+ lltoolselect.h
+ lltoolselectland.h
+ lltoolselectrect.h
+ lltracker.h
+ lltransientdockablefloater.h
+ lltransientfloatermgr.h
+ lluiconstants.h
+ lluilistener.h
+ lluploaddialog.h
+ llurl.h
+ llurldispatcher.h
+ llurlhistory.h
+ llurllineeditorctrl.h
+ llurlsimstring.h
+ llurlwhitelist.h
+ llvectorperfoptions.h
+ llviewchildren.h
+ llviewerassetstorage.h
+ llvieweraudio.h
+ llviewerbuild.h
+ llviewercamera.h
+ llviewercontrol.h
+ llviewercontrollistener.h
+ llviewerdisplay.h
+ llviewerfloaterreg.h
+ llviewergenericmessage.h
+ llviewergesture.h
+ llviewerhelp.h
+ llviewerinventory.h
+ llviewerjoint.h
+ llviewerjointattachment.h
+ llviewerjointmesh.h
+ llviewerjoystick.h
+ llviewerkeyboard.h
+ llviewerlayer.h
+ llviewermedia.h
+ llviewermediafocus.h
+ llviewermediaobserver.h
+ llviewermenu.h
+ llviewermenufile.h
+ llviewermessage.h
+ llviewernetwork.h
+ llviewerobject.h
+ llviewerobjectlist.h
+ llviewerparcelmedia.h
+ llviewerparcelmediaautoplay.h
+ llviewerparcelmgr.h
+ llviewerparceloverlay.h
+ llviewerpartsim.h
+ llviewerpartsource.h
+ llviewerprecompiledheaders.h
+ llviewerregion.h
+ llviewershadermgr.h
+ llviewerstats.h
+ llviewertexteditor.h
+ llviewertexture.h
+ llviewertextureanim.h
+ llviewertexturelist.h
+ llviewerthrottle.h
+ llviewervisualparam.h
+ llviewerwindow.h
+ llviewerwindowlistener.h
+ llvlcomposition.h
+ llvlmanager.h
+ llvoavatar.h
+ llvoavatardefines.h
+ llvoavatarself.h
+ llvocache.h
+ llvoclouds.h
+ llvograss.h
+ llvoground.h
+ llvoicechannel.h
+ llvoiceclient.h
+ llvoicecontrolpanel.h
+ llvoiceremotectrl.h
+ llvoicevisualizer.h
+ llvoinventorylistener.h
+ llvopartgroup.h
+ llvosky.h
+ llvosurfacepatch.h
+ llvotextbubble.h
+ llvotree.h
+ llvotreenew.h
+ llvovolume.h
+ llvowater.h
+ llvowlsky.h
+ llwatchdog.h
+ llwaterparammanager.h
+ llwaterparamset.h
+ llwearable.h
+ llwearabledictionary.h
+ llwearablelist.h
+ llweb.h
+ llwind.h
+ llwindebug.h
+ llwlanimator.h
+ llwldaycycle.h
+ llwlparammanager.h
+ llwlparamset.h
+ llworld.h
+ llworldmap.h
+ llworldmapview.h
+ llxmlrpclistener.h
+ llxmlrpctransaction.h
+ macmain.h
+ noise.h
+ pipeline.h
+ randgauss.h
+ VertexCache.h
+ VorbisFramework.h
+ )
+
+source_group("CMake Rules" FILES ViewerInstall.cmake)
+
+if (DARWIN)
+ LIST(APPEND viewer_SOURCE_FILES llappviewermacosx.cpp)
+
+ find_library(AGL_LIBRARY AGL)
+ find_library(APPKIT_LIBRARY AppKit)
+ find_library(COCOA_LIBRARY Cocoa)
+ find_library(IOKIT_LIBRARY IOKit)
+
+ set(viewer_LIBRARIES
+ ${COCOA_LIBRARY}
+ ${AGL_LIBRARY}
+ ${IOKIT_LIBRARY}
+ )
+
+ # Add resource files to the project.
+ set(viewer_RESOURCE_FILES
+ secondlife.icns
+ macview.r
+ gpu_table.txt
+ Info-SecondLife.plist
+ SecondLife.nib/
+ # CMake doesn't seem to support Xcode language variants well just yet
+ English.lproj/InfoPlist.strings
+ English.lproj/language.txt
+ German.lproj/language.txt
+ Japanese.lproj/language.txt
+ Korean.lproj/language.txt
+ )
+ set_source_files_properties(
+ ${viewer_RESOURCE_FILES}
+ PROPERTIES
+ HEADER_FILE_ONLY TRUE
+ #MACOSX_PACKAGE_LOCATION Resources #don't do this! this tells cmake to copy the files.
+ )
+ SOURCE_GROUP("Resources" FILES ${viewer_RESOURCE_FILES})
+ list(APPEND viewer_SOURCE_FILES ${viewer_RESOURCE_FILES})
+endif (DARWIN)
+
+if (LINUX)
+ LIST(APPEND viewer_SOURCE_FILES llappviewerlinux.cpp)
+ LIST(APPEND viewer_SOURCE_FILES llappviewerlinux_api_dbus.cpp)
+ SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--as-needed")
+
+ set(viewer_LIBRARIES
+ Xinerama
+ )
+endif (LINUX)
+
+if (WINDOWS)
+ list(APPEND viewer_SOURCE_FILES
+ llappviewerwin32.cpp
+ llwindebug.cpp
+ )
+
+ list(APPEND viewer_HEADER_FILES
+ llappviewerwin32.h
+ llwindebug.h
+ )
+
+ # precompiled header configuration
+ # llviewerprecompiledheaders.cpp generates
+ # the .pch file.
+ # All sources added to viewer_SOURCE_FILES
+ # at this point use it.
+ set_source_files_properties(llviewerprecompiledheaders.cpp
+ PROPERTIES
+ COMPILE_FLAGS "/Ycllviewerprecompiledheaders.h"
+ )
+ foreach( src_file ${viewer_SOURCE_FILES} )
+ set_source_files_properties(
+ ${src_file}
+ PROPERTIES
+ COMPILE_FLAGS "/Yullviewerprecompiledheaders.h"
+ )
+ endforeach( src_file ${viewer_SOURCE_FILES} )
+ list(APPEND viewer_SOURCE_FILES llviewerprecompiledheaders.cpp)
+ # llstartup.cpp needs special symbols for audio libraries, so it resets
+ # COMPILE_FLAGS below. Make sure it maintains precompiled header settings.
+ set(LLSTARTUP_COMPILE_FLAGS
+ "${LLSTARTUP_COMPILE_FLAGS} /Yullviewerprecompiledheaders.h")
+
+ # Add resource files to the project.
+ # viewerRes.rc is the only buildable file, but
+ # the rest are all dependencies of it.
+ set(viewer_RESOURCE_FILES
+ res/arrow.cur
+ res/arrowcop.cur
+ res/arrowcopmulti.cur
+ res/arrowdrag.cur
+ res/circleandline.cur
+ res/icon1.ico
+ res/llarrow.cur
+ res/llarrowdrag.cur
+ res/llarrowdragmulti.cur
+ res/llarrowlocked.cur
+ res/llgrablocked.cur
+ res/llno.cur
+ res/llnolocked.cur
+ res/lltoolcamera.cur
+ res/lltoolcreate.cur
+ res/lltoolfocus.cur
+ res/lltoolgrab.cur
+ res/lltoolland.cur
+ res/lltoolpan.cur
+ res/lltoolpipette.cur
+ res/lltoolrotate.cur
+ res/lltoolscale.cur
+ res/lltooltranslate.cur
+ res/lltoolzoomin.cur
+ res/lltoolzoomout.cur
+ res/ll_icon.BMP
+ res/ll_icon.ico
+ res/resource.h
+ res/toolpickobject.cur
+ res/toolpickobject2.cur
+ res/toolpickobject3.cur
+ res/toolpipette.cur
+ )
+
+ set_source_files_properties(${viewer_RESOURCE_FILES}
+ PROPERTIES HEADER_FILE_ONLY TRUE)
+
+ set(viewer_RESOURCE_FILES
+ res/viewerRes.rc
+ ${viewer_RESOURCE_FILES}
+ )
+
+ SOURCE_GROUP("Resource Files" FILES ${viewer_RESOURCE_FILES})
+
+ if (NOT STANDALONE)
+ list(APPEND viewer_SOURCE_FILES ${viewer_RESOURCE_FILES})
+ endif (NOT STANDALONE)
+
+ find_library(DINPUT_LIBRARY dinput8 ${DIRECTX_LIBRARY_DIR})
+ find_library(DXGUID_LIBRARY dxguid ${DIRECTX_LIBRARY_DIR})
+ mark_as_advanced(
+ DINPUT_LIBRARY
+ DXGUID_LIBRARY
+ )
+
+ set(viewer_LIBRARIES
+ ${WINDOWS_LIBRARIES}
+ comdlg32
+ ${DINPUT_LIBRARY}
+ ${DXGUID_LIBRARY}
+ kernel32
+ odbc32
+ odbccp32
+ ole32
+ oleaut32
+ opengl32
+ shell32
+ Vfw32
+ winspool
+ )
+
+ find_library(INTEL_MEMOPS_LIBRARY
+ NAMES ll_intel_memops
+ PATHS
+ optimized ${ARCH_PREBUILT_DIRS_RELEASE}
+ debug ${ARCH_PREBUILT_DIRS_DEBUG}
+ )
+ mark_as_advanced(INTEL_MEMOPS_LIBRARY)
+
+ if (INTEL_MEMOPS_LIBRARY)
+ list(APPEND viewer_LIBRARIES ${INTEL_MEMOPS_LIBRARY})
+ endif (INTEL_MEMOPS_LIBRARY)
+
+ use_prebuilt_binary(dbghelp)
+endif (WINDOWS)
+
+# Add the xui files. This is handy for searching for xui elements
+# from within the IDE.
+set(viewer_XUI_FILES
+ skins/default/colors.xml
+ skins/default/textures/textures.xml
+
+
+
+ )
+file(GLOB DEFAULT_XUI_FILE_GLOB_LIST
+ ${CMAKE_CURRENT_SOURCE_DIR}/skins/default/xui/en/*.xml)
+list(APPEND viewer_XUI_FILES ${DEFAULT_XUI_FILE_GLOB_LIST})
+
+file(GLOB DEFAULT_WIDGET_FILE_GLOB_LIST
+ ${CMAKE_CURRENT_SOURCE_DIR}/skins/default/xui/en/widgets/*.xml)
+list(APPEND viewer_XUI_FILES ${DEFAULT_WIDGET_FILE_GLOB_LIST})
+
+file(GLOB SILVER_XUI_FILE_GLOB_LIST
+ ${CMAKE_CURRENT_SOURCE_DIR}/skins/silver/xui/en-us/*.xml)
+list(APPEND viewer_XUI_FILES ${SILVER_XUI_FILE_GLOB_LIST})
+
+# Cannot append empty lists in CMake, wait until we have files here.
+#file(GLOB SILVER_WIDGET_FILE_GLOB_LIST
+# ${CMAKE_CURRENT_SOURCE_DIR}/skins/silver/xui/en-us/widgets/*.xml)
+#list(APPEND viewer_XUI_FILES ${SILVER_WIDGET_FILE_GLOB_LIST})
+
+list(SORT viewer_XUI_FILES)
+
+source_group("XUI Files" FILES ${viewer_XUI_FILES})
+
+set_source_files_properties(${viewer_XUI_FILES}
+ PROPERTIES HEADER_FILE_ONLY TRUE)
+
+list(APPEND viewer_SOURCE_FILES ${viewer_XUI_FILES})
+
+set(viewer_APPSETTINGS_FILES
+ app_settings/anim.ini
+ app_settings/cmd_line.xml
+ app_settings/grass.xml
+ app_settings/high_graphics.xml
+ app_settings/keys.ini
+ app_settings/keywords.ini
+ app_settings/logcontrol.xml
+ app_settings/low_graphics.xml
+ app_settings/mid_graphics.xml
+ app_settings/settings.xml
+ app_settings/settings_crash_behavior.xml
+ app_settings/settings_files.xml
+ app_settings/settings_per_account.xml
+ app_settings/std_bump.ini
+ app_settings/trees.xml
+ app_settings/ultra_graphics.xml
+ app_settings/viewerart.xml
+ ${CMAKE_SOURCE_DIR}/../etc/message.xml
+ ${CMAKE_SOURCE_DIR}/../scripts/messages/message_template.msg
+ )
+
+use_prebuilt_binary(artwork-common)
+
+source_group("App Settings" FILES ${viewer_APPSETTINGS_FILES})
+
+set_source_files_properties(${viewer_APPSETTINGS_FILES}
+ PROPERTIES HEADER_FILE_ONLY TRUE)
+
+list(APPEND viewer_SOURCE_FILES ${viewer_APPSETTINGS_FILES})
+
+set(viewer_CHARACTER_FILES
+ character/attentions.xml
+ character/attentionsN.xml
+ character/avatar_lad.xml
+ character/avatar_skeleton.xml
+ character/genepool.xml
+ )
+
+source_group("Character File" FILES ${viewer_CHARACTER_FILES})
+
+set_source_files_properties(${viewer_CHARACTER_FILES}
+ PROPERTIES HEADER_FILE_ONLY TRUE)
+if (NOT STANDALONE)
+ list(APPEND viewer_SOURCE_FILES ${viewer_CHARACTER_FILES})
+endif (NOT STANDALONE)
+
+if (WINDOWS)
+ file(GLOB viewer_INSTALLER_FILES installers/windows/*.nsi)
+
+ source_group("Installer Files" FILES ${viewer_INSTALLER_FILES})
+
+ set_source_files_properties(${viewer_INSTALLER_FILES}
+ PROPERTIES HEADER_FILE_ONLY TRUE)
+
+ list(APPEND viewer_SOURCE_FILES ${viewer_INSTALLER_FILES})
+endif (WINDOWS)
+
+if (OPENAL)
+ set(LLSTARTUP_COMPILE_FLAGS "${LLSTARTUP_COMPILE_FLAGS} -DLL_OPENAL")
+endif (OPENAL)
+
+if (FMOD)
+ set(LLSTARTUP_COMPILE_FLAGS "${LLSTARTUP_COMPILE_FLAGS} -DLL_FMOD")
+
+ if (DARWIN)
+ set(fmodwrapper_SOURCE_FILES fmodwrapper.cpp)
+ add_library(fmodwrapper SHARED ${fmodwrapper_SOURCE_FILES})
+ set(fmodwrapper_needed_LIBRARIES ${FMOD_LIBRARY} ${CARBON_LIBRARY})
+ set_target_properties(
+ fmodwrapper
+ PROPERTIES
+ BUILD_WITH_INSTALL_RPATH 1
+ INSTALL_NAME_DIR "@executable_path/../Resources"
+ LINK_FLAGS "-unexported_symbols_list ${CMAKE_CURRENT_SOURCE_DIR}/fmod_hidden_symbols.exp"
+ )
+ set(FMODWRAPPER_LIBRARY fmodwrapper)
+ target_link_libraries(fmodwrapper ${fmodwrapper_needed_LIBRARIES})
+ else (DARWIN)
+ # fmodwrapper unnecessary on linux or windows
+ set(FMODWRAPPER_LIBRARY ${FMOD_LIBRARY})
+ endif (DARWIN)
+endif (FMOD)
+
+set_source_files_properties(llstartup.cpp PROPERTIES COMPILE_FLAGS "${LLSTARTUP_COMPILE_FLAGS}")
+
+list(APPEND viewer_SOURCE_FILES ${viewer_HEADER_FILES})
+
+set_source_files_properties(${viewer_HEADER_FILES}
+ PROPERTIES HEADER_FILE_ONLY TRUE)
+
+add_executable(${VIEWER_BINARY_NAME}
+ WIN32
+ MACOSX_BUNDLE
+ ${viewer_SOURCE_FILES}
+ )
+check_message_template(${VIEWER_BINARY_NAME})
+
+if (LLKDU_LIBRARY)
+ add_dependencies(${VIEWER_BINARY_NAME} ${LLKDU_LIBRARY})
+endif (LLKDU_LIBRARY)
+
+# add package files
+file(GLOB EVENT_HOST_SCRIPT_GLOB_LIST
+ ${CMAKE_CURRENT_SOURCE_DIR}/../viewer_components/*.py)
+list(APPEND EVENT_HOST_SCRIPTS ${EVENT_HOST_SCRIPT_GLOB_LIST})
+
+set(PACKAGE OFF CACHE BOOL
+ "Add a package target that builds an installer package.")
+
+if (WINDOWS)
+ if(MSVC71)
+ set(release_flags "/MAP:Release/${VIEWER_BINARY_NAME}.map /MAPINFO:LINES")
+ else(MSVC71)
+ set(release_flags "/MAP:Release/${VIEWER_BINARY_NAME}.map")
+ endif(MSVC71)
+
+ set_target_properties(${VIEWER_BINARY_NAME}
+ PROPERTIES
+ # *TODO -reenable this once we get server usage sorted out
+ #LINK_FLAGS "/debug /NODEFAULTLIB:LIBCMT /SUBSYSTEM:WINDOWS /INCLUDE:\"__tcmalloc\""
+ LINK_FLAGS "/debug /NODEFAULTLIB:LIBCMT /SUBSYSTEM:WINDOWS"
+ LINK_FLAGS_DEBUG "/NODEFAULTLIB:\"LIBCMT;LIBCMTD;MSVCRT\" /INCREMENTAL:NO"
+ LINK_FLAGS_RELEASE ${release_flags}
+ )
+
+ # sets the 'working directory' for debugging from visual studio.
+ if (NOT UNATTENDED)
+ add_custom_command(
+ TARGET ${VIEWER_BINARY_NAME} PRE_BUILD
+ COMMAND ${CMAKE_SOURCE_DIR}/tools/vstool/vstool.exe
+ ARGS
+ --solution
+ ${CMAKE_BINARY_DIR}/${CMAKE_PROJECT_NAME}.sln
+ --workingdir
+ ${VIEWER_BINARY_NAME}
+ ${CMAKE_CURRENT_SOURCE_DIR}
+ COMMENT "Setting the ${VIEWER_BINARY_NAME} working directory for debugging."
+ )
+ endif (NOT UNATTENDED)
+
+ add_custom_command(
+ TARGET ${VIEWER_BINARY_NAME} PRE_BUILD
+ COMMAND ${CMAKE_COMMAND}
+ ARGS
+ -E
+ copy_if_different
+ ${CMAKE_CURRENT_SOURCE_DIR}/../../scripts/messages/message_template.msg
+ ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/app_settings/message_template.msg
+ COMMENT "Copying message_template.msg to the runtime folder."
+ )
+
+ add_custom_command(
+ TARGET ${VIEWER_BINARY_NAME} PRE_BUILD
+ COMMAND ${CMAKE_COMMAND}
+ ARGS
+ -E
+ copy_if_different
+ ${CMAKE_CURRENT_SOURCE_DIR}/../../etc/message.xml
+ ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/app_settings/message.xml
+ COMMENT "Copying message.xml to the runtime folder."
+ )
+
+ if(WINDOWS)
+ # Copy Win Libs...
+ # This happens at build time, not config time. We can't glob files in this cmake.
+ # *FIX:Mani Write a sub script to glob the files...
+ # *FIX:Mani Use actually dependencies rather than bulk copy.
+ add_custom_command(
+ TARGET ${VIEWER_BINARY_NAME} PRE_BUILD
+ COMMAND ${CMAKE_COMMAND}
+ ARGS
+ -E
+ copy_directory
+ ${SHARED_LIB_STAGING_DIR}/${CMAKE_CFG_INTDIR}
+ ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}
+ COMMENT "Copying staged dlls."
+ )
+
+ add_dependencies(${VIEWER_BINARY_NAME} stage_third_party_libs llcommon)
+ if(LLKDU_LIBRARY)
+ # kdu may not exist!
+ add_dependencies(${VIEWER_BINARY_NAME} llkdu)
+ endif(LLKDU_LIBRARY)
+ endif(WINDOWS)
+
+ if (EXISTS ${CMAKE_SOURCE_DIR}/copy_win_scripts)
+ add_dependencies(${VIEWER_BINARY_NAME} copy_win_scripts)
+ endif (EXISTS ${CMAKE_SOURCE_DIR}/copy_win_scripts)
+
+ add_custom_command(
+ OUTPUT ${CMAKE_CFG_INTDIR}/touched.bat
+ COMMAND ${PYTHON_EXECUTABLE}
+ ARGS
+ ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
+ --configuration=${CMAKE_CFG_INTDIR}
+ --channel=${VIEWER_CHANNEL}
+ --login_channel=${VIEWER_LOGIN_CHANNEL}
+ --grid=${GRID}
+ --source=${CMAKE_CURRENT_SOURCE_DIR}
+ --artwork=${ARTWORK_DIR}
+ --build=${CMAKE_CURRENT_BINARY_DIR}
+ --dest=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}
+ --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/touched.bat
+ DEPENDS ${VIEWER_BINARY_NAME} ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
+ )
+
+ add_dependencies(${VIEWER_BINARY_NAME} SLPlugin media_plugin_quicktime media_plugin_webkit)
+
+ if (PACKAGE)
+ add_custom_command(
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/event_host.tar.bz2
+ COMMAND ${PYTHON_EXECUTABLE}
+ ARGS
+ ${CMAKE_CURRENT_SOURCE_DIR}/event_host_manifest.py
+ ${CMAKE_CURRENT_SOURCE_DIR}/..
+ ${CMAKE_CURRENT_BINARY_DIR}
+ ${CMAKE_CFG_INTDIR}
+
+ DEPENDS
+ lleventhost
+ ${EVENT_HOST_SCRIPTS}
+ ${CMAKE_CURRENT_SOURCE_DIR}/event_host_manifest.py)
+
+ add_custom_target(package ALL
+ DEPENDS
+ ${CMAKE_CFG_INTDIR}/touched.bat)
+ # temporarily disable packaging of event_host until hg subrepos get
+ # sorted out on the parabuild cluster...
+ #${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/event_host.tar.bz2)
+ add_dependencies(package windows-updater windows-crash-logger)
+
+
+ endif (PACKAGE)
+endif (WINDOWS)
+
+target_link_libraries(${VIEWER_BINARY_NAME}
+ ${LLAUDIO_LIBRARIES}
+ ${LLCHARACTER_LIBRARIES}
+ ${LLIMAGE_LIBRARIES}
+ ${LLIMAGEJ2COJ_LIBRARIES}
+ ${LLINVENTORY_LIBRARIES}
+ ${LLMESSAGE_LIBRARIES}
+ ${LLPLUGIN_LIBRARIES}
+ ${LLPRIMITIVE_LIBRARIES}
+ ${LLRENDER_LIBRARIES}
+ ${FREETYPE_LIBRARIES}
+ ${LLUI_LIBRARIES}
+ ${LLVFS_LIBRARIES}
+ ${LLWINDOW_LIBRARIES}
+ ${LLXML_LIBRARIES}
+ ${LLXUIXML_LIBRARIES}
+ ${LSCRIPT_LIBRARIES}
+ ${LLMATH_LIBRARIES}
+ ${LLCOMMON_LIBRARIES}
+ ${NDOF_LIBRARY}
+ ${viewer_LIBRARIES}
+ ${BOOST_PROGRAM_OPTIONS_LIBRARY}
+ ${BOOST_REGEX_LIBRARY}
+ ${DBUSGLIB_LIBRARIES}
+ ${OPENGL_LIBRARIES}
+ ${FMODWRAPPER_LIBRARY}
+ ${OPENGL_LIBRARIES}
+ ${SDL_LIBRARY}
+ ${SMARTHEAP_LIBRARY}
+ ${UI_LIBRARIES}
+ ${WINDOWS_LIBRARIES}
+ ${XMLRPCEPI_LIBRARIES}
+ ${ELFIO_LIBRARIES}
+ ${LLLOGIN_LIBRARIES}
+ ${GOOGLE_PERFTOOLS_LIBRARIES}
+ )
+
+build_version(viewer)
+
+set(ARTWORK_DIR ${CMAKE_CURRENT_SOURCE_DIR} CACHE PATH
+ "Path to artwork files.")
+
+
+if (LINUX)
+ add_custom_command(
+ OUTPUT secondlife-stripped
+ COMMAND strip
+ ARGS --strip-debug -o secondlife-stripped ${VIEWER_BINARY_NAME}
+ DEPENDS ${VIEWER_BINARY_NAME}
+ )
+
+ set(product SecondLife-${ARCH}-${viewer_VERSION})
+
+ add_custom_command(
+ OUTPUT ${product}.tar.bz2
+ COMMAND ${PYTHON_EXECUTABLE}
+ ARGS
+ ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
+ --grid=${GRID}
+ --channel=${VIEWER_CHANNEL}
+ --login_channel=${VIEWER_LOGIN_CHANNEL}
+ --installer_name=${product}
+ --arch=${ARCH}
+ --source=${CMAKE_CURRENT_SOURCE_DIR}
+ --artwork=${ARTWORK_DIR}
+ --build=${CMAKE_CURRENT_BINARY_DIR}
+ --dest=${CMAKE_CURRENT_BINARY_DIR}/packaged
+ --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/.${product}.touched
+ DEPENDS secondlife-stripped ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
+ )
+
+ add_dependencies(${VIEWER_BINARY_NAME} SLPlugin media_plugin_gstreamer010 media_plugin_webkit)
+
+ if (NOT INSTALL)
+ add_custom_target(package ALL DEPENDS ${product}.tar.bz2)
+ add_dependencies(package linux-crash-logger-strip-target)
+ add_dependencies(package linux-updater-strip-target)
+ endif (NOT INSTALL)
+endif (LINUX)
+
+if (DARWIN)
+ set(product "Second Life")
+ set_target_properties(
+ ${VIEWER_BINARY_NAME}
+ PROPERTIES
+ OUTPUT_NAME "${product}"
+ MACOSX_BUNDLE_INFO_STRING "info string - localize me"
+ MACOSX_BUNDLE_ICON_FILE "secondlife.icns"
+ MACOSX_BUNDLE_GUI_IDENTIFIER "Second Life"
+ MACOSX_BUNDLE_LONG_VERSION_STRING "ververver"
+ MACOSX_BUNDLE_BUNDLE_NAME "Second Life"
+ MACOSX_BUNDLE_SHORT_VERSION_STRING "asdf"
+ MACOSX_BUNDLE_BUNDLE_VERSION "asdf"
+ MACOSX_BUNDLE_COPYRIGHT "copyright linden lab 2007 - localize me and run me through a legal wringer"
+ )
+
+ add_custom_command(
+ TARGET ${VIEWER_BINARY_NAME} POST_BUILD
+ COMMAND ${PYTHON_EXECUTABLE}
+ ARGS
+ ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
+ --grid=${GRID}
+ --actions=copy
+ --configuration=${CMAKE_CFG_INTDIR}
+ --source=${CMAKE_CURRENT_SOURCE_DIR}
+ --artwork=${ARTWORK_DIR}
+ --build=${CMAKE_CURRENT_BINARY_DIR}
+ --dest=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${product}.app
+ DEPENDS ${VIEWER_BINARY_NAME} ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
+ )
+
+ add_dependencies(${VIEWER_BINARY_NAME} SLPlugin media_plugin_quicktime media_plugin_webkit)
+
+ if (PACKAGE)
+ add_custom_target(package ALL DEPENDS ${VIEWER_BINARY_NAME})
+ add_dependencies(package mac-updater mac-crash-logger)
+
+ add_custom_command(
+ TARGET package POST_BUILD
+ COMMAND ${PYTHON_EXECUTABLE}
+ ARGS
+ ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
+ --grid=${GRID}
+ --configuration=${CMAKE_CFG_INTDIR}
+ --channel=${VIEWER_CHANNEL}
+ --login_channel=${VIEWER_LOGIN_CHANNEL}
+ --source=${CMAKE_CURRENT_SOURCE_DIR}
+ --artwork=${ARTWORK_DIR}
+ --build=${CMAKE_CURRENT_BINARY_DIR}
+ --dest=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${product}.app
+ --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/.${product}.touched
+ DEPENDS
+ ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
+ )
+
+
+ add_custom_command(
+ TARGET package POST_BUILD
+ COMMAND ${PYTHON_EXECUTABLE}
+ ARGS
+ ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
+ --grid=${GRID}
+ --configuration=${CMAKE_CFG_INTDIR}
+ --channel=${VIEWER_CHANNEL}
+ --login_channel=${VIEWER_LOGIN_CHANNEL}
+ --source=${CMAKE_CURRENT_SOURCE_DIR}
+ --artwork=${ARTWORK_DIR}
+ --build=${CMAKE_CURRENT_BINARY_DIR}
+ --dest=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${product}.app
+ --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/.${product}.touched
+ DEPENDS
+ ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
+ )
+
+ endif (PACKAGE)
+endif (DARWIN)
+
+if (INSTALL)
+ include(${CMAKE_CURRENT_SOURCE_DIR}/ViewerInstall.cmake)
+endif (INSTALL)
+
+# To add a viewer unit test, just add the test .cpp file below
+# This creates a separate test project per file listed.
+include(LLAddBuildTest)
+SET(viewer_TEST_SOURCE_FILES
+ llagentaccess.cpp
+ lldateutil.cpp
+ llmediadataclient.cpp
+ llviewerhelputil.cpp
+ lllogininstance.cpp
+ )
+set_source_files_properties(
+ ${viewer_TEST_SOURCE_FILES}
+ PROPERTIES
+ LL_TEST_ADDITIONAL_SOURCE_FILES llviewerprecompiledheaders.cpp
+ )
+LL_ADD_PROJECT_UNIT_TESTS(${VIEWER_BINARY_NAME} "${viewer_TEST_SOURCE_FILES}")
+
+#set(TEST_DEBUG on)
+set(test_sources llcapabilitylistener.cpp llviewerprecompiledheaders.cpp)
+set(test_libs
+ ${LLMESSAGE_LIBRARIES}
+ ${WINDOWS_LIBRARIES}
+ ${LLVFS_LIBRARIES}
+ ${LLMATH_LIBRARIES}
+ ${LLCOMMON_LIBRARIES}
+ ${GOOGLEMOCK_LIBRARIES}
+ )
+
+LL_ADD_INTEGRATION_TEST(llcapabilitylistener
+ "${test_sources}"
+ "${test_libs}"
+ ${PYTHON_EXECUTABLE}
+ "${CMAKE_SOURCE_DIR}/llmessage/tests/test_llsdmessage_peer.py"
+ )
+
+#ADD_VIEWER_BUILD_TEST(llmemoryview viewer)
+
+
+# Don't do these for DARWIN or LINUX here -- they're taken care of by viewer_manifest.py
+if (WINDOWS)
+ add_custom_command(
+ TARGET ${VIEWER_BINARY_NAME} POST_BUILD
+ COMMAND ${CMAKE_COMMAND}
+ ARGS
+ -E
+ make_directory
+ ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/llplugin
+ COMMENT "Creating llplugin dir."
+ )
+
+ get_target_property(BUILT_SLPLUGIN SLPlugin LOCATION)
+ add_custom_command(
+ TARGET ${VIEWER_BINARY_NAME} POST_BUILD
+ COMMAND ${CMAKE_COMMAND}
+ ARGS
+ -E
+ copy_if_different
+ ${BUILT_SLPLUGIN}
+ ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}
+ COMMENT "Copying SLPlugin executable to the runtime folder."
+ )
+
+ get_target_property(BUILT_WEBKIT_PLUGIN media_plugin_webkit LOCATION)
+ add_custom_command(
+ TARGET ${VIEWER_BINARY_NAME} POST_BUILD
+ COMMAND ${CMAKE_COMMAND}
+ ARGS
+ -E
+ copy_if_different
+ ${BUILT_WEBKIT_PLUGIN}
+ ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/llplugin
+ COMMENT "Copying WebKit Plugin to the runtime folder."
+ )
+
+ get_target_property(BUILT_QUICKTIME_PLUGIN media_plugin_quicktime LOCATION)
+ add_custom_command(
+ TARGET ${VIEWER_BINARY_NAME} POST_BUILD
+ COMMAND ${CMAKE_COMMAND}
+ ARGS
+ -E
+ copy_if_different
+ ${BUILT_QUICKTIME_PLUGIN}
+ ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/llplugin
+ COMMENT "Copying Quicktime Plugin to the runtime folder."
+ )
+
+ #*******************************
+ # Copy media plugin support dlls
+ # Debug config runtime files required for the plugins
+ set(plugins_debug_src_dir "${CMAKE_SOURCE_DIR}/../libraries/i686-win32/lib/debug")
+ set(plugins_debug_files
+ libeay32.dll
+ qtcored4.dll
+ qtguid4.dll
+ qtnetworkd4.dll
+ qtopengld4.dll
+ qtwebkitd4.dll
+ ssleay32.dll
+ )
+ copy_if_different(
+ ${plugins_debug_src_dir}
+ "${CMAKE_CURRENT_BINARY_DIR}/Debug/llplugin"
+ out_targets
+ ${plugins_debug_files}
+ )
+ set(media_plugin_targets ${media_plugin_targets} ${out_targets})
+
+ # Release & ReleaseDebInfo config runtime files required for the plugins
+ set(plugins_release_src_dir "${CMAKE_SOURCE_DIR}/../libraries/i686-win32/lib/release")
+ set(plugins_release_files
+ libeay32.dll
+ qtcore4.dll
+ qtgui4.dll
+ qtnetwork4.dll
+ qtopengl4.dll
+ qtwebkit4.dll
+ ssleay32.dll
+ )
+ copy_if_different(
+ ${plugins_release_src_dir}
+ "${CMAKE_CURRENT_BINARY_DIR}/Release/llplugin"
+ out_targets
+ ${plugins_release_files}
+ )
+ set(media_plugin_targets ${media_plugin_targets} ${out_targets})
+
+ copy_if_different(
+ ${plugins_release_src_dir}
+ "${CMAKE_CURRENT_BINARY_DIR}/RelWithDebInfo/llplugin"
+ out_targets
+ ${plugins_release_files}
+ )
+ set(media_plugin_targets ${media_plugin_targets} ${out_targets})
+
+ add_custom_target(copy_media_plugin_libs ALL
+ DEPENDS
+ ${media_plugin_targets}
+ )
+
+ add_custom_command(
+ TARGET ${VIEWER_BINARY_NAME} POST_BUILD
+ COMMAND ${CMAKE_COMMAND}
+ ARGS
+ -E
+ copy_directory
+ ${CMAKE_BINARY_DIR}/test_apps/llplugintest/${CMAKE_CFG_INTDIR}/imageformats
+ ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/llplugin/imageformats
+ COMMENT "Copying llpluging imageformat libs."
+ )
+
+ add_dependencies(${VIEWER_BINARY_NAME} llmediaplugintest copy_media_plugin_libs)
+
+endif (WINDOWS)
+