# -*- cmake -*- project(llcommon) include(Cwdebug) include(00-Common) include(LLCommon) include(APR) include(Linking) include(Boost) include(LLSharedLibs) include(GoogleBreakpad) include(Copy3rdPartyLibs) include(ZLIB) include_directories( ${EXPAT_INCLUDE_DIRS} ${LLCOMMON_INCLUDE_DIRS} ${ZLIB_INCLUDE_DIRS} ${BREAKPAD_INCLUDE_DIRECTORIES} ) set(llcommon_SOURCE_FILES aialert.cpp aifile.cpp aiframetimer.cpp aisyncclient.cpp aithreadid.cpp imageids.cpp indra_constants.cpp llallocator.cpp llallocator_heap_profile.cpp llapp.cpp llapr.cpp llaprpool.cpp llassettype.cpp llbase32.cpp llbase64.cpp llcallbacklist.cpp llcommon.cpp llcommonutils.cpp llcoros.cpp llcrc.cpp llcriticaldamp.cpp llcursortypes.cpp lldate.cpp lldependencies.cpp lldictionary.cpp llerror.cpp llerrorthread.cpp llevent.cpp lleventapi.cpp lleventcoro.cpp lleventdispatcher.cpp lleventfilter.cpp llevents.cpp lleventtimer.cpp llfasttimer_class.cpp llfile.cpp llfindlocale.cpp llfixedbuffer.cpp llformat.cpp llframetimer.cpp llheartbeat.cpp llinitparam.cpp llinstancetracker.cpp llliveappconfig.cpp lllivefile.cpp lllog.cpp llmd5.cpp llmemory.cpp llmemorystream.cpp llmetrics.cpp llmortician.cpp lloptioninterface.cpp llpredicate.cpp llprocesslauncher.cpp llprocessor.cpp llptrto.cpp llqueuedthread.cpp llrand.cpp llrefcount.cpp llrun.cpp llscopedvolatileaprpool.h llsd.cpp llsdparam.cpp llsdserialize.cpp llsdserialize_xml.cpp llsdutil.cpp llsecondlifeurls.cpp llsingleton.cpp llstacktrace.cpp llstat.cpp llstreamtools.cpp llstring.cpp llstringtable.cpp llsys.cpp llthread.cpp llthreadsafequeue.cpp lltimer.cpp lluri.cpp lluuid.cpp llworkerthread.cpp metaclass.cpp metaproperty.cpp reflective.cpp timing.cpp u64.cpp ) set(llcommon_HEADER_FILES CMakeLists.txt aialert.h aifile.h aiframetimer.h airecursive.h aisyncclient.h aithreadid.h aithreadsafe.h bitpack.h ctype_workaround.h fix_macros.h imageids.h indra_constants.h linden_common.h llaccountingcost.h llalignedarray.h llagentconstants.h llallocator.h llallocator_heap_profile.h llapp.h llapr.h llaprpool.h llassettype.h llassoclist.h llatomic.h llavatarconstants.h llbase32.h llbase64.h llboost.h llcallbacklist.h llchat.h llclickaction.h llcommon.h llcommonutils.h llcoros.h llcrc.h llcriticaldamp.h llcursortypes.h lldate.h lldefs.h lldependencies.h lldepthstack.h lldictionary.h llendianswizzle.h llerror.h llerrorcontrol.h llerrorthread.h llevent.h lleventapi.h lleventcoro.h lleventdispatcher.h lleventemitter.h lleventfilter.h llevents.h lleventtimer.h llextendedstatus.h llfasttimer.h llfasttimer_class.h llfile.h llfindlocale.h llfixedbuffer.h llformat.h llframetimer.h llhandle.h llheartbeat.h llhttpstatuscodes.h llindexedvector.h llinitparam.h llinstancetracker.h llkeythrottle.h lllinkedqueue.h llliveappconfig.h lllivefile.h lllocalidhashmap.h lllog.h lllslconstants.h llmap.h llmd5.h llmemory.h llmemorystream.h llmetrics.h llmortician.h llnametable.h lloptioninterface.h llpointer.h llpredicate.h llpreprocessor.h llpriqueuemap.h llprocesslauncher.h llprocessor.h llptrto.h llqueuedthread.h llrand.h llrefcount.h llregistry.h llrun.h llsafehandle.h llsd.h llsdparam.h llsdserialize.h llsdserialize_xml.h llsdutil.h llsecondlifeurls.h llsimplehash.h llsingleton.h llskiplist.h llskipmap.h llsortedvector.h llstacktrace.h llstat.h llstatenums.h llstl.h llstreamtools.h llstrider.h llstring.h llstringtable.h llstaticstringtable.h llsys.h llthread.h llthreadsafequeue.h lltimer.h lltreeiterators.h llunits.h llunittype.h lltypeinfolookup.h lluri.h lluuid.h llwin32headers.h llwin32headerslean.h llworkerthread.h metaclass.h metaclasst.h metaproperty.h metapropertyt.h reflective.h reflectivet.h stdenums.h stdtypes.h stringize.h timer.h timing.h u64.h ) set_source_files_properties(${llcommon_HEADER_FILES} PROPERTIES HEADER_FILE_ONLY TRUE) list(APPEND llcommon_SOURCE_FILES ${cwdebug_SOURCE_FILES}) list(APPEND llcommon_SOURCE_FILES ${llcommon_HEADER_FILES}) if(NOT WORD_SIZE EQUAL 32) if(NOT WINDOWS) add_definitions(-fPIC) endif(NOT WINDOWS) endif(NOT WORD_SIZE EQUAL 32) if(LLCOMMON_LINK_SHARED) add_library (llcommon SHARED ${llcommon_SOURCE_FILES}) if(WINDOWS) # always generate llcommon.pdb, even for "Release" builds set_target_properties(llcommon PROPERTIES LINK_FLAGS "/DEBUG") endif(WINDOWS) ll_stage_sharedlib(llcommon) else(LLCOMMON_LINK_SHARED) add_library (llcommon ${llcommon_SOURCE_FILES}) endif(LLCOMMON_LINK_SHARED) target_link_libraries( llcommon ${BREAKPAD_EXCEPTION_HANDLER_LIBRARIES} ${APRUTIL_LIBRARIES} ${APR_LIBRARIES} ${EXPAT_LIBRARIES} ${ZLIB_LIBRARIES} ${WINDOWS_LIBRARIES} ${Boost_CONTEXT_LIBRARY} ${Boost_REGEX_LIBRARY} ${Boost_THREAD_LIBRARY} ${Boost_SYSTEM_LIBRARY} ${Boost_CHRONO_LIBRARY} ${CORESERVICES_LIBRARY} ) if (DARWIN) # Don't embed a full path in the library's install name set_target_properties( llcommon PROPERTIES BUILD_WITH_INSTALL_RPATH 1 INSTALL_NAME_DIR "@executable_path/../Resources" ) endif (DARWIN) add_dependencies(llcommon stage_third_party_libs)