Use std::thread rather than pthreads in AtomicHashMapTest
[folly.git] / folly / Makefile.am
index b4e5ecf702b13f8d7068705925c799eb8cb60db9..15bc5424bf1359f14a2c8cf8e42e10a19edb0a4a 100644 (file)
@@ -25,12 +25,14 @@ 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 \
@@ -39,6 +41,7 @@ nobase_follyinclude_HEADERS = \
        Bits.h \
        CallOnce.h \
        Checksum.h \
+       ClockGettimeWrappers.h \
        ConcurrentSkipList.h \
        ConcurrentSkipList-inl.h \
        ConditionallyExistent.h \
@@ -53,7 +56,6 @@ nobase_follyinclude_HEADERS = \
        detail/BitsDetail.h \
        detail/CacheLocality.h \
        detail/ChecksumDetail.h \
-       detail/Clock.h \
        detail/DiscriminatedPtrDetail.h \
        detail/ExceptionWrapper.h \
        detail/FileUtilDetail.h \
@@ -62,6 +64,7 @@ nobase_follyinclude_HEADERS = \
        detail/Futex.h \
        detail/GroupVarintDetail.h \
        detail/IPAddress.h \
+       detail/IPAddressSource.h \
        detail/Malloc.h \
        detail/MemoryIdler.h \
        detail/MPMCPipelineDetail.h \
@@ -69,7 +72,9 @@ nobase_follyinclude_HEADERS = \
        detail/RangeSse42.h \
        detail/Sleeper.h \
        detail/SlowFingerprint.h \
+       detail/SocketFastOpen.h \
        detail/SpinLockImpl.h \
+       detail/StaticSingletonManager.h \
        detail/Stats.h \
        detail/ThreadLocalDetail.h \
        detail/TurnSequencer.h \
@@ -79,44 +84,23 @@ nobase_follyinclude_HEADERS = \
        DynamicConverter.h \
        dynamic.h \
        dynamic-inl.h \
+       Enumerate.h \
        Exception.h \
+       ExceptionString.h \
        ExceptionWrapper.h \
        Executor.h \
        EvictingCacheMap.h \
+       experimental/AsymmetricMemoryBarrier.h \
        experimental/AutoTimer.h \
        experimental/Bits.h \
        experimental/BitVectorCoding.h \
+       experimental/DynamicParser.h \
+       experimental/DynamicParser-inl.h \
        experimental/ExecutionObserver.h \
        experimental/EliasFanoCoding.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/FunctionScheduler.h \
        experimental/FutureDAG.h \
        experimental/io/FsUtil.h \
@@ -151,7 +135,6 @@ nobase_follyinclude_HEADERS = \
        Format.h \
        Format-inl.h \
        futures/Barrier.h \
-       futures/ThreadedExecutor.h \
        futures/DrivableExecutor.h \
        futures/Future-pre.h \
        futures/helpers.h \
@@ -169,9 +152,6 @@ 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 \
@@ -195,11 +175,13 @@ nobase_follyinclude_HEADERS = \
        IPAddressV4.h \
        IPAddressV6.h \
        IPAddressException.h \
+       Indestructible.h \
        IndexedMemPool.h \
        init/Init.h \
        IntrusiveList.h \
        io/Compression.h \
        io/Cursor.h \
+       io/Cursor-inl.h \
        io/IOBuf.h \
        io/IOBufQueue.h \
        io/RecordIO.h \
@@ -217,6 +199,7 @@ 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/EventBase.h \
@@ -227,11 +210,15 @@ nobase_follyinclude_HEADERS = \
        io/async/EventUtil.h \
        io/async/NotificationQueue.h \
        io/async/HHWheelTimer.h \
-       io/async/OpenSSLPtrTypes.h \
+       io/async/ssl/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/WriteChainAsyncTransportWrapper.h \
        io/async/test/AsyncSSLSocketTest.h \
        io/async/test/BlockingSocket.h \
        io/async/test/MockAsyncSocket.h \
@@ -248,13 +235,17 @@ nobase_follyinclude_HEADERS = \
        Lazy.h \
        LifoSem.h \
        Likely.h \
+       LockTraits.h \
+       LockTraitsBoost.h \
        Logging.h \
        MacAddress.h \
+       MallctlHelper.h \
        Malloc.h \
        MapUtil.h \
        Memory.h \
        MemoryMapping.h \
        MicroSpinLock.h \
+       MicroLock.h \
        MoveWrapper.h \
        MPMCPipeline.h \
        MPMCQueue.h \
@@ -263,8 +254,39 @@ nobase_follyinclude_HEADERS = \
        Padded.h \
        PicoSpinLock.h \
        Portability.h \
