X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=folly%2FMakefile.am;h=bfd670cdca8dd1c86bf86ab7ce876eccb3917426;hb=cb238d299031affd40d234266415d0b6322b370a;hp=70de07e0da0c3b4940235d877d08ae04e1f74635;hpb=f3605199abacbda476c0f22e7fbe9cc28be0349c;p=folly.git diff --git a/folly/Makefile.am b/folly/Makefile.am index 70de07e0..5aefef35 100644 --- a/folly/Makefile.am +++ b/folly/Makefile.am @@ -1,18 +1,20 @@ if FOLLY_TESTMAIN -SUBDIRS = . experimental init test -else -SUBDIRS = . test +MAYBE_INIT = init endif +SUBDIRS = . experimental $(MAYBE_INIT) test io/test stats/test + ACLOCAL_AMFLAGS = -I m4 CLEANFILES = + noinst_PROGRAMS = generate_fingerprint_tables generate_fingerprint_tables_SOURCES = build/GenerateFingerprintTables.cpp generate_fingerprint_tables_LDADD = libfollybase.la noinst_LTLIBRARIES = \ + libfollybasesse42.la \ libfollybase.la lib_LTLIBRARIES = \ @@ -25,54 +27,58 @@ nobase_follyinclude_HEADERS = \ ApplyTuple.h \ Arena.h \ Arena-inl.h \ + Array.h \ Assume.h \ AtomicBitSet.h \ AtomicHashArray.h \ AtomicHashArray-inl.h \ AtomicHashMap.h \ AtomicHashMap-inl.h \ + AtomicIntrusiveLinkedList.h \ AtomicLinkedList.h \ AtomicStruct.h \ AtomicUnorderedMap.h \ Baton.h \ Benchmark.h \ Bits.h \ + CachelinePadded.h \ CallOnce.h \ Checksum.h \ + Chrono.h \ + ClockGettimeWrappers.h \ ConcurrentSkipList.h \ ConcurrentSkipList-inl.h \ - ConditionallyExistent.h \ ContainerTraits.h \ Conv.h \ CppAttributes.h \ CpuId.h \ CPortability.h \ + concurrency/CoreCachedSharedPtr.h \ detail/AtomicHashUtils.h \ detail/AtomicUnorderedMapUtils.h \ + detail/AtomicUtils.h \ detail/BitIteratorDetail.h \ - detail/BitsDetail.h \ detail/CacheLocality.h \ + detail/CachelinePaddedImpl.h \ detail/ChecksumDetail.h \ - detail/Clock.h \ detail/DiscriminatedPtrDetail.h \ - detail/ExceptionWrapper.h \ detail/FileUtilDetail.h \ detail/FingerprintPolynomial.h \ - detail/FunctionalExcept.h \ detail/Futex.h \ detail/GroupVarintDetail.h \ detail/IPAddress.h \ - detail/Malloc.h \ + detail/IPAddressSource.h \ + detail/MallocImpl.h \ detail/MemoryIdler.h \ detail/MPMCPipelineDetail.h \ detail/RangeCommon.h \ detail/RangeSse42.h \ detail/Sleeper.h \ detail/SlowFingerprint.h \ - detail/SpinLockImpl.h \ + detail/SocketFastOpen.h \ detail/StaticSingletonManager.h \ - detail/Stats.h \ detail/ThreadLocalDetail.h \ + detail/TryDetail.h \ detail/TurnSequencer.h \ detail/UncaughtExceptionCounter.h \ Demangle.h \ @@ -80,61 +86,82 @@ nobase_follyinclude_HEADERS = \ DynamicConverter.h \ dynamic.h \ dynamic-inl.h \ + Enumerate.h \ + EvictingCacheMap.h \ Exception.h \ + ExceptionString.h \ ExceptionWrapper.h \ + ExceptionWrapper-inl.h \ Executor.h \ - EvictingCacheMap.h \ + Expected.h \ + experimental/AsymmetricMemoryBarrier.h \ + experimental/AtomicSharedPtr.h \ + experimental/detail/AtomicSharedPtr-detail.h \ experimental/AutoTimer.h \ + experimental/ThreadedRepeatingFunctionRunner.h \ experimental/Bits.h \ experimental/BitVectorCoding.h \ + experimental/CodingDetail.h \ + experimental/DynamicParser.h \ + experimental/DynamicParser-inl.h \ experimental/ExecutionObserver.h \ experimental/EliasFanoCoding.h \ + experimental/EnvUtil.h \ experimental/EventCount.h \ experimental/Instructions.h \ experimental/bser/Bser.h \ - experimental/fibers/AddTasks.h \ - experimental/fibers/AddTasks-inl.h \ - experimental/fibers/Baton.h \ - experimental/fibers/Baton-inl.h \ - experimental/fibers/BoostContextCompatibility.h \ - experimental/fibers/EventBaseLoopController.h \ - experimental/fibers/EventBaseLoopController-inl.h \ - experimental/fibers/Fiber.h \ - experimental/fibers/Fiber-inl.h \ - experimental/fibers/FiberManager.h \ - experimental/fibers/FiberManager-inl.h \ - experimental/fibers/FiberManagerMap.h \ - experimental/fibers/ForEach.h \ - experimental/fibers/ForEach-inl.h \ - experimental/fibers/GenericBaton.h \ - experimental/fibers/GuardPageAllocator.h \ - experimental/fibers/LoopController.h \ - experimental/fibers/Promise.h \ - experimental/fibers/Promise-inl.h \ - experimental/fibers/SimpleLoopController.h \ - experimental/fibers/TimedMutex.h \ - experimental/fibers/TimedMutex-inl.h \ - experimental/fibers/TimeoutController.h \ - experimental/fibers/traits.h \ - experimental/fibers/WhenN.h \ - experimental/fibers/WhenN-inl.h \ + experimental/exception_tracer/ExceptionAbi.h \ + experimental/exception_tracer/ExceptionCounterLib.h \ + experimental/exception_tracer/ExceptionTracer.h \ + experimental/exception_tracer/ExceptionTracerLib.h \ + experimental/exception_tracer/StackTrace.h \ experimental/FunctionScheduler.h \ experimental/FutureDAG.h \ experimental/io/FsUtil.h \ + experimental/JemallocNodumpAllocator.h \ experimental/JSONSchema.h \ experimental/LockFreeRingBuffer.h \ + experimental/logging/ImmediateFileWriter.h \ + experimental/logging/LogCategory.h \ + experimental/logging/LogFormatter.h \ + experimental/logging/Logger.h \ + experimental/logging/LoggerDB.h \ + experimental/logging/LogHandler.h \ + experimental/logging/LogLevel.h \ + experimental/logging/LogMessage.h \ + experimental/logging/LogName.h \ + experimental/logging/LogStream.h \ + experimental/logging/LogStreamProcessor.h \ + experimental/logging/LogWriter.h \ + experimental/logging/RateLimiter.h \ + experimental/logging/StandardLogHandler.h \ + experimental/logging/xlog.h \ experimental/NestedCommandLineApp.h \ + experimental/observer/detail/Core.h \ + experimental/observer/detail/GraphCycleDetector.h \ + experimental/observer/detail/ObserverManager.h \ + experimental/observer/detail/Observer-pre.h \ + experimental/observer/Observable.h \ + experimental/observer/Observable-inl.h \ + experimental/observer/Observer.h \ + experimental/observer/Observer-inl.h \ + experimental/observer/SimpleObservable.h \ + experimental/observer/SimpleObservable-inl.h \ experimental/ProgramOptions.h \ experimental/ReadMostlySharedPtr.h \ experimental/symbolizer/Elf.h \ + experimental/symbolizer/Elf-inl.h \ experimental/symbolizer/ElfCache.h \ experimental/symbolizer/Dwarf.h \ experimental/symbolizer/LineReader.h \ experimental/symbolizer/SignalHandler.h \ - experimental/symbolizer/StackTrace.cpp \ + experimental/symbolizer/StackTrace.h \ experimental/symbolizer/Symbolizer.h \ experimental/Select64.h \ + experimental/StampedPtr.h \ experimental/StringKeyedCommon.h \ + experimental/StringKeyedMap.h \ + experimental/StringKeyedSet.h \ experimental/StringKeyedUnorderedMap.h \ experimental/StringKeyedUnorderedSet.h \ experimental/TestUtil.h \ @@ -145,6 +172,7 @@ nobase_follyinclude_HEADERS = \ File.h \ FileUtil.h \ Fingerprint.h \ + FixedString.h \ folly-config.h \ Foreach.h \ FormatArg.h \ @@ -152,13 +180,13 @@ nobase_follyinclude_HEADERS = \ Format.h \ Format-inl.h \ futures/Barrier.h \ - futures/ThreadedExecutor.h \ futures/DrivableExecutor.h \ futures/Future-pre.h \ futures/helpers.h \ futures/Future.h \ futures/Future-inl.h \ futures/FutureException.h \ + futures/FutureSplitter.h \ futures/InlineExecutor.h \ futures/ManualExecutor.h \ futures/OpaqueCallbackShunt.h \ @@ -170,12 +198,10 @@ nobase_follyinclude_HEADERS = \ futures/SharedPromise-inl.h \ futures/ThreadWheelTimekeeper.h \ futures/Timekeeper.h \ - futures/Try-inl.h \ - futures/Try.h \ - futures/Unit.h \ futures/detail/Core.h \ futures/detail/FSM.h \ futures/detail/Types.h \ + futures/test/TestExecutor.h \ gen/Base.h \ gen/Base-inl.h \ gen/Combine.h \ @@ -202,6 +228,7 @@ nobase_follyinclude_HEADERS = \ IntrusiveList.h \ io/Compression.h \ io/Cursor.h \ + io/Cursor-inl.h \ io/IOBuf.h \ io/IOBufQueue.h \ io/RecordIO.h \ @@ -219,22 +246,30 @@ nobase_follyinclude_HEADERS = \ io/async/AsyncSocketBase.h \ io/async/AsyncSSLSocket.h \ io/async/AsyncSocketException.h \ + io/async/DecoratedAsyncTransportWrapper.h \ io/async/DelayedDestructionBase.h \ io/async/DelayedDestruction.h \ + io/async/DestructorCheck.h \ io/async/EventBase.h \ io/async/EventBaseLocal.h \ io/async/EventBaseManager.h \ + io/async/EventBaseThread.h \ io/async/EventFDWrapper.h \ io/async/EventHandler.h \ io/async/EventUtil.h \ io/async/NotificationQueue.h \ io/async/HHWheelTimer.h \ - io/async/OpenSSLPtrTypes.h \ + io/async/ssl/OpenSSLUtils.h \ + io/async/ssl/SSLErrors.h \ + io/async/ssl/TLSDefinitions.h \ io/async/Request.h \ io/async/SSLContext.h \ io/async/ScopedEventBaseThread.h \ io/async/TimeoutManager.h \ + io/async/VirtualEventBase.h \ + io/async/WriteChainAsyncTransportWrapper.h \ io/async/test/AsyncSSLSocketTest.h \ + io/async/test/AsyncSocketTest2.h \ io/async/test/BlockingSocket.h \ io/async/test/MockAsyncSocket.h \ io/async/test/MockAsyncServerSocket.h \ @@ -242,49 +277,88 @@ nobase_follyinclude_HEADERS = \ io/async/test/MockAsyncTransport.h \ io/async/test/MockAsyncUDPSocket.h \ io/async/test/MockTimeoutManager.h \ + io/async/test/ScopedBoundPort.h \ io/async/test/SocketPair.h \ + io/async/test/TestSSLServer.h \ io/async/test/TimeUtil.h \ io/async/test/UndelayedDestruction.h \ io/async/test/Util.h \ + Iterator.h \ json.h \ Lazy.h \ LifoSem.h \ Likely.h \ + LockTraits.h \ + LockTraitsBoost.h \ Logging.h \ MacAddress.h \ + MallctlHelper.h \ Malloc.h \ MapUtil.h \ + Math.h \ Memory.h \ MemoryMapping.h \ + memory/UninitializedMemoryHacks.h \ MicroSpinLock.h \ MicroLock.h \ MoveWrapper.h \ MPMCPipeline.h \ MPMCQueue.h \ Optional.h \ + Overload.h \ PackedSyncPtr.h \ Padded.h \ + Partial.h \ PicoSpinLock.h \ Portability.h \ + portability/Asm.h \ + portability/Atomic.h \ + portability/BitsFunctexcept.h \ + portability/Builtins.h \ + portability/Config.h \ portability/Constexpr.h \ - portability/Environment.h \ + portability/Dirent.h \ + portability/Event.h \ + portability/Fcntl.h \ portability/GFlags.h \ + portability/GMock.h \ + portability/GTest.h \ + portability/IOVec.h \ + portability/Libgen.h \ + portability/Malloc.h \ + portability/Math.h \ + portability/Memory.h \ + portability/OpenSSL.h \ + portability/PThread.h \ + portability/Sockets.h \ + portability/Stdio.h \ portability/Stdlib.h \ - portability/Strings.h \ - portability/Syscall.h \ + portability/String.h \ + portability/Syslog.h \ + portability/SysFile.h \ + portability/SysMembarrier.h \ + portability/SysMman.h \ + portability/SysResource.h \ + portability/SysStat.h \ + portability/SysSyscall.h \ portability/SysTime.h \ portability/SysTypes.h \ portability/SysUio.h \ portability/Time.h \ + portability/TypeTraits.h \ + portability/Unistd.h \ portability/Windows.h \ Preprocessor.h \ + PriorityMPMCQueue.h \ ProducerConsumerQueue.h \ Random.h \ Random-inl.h \ Range.h \ RWSpinLock.h \ + SafeAssert.h \ ScopeGuard.h \ SharedMutex.h \ + Shell.h \ Singleton.h \ Singleton-inl.h \ SingletonThreadLocal.h \ @@ -296,6 +370,13 @@ nobase_follyinclude_HEADERS = \ SpinLock.h \ SpookyHashV1.h \ SpookyHashV2.h \ + ssl/OpenSSLCertUtils.h \ + ssl/OpenSSLHash.h \ + ssl/OpenSSLPtrTypes.h \ + ssl/OpenSSLVersionFinder.h \ + ssl/SSLSession.h \ + ssl/detail/SSLSessionImpl.h \ + stats/detail/Bucket.h \ stats/BucketedTimeSeries-defs.h \ stats/BucketedTimeSeries.h \ stats/Histogram-defs.h \ @@ -304,6 +385,7 @@ nobase_follyinclude_HEADERS = \ stats/MultiLevelTimeSeries.h \ stats/TimeseriesHistogram-defs.h \ stats/TimeseriesHistogram.h \ + stop_watch.h \ String.h \ String-inl.h \ Subprocess.h \ @@ -317,13 +399,23 @@ nobase_follyinclude_HEADERS = \ test/TestUtils.h \ ThreadCachedArena.h \ ThreadCachedInt.h \ + ThreadId.h \ ThreadLocal.h \ ThreadName.h \ TimeoutQueue.h \ + TokenBucket.h \ + tracing/StaticTracepoint.h \ Traits.h \ + Try-inl.h \ + Try.h \ Unicode.h \ + Function.h \ + Functional.h \ + UncaughtExceptions.h \ + Unit.h \ Uri.h \ Uri-inl.h \ + Utility.h \ Varint.h \ VersionCheck.h @@ -339,33 +431,41 @@ GroupVarintTables.cpp: build/generate_varint_tables.py $(PYTHON) build/generate_varint_tables.py CLEANFILES += GroupVarintTables.cpp +libfollybasesse42_la_SOURCES = \ + detail/ChecksumDetail.cpp \ + detail/RangeSse42.cpp + libfollybase_la_SOURCES = \ Conv.cpp \ Demangle.cpp \ detail/RangeCommon.cpp \ - detail/RangeSse42.cpp \ EscapeTables.cpp \ Format.cpp \ FormatTables.cpp \ + MallctlHelper.cpp \ + portability/BitsFunctexcept.cpp \ StringBase.cpp \ String.cpp \ Unicode.cpp libfolly_la_SOURCES = \ - Bits.cpp \ + Assume.cpp \ Checksum.cpp \ + ClockGettimeWrappers.cpp \ detail/CacheLocality.cpp \ + detail/IPAddress.cpp \ dynamic.cpp \ + ExceptionWrapper.cpp \ + Executor.cpp \ File.cpp \ FileUtil.cpp \ FingerprintTables.cpp \ futures/Barrier.cpp \ - futures/ThreadedExecutor.cpp \ futures/Future.cpp \ - futures/InlineExecutor.cpp \ futures/ManualExecutor.cpp \ futures/QueuedImmediateExecutor.cpp \ futures/ThreadWheelTimekeeper.cpp \ + futures/test/TestExecutor.cpp \ detail/Futex.cpp \ detail/StaticSingletonManager.cpp \ detail/ThreadLocalDetail.cpp \ @@ -375,7 +475,9 @@ libfolly_la_SOURCES = \ IPAddressV4.cpp \ IPAddressV6.cpp \ LifoSem.cpp \ + init/Init.cpp \ io/Compression.cpp \ + io/Cursor.cpp \ io/IOBuf.cpp \ io/IOBufQueue.cpp \ io/RecordIO.cpp \ @@ -390,48 +492,81 @@ libfolly_la_SOURCES = \ io/async/EventBase.cpp \ io/async/EventBaseLocal.cpp \ io/async/EventBaseManager.cpp \ + io/async/EventBaseThread.cpp \ io/async/EventHandler.cpp \ io/async/Request.cpp \ io/async/SSLContext.cpp \ io/async/ScopedEventBaseThread.cpp \ + io/async/VirtualEventBase.cpp \ io/async/HHWheelTimer.cpp \ + io/async/TimeoutManager.cpp \ + io/async/test/ScopedBoundPort.cpp \ io/async/test/SocketPair.cpp \ io/async/test/TimeUtil.cpp \ + io/async/ssl/OpenSSLUtils.cpp \ + io/async/ssl/SSLErrors.cpp \ json.cpp \ detail/MemoryIdler.cpp \ + detail/SocketFastOpen.cpp \ MacAddress.cpp \ MemoryMapping.cpp \ - portability/Environment.cpp \ + portability/Dirent.cpp \ + portability/Fcntl.cpp \ + portability/Libgen.cpp \ + portability/Malloc.cpp \ + portability/Memory.cpp \ + portability/OpenSSL.cpp \ + portability/PThread.cpp \ + portability/Sockets.cpp \ + portability/Stdio.cpp \ portability/Stdlib.cpp \ - portability/Strings.cpp \ + portability/String.cpp \ + portability/SysFile.cpp \ + portability/SysMembarrier.cpp \ + portability/SysMman.cpp \ + portability/SysResource.cpp \ + portability/SysStat.cpp \ portability/SysTime.cpp \ + portability/SysUio.cpp \ portability/Time.cpp \ + portability/Unistd.cpp \ Random.cpp \ SafeAssert.cpp \ + ScopeGuard.cpp \ SharedMutex.cpp \ + Shell.cpp \ MicroLock.cpp \ + Optional.cpp \ Singleton.cpp \ SocketAddress.cpp \ SpookyHashV1.cpp \ SpookyHashV2.cpp \ - stats/Instantiations.cpp \ + ssl/OpenSSLCertUtils.cpp \ + ssl/OpenSSLHash.cpp \ + ssl/detail/SSLSessionImpl.cpp \ + stats/BucketedTimeSeries.cpp \ + stats/Histogram.cpp \ + stats/MultiLevelTimeSeries.cpp \ + stats/TimeseriesHistogram.cpp \ Subprocess.cpp \ ThreadCachedArena.cpp \ + ThreadName.cpp \ TimeoutQueue.cpp \ Uri.cpp \ Version.cpp \ + experimental/AsymmetricMemoryBarrier.cpp \ + experimental/ThreadedRepeatingFunctionRunner.cpp \ experimental/bser/Dump.cpp \ experimental/bser/Load.cpp \ - experimental/fibers/Baton.cpp \ - experimental/fibers/Fiber.cpp \ - experimental/fibers/FiberManager.cpp \ - experimental/fibers/FiberManagerMap.cpp \ - experimental/fibers/GuardPageAllocator.cpp \ - experimental/fibers/TimeoutController.cpp \ + experimental/DynamicParser.cpp \ + experimental/EnvUtil.cpp \ experimental/FunctionScheduler.cpp \ experimental/io/FsUtil.cpp \ + experimental/JemallocNodumpAllocator.cpp \ experimental/JSONSchema.cpp \ experimental/NestedCommandLineApp.cpp \ + experimental/observer/detail/Core.cpp \ + experimental/observer/detail/ObserverManager.cpp \ experimental/ProgramOptions.cpp \ experimental/Select64.cpp \ experimental/TestUtil.cpp @@ -443,18 +578,61 @@ libfolly_la_SOURCES += \ experimental/io/HugePages.cpp endif -if !HAVE_LINUX -libfollybase_la_SOURCES += detail/Clock.cpp -endif - if !HAVE_WEAK_SYMBOLS libfollybase_la_SOURCES += detail/MallocImpl.cpp endif -if !HAVE_BITS_FUNCTEXCEPT -libfollybase_la_SOURCES += detail/FunctionalExcept.cpp +if HAVE_BOOST_CONTEXT +nobase_follyinclude_HEADERS += \ + fibers/AddTasks.h \ + fibers/AddTasks-inl.h \ + fibers/AtomicBatchDispatcher.h \ + fibers/AtomicBatchDispatcher-inl.h \ + fibers/Baton.h \ + fibers/Baton-inl.h \ + fibers/BatchDispatcher.h \ + fibers/BoostContextCompatibility.h \ + fibers/detail/AtomicBatchDispatcher.h \ + fibers/EventBaseLoopController.h \ + fibers/EventBaseLoopController-inl.h \ + fibers/Fiber.h \ + fibers/Fiber-inl.h \ + fibers/FiberManager.h \ + fibers/FiberManager-inl.h \ + fibers/FiberManagerInternal.h \ + fibers/FiberManagerInternal-inl.h \ + fibers/FiberManagerMap.h \ + fibers/ForEach.h \ + fibers/ForEach-inl.h \ + fibers/GenericBaton.h \ + fibers/GuardPageAllocator.h \ + fibers/LoopController.h \ + fibers/Promise.h \ + fibers/Promise-inl.h \ + fibers/Semaphore.h \ + fibers/SimpleLoopController.h \ + fibers/TimedMutex.h \ + fibers/TimedMutex-inl.h \ + fibers/TimeoutController.h \ + fibers/traits.h \ + fibers/WhenN.h \ + fibers/WhenN-inl.h + +libfolly_la_SOURCES += \ + fibers/Baton.cpp \ + fibers/detail/AtomicBatchDispatcher.cpp \ + fibers/Fiber.cpp \ + fibers/FiberManager.cpp \ + fibers/FiberManagerMap.cpp \ + fibers/GuardPageAllocator.cpp \ + fibers/Semaphore.cpp \ + fibers/TimeoutController.cpp endif +libfollybasesse42_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LT_VERSION) +libfollybasesse42_la_CXXFLAGS = -msse4.2 -mpclmul + +libfollybase_la_LIBADD = libfollybasesse42.la libfollybase_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LT_VERSION) libfolly_la_LIBADD = libfollybase.la @@ -467,3 +645,7 @@ CLEANFILES += FingerprintTables.cpp libfollybenchmark_la_SOURCES = Benchmark.cpp libfollybenchmark_la_LIBADD = libfolly.la libfollybenchmark_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LT_VERSION) + +# install pkg-config metadata file +pkgconfigdir = $(libdir)/pkgconfig +nodist_pkgconfig_DATA = libfolly.pc