-       portability/Syscall.h \
+       portability/Asm.h \
+       portability/Atomic.h \
+       portability/Builtins.h \
+       portability/Config.h \
+       portability/Constexpr.h \
+       portability/Dirent.h \
+       portability/Environment.h \
+       portability/Event.h \
+       portability/Fcntl.h \
+       portability/GFlags.h \
+       portability/IOVec.h \
+       portability/Libgen.h \
+       portability/Malloc.h \
+       portability/Math.h \
+       portability/Memory.h \
+       portability/PThread.h \
+       portability/Sockets.h \
+       portability/Stdio.h \
+       portability/Stdlib.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/Windows.h \
+       portability/Unistd.h \
        Preprocessor.h \
        ProducerConsumerQueue.h \
        Random.h \
@@ -284,6 +306,7 @@ nobase_follyinclude_HEADERS = \
        SpinLock.h \
        SpookyHashV1.h \
        SpookyHashV2.h \
+       ssl/OpenSSLHash.h \
        stats/BucketedTimeSeries-defs.h \
        stats/BucketedTimeSeries.h \
        stats/Histogram-defs.h \
@@ -292,6 +315,7 @@ nobase_follyinclude_HEADERS = \
        stats/MultiLevelTimeSeries.h \
        stats/TimeseriesHistogram-defs.h \
        stats/TimeseriesHistogram.h \
+       stop_watch.h \
        String.h \
        String-inl.h \
        Subprocess.h \
@@ -309,7 +333,11 @@ nobase_follyinclude_HEADERS = \
        ThreadName.h \
        TimeoutQueue.h \
        Traits.h \
+       Try-inl.h \
+       Try.h \
        Unicode.h \
+       Function.h \
+       Unit.h \
        Uri.h \
        Uri-inl.h \
        Varint.h \
@@ -335,26 +363,30 @@ libfollybase_la_SOURCES = \
        EscapeTables.cpp \
        Format.cpp \
        FormatTables.cpp \
+       MallctlHelper.cpp \
        StringBase.cpp \
        String.cpp \
        Unicode.cpp
 
 libfolly_la_SOURCES = \
+       Assume.cpp \
        Bits.cpp \
        Checksum.cpp \
+       ClockGettimeWrappers.cpp \
        detail/CacheLocality.cpp \
+       detail/IPAddress.cpp \
        dynamic.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 \
        detail/Futex.cpp \
+       detail/StaticSingletonManager.cpp \
        detail/ThreadLocalDetail.cpp \
        GroupVarint.cpp \
        GroupVarintTables.cpp \
@@ -363,6 +395,7 @@ libfolly_la_SOURCES = \
        IPAddressV6.cpp \
        LifoSem.cpp \
        io/Compression.cpp \
+       io/Cursor.cpp \
        io/IOBuf.cpp \
        io/IOBufQueue.cpp \
        io/RecordIO.cpp \
@@ -378,36 +411,57 @@ libfolly_la_SOURCES = \
        io/async/EventBaseLocal.cpp \
        io/async/EventBaseManager.cpp \
        io/async/EventHandler.cpp \
+       io/async/Request.cpp \
        io/async/SSLContext.cpp \
        io/async/ScopedEventBaseThread.cpp \
        io/async/HHWheelTimer.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/Dirent.cpp \
+       portability/Environment.cpp \
+       portability/Fcntl.cpp \
+       portability/Libgen.cpp \
+       portability/Malloc.cpp \
+       portability/Memory.cpp \
+       portability/Sockets.cpp \
+       portability/Stdio.cpp \
+       portability/Stdlib.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 \
        SharedMutex.cpp \
+       MicroLock.cpp \
        Singleton.cpp \
        SocketAddress.cpp \
        SpookyHashV1.cpp \
        SpookyHashV2.cpp \
+       ssl/OpenSSLHash.cpp \
        stats/Instantiations.cpp \
        Subprocess.cpp \
        ThreadCachedArena.cpp \
        TimeoutQueue.cpp \
        Uri.cpp \
        Version.cpp \
+       experimental/AsymmetricMemoryBarrier.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/FunctionScheduler.cpp \
        experimental/io/FsUtil.cpp \
        experimental/JSONSchema.cpp \
@@ -423,18 +477,52 @@ 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
+if !HAVE_BITS_FUNCTEXCEPT_H
 libfollybase_la_SOURCES += detail/FunctionalExcept.cpp
 endif
 
+if HAVE_BOOST_CONTEXT
+nobase_follyinclude_HEADERS += \
+       fibers/AddTasks.h \
+       fibers/AddTasks-inl.h \
+       fibers/Baton.h \
+       fibers/Baton-inl.h \
+       fibers/BoostContextCompatibility.h \
+       fibers/EventBaseLoopController.h \
+       fibers/EventBaseLoopController-inl.h \
+       fibers/Fiber.h \
+       fibers/Fiber-inl.h \
+       fibers/FiberManager.h \
+       fibers/FiberManager-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/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/Fiber.cpp \
+       fibers/FiberManager.cpp \
+       fibers/FiberManagerMap.cpp \
+       fibers/GuardPageAllocator.cpp \
+       fibers/TimeoutController.cpp
+endif
+
 libfollybase_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LT_VERSION)
 
 libfolly_la_LIBADD = libfollybase.la
@@ -447,3 +535,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