2 SUBDIRS = . experimental init test
7 ACLOCAL_AMFLAGS = -I m4
11 noinst_PROGRAMS = generate_fingerprint_tables
12 generate_fingerprint_tables_SOURCES = build/GenerateFingerprintTables.cpp
13 generate_fingerprint_tables_LDADD = libfollybase.la
15 noinst_LTLIBRARIES = \
22 follyincludedir = $(includedir)/folly
24 nobase_follyinclude_HEADERS = \
32 AtomicHashArray-inl.h \
35 AtomicIntrusiveLinkedList.h \
38 AtomicUnorderedMap.h \
44 ConcurrentSkipList.h \
45 ConcurrentSkipList-inl.h \
46 ConditionallyExistent.h \
52 detail/AtomicHashUtils.h \
53 detail/AtomicUnorderedMapUtils.h \
54 detail/BitIteratorDetail.h \
56 detail/CacheLocality.h \
57 detail/ChecksumDetail.h \
58 detail/DiscriminatedPtrDetail.h \
59 detail/ExceptionWrapper.h \
60 detail/FileUtilDetail.h \
61 detail/FingerprintPolynomial.h \
62 detail/FunctionalExcept.h \
64 detail/GroupVarintDetail.h \
66 detail/IPAddressSource.h \
68 detail/MemoryIdler.h \
69 detail/MPMCPipelineDetail.h \
70 detail/RangeCommon.h \
73 detail/SlowFingerprint.h \
74 detail/SocketFastOpen.h \
75 detail/SpinLockImpl.h \
76 detail/StaticSingletonManager.h \
78 detail/ThreadLocalDetail.h \
79 detail/TurnSequencer.h \
80 detail/UncaughtExceptionCounter.h \
92 experimental/AutoTimer.h \
94 experimental/BitVectorCoding.h \
95 experimental/DynamicParser.h \
96 experimental/DynamicParser-inl.h \
97 experimental/ExecutionObserver.h \
98 experimental/EliasFanoCoding.h \
99 experimental/EventCount.h \
100 experimental/Instructions.h \
101 experimental/bser/Bser.h \
102 experimental/FunctionScheduler.h \
103 experimental/FutureDAG.h \
104 experimental/io/FsUtil.h \
105 experimental/JSONSchema.h \
106 experimental/LockFreeRingBuffer.h \
107 experimental/NestedCommandLineApp.h \
108 experimental/ProgramOptions.h \
109 experimental/ReadMostlySharedPtr.h \
110 experimental/symbolizer/Elf.h \
111 experimental/symbolizer/ElfCache.h \
112 experimental/symbolizer/Dwarf.h \
113 experimental/symbolizer/LineReader.h \
114 experimental/symbolizer/SignalHandler.h \
115 experimental/symbolizer/StackTrace.cpp \
116 experimental/symbolizer/Symbolizer.h \
117 experimental/Select64.h \
118 experimental/StringKeyedCommon.h \
119 experimental/StringKeyedUnorderedMap.h \
120 experimental/StringKeyedUnorderedSet.h \
121 experimental/TestUtil.h \
122 experimental/TLRefCount.h \
123 experimental/TupleOps.h \
136 futures/DrivableExecutor.h \
137 futures/Future-pre.h \
140 futures/Future-inl.h \
141 futures/FutureException.h \
142 futures/InlineExecutor.h \
143 futures/ManualExecutor.h \
144 futures/OpaqueCallbackShunt.h \
145 futures/Promise-inl.h \
147 futures/QueuedImmediateExecutor.h \
148 futures/ScheduledExecutor.h \
149 futures/SharedPromise.h \
150 futures/SharedPromise-inl.h \
151 futures/ThreadWheelTimekeeper.h \
152 futures/Timekeeper.h \
153 futures/detail/Core.h \
154 futures/detail/FSM.h \
155 futures/detail/Types.h \
167 gen/ParallelMap-inl.h \
175 IPAddressException.h \
188 io/ShutdownSocketSet.h \
189 io/async/AsyncPipe.h \
190 io/async/AsyncTimeout.h \
191 io/async/AsyncTransport.h \
192 io/async/AsyncUDPServerSocket.h \
193 io/async/AsyncUDPSocket.h \
194 io/async/AsyncServerSocket.h \
195 io/async/AsyncSignalHandler.h \
196 io/async/AsyncSocket.h \
197 io/async/AsyncSocketBase.h \
198 io/async/AsyncSSLSocket.h \
199 io/async/AsyncSocketException.h \
200 io/async/DecoratedAsyncTransportWrapper.h \
201 io/async/DelayedDestructionBase.h \
202 io/async/DelayedDestruction.h \
203 io/async/EventBase.h \
204 io/async/EventBaseLocal.h \
205 io/async/EventBaseManager.h \
206 io/async/EventFDWrapper.h \
207 io/async/EventHandler.h \
208 io/async/EventUtil.h \
209 io/async/NotificationQueue.h \
210 io/async/HHWheelTimer.h \
211 io/async/ssl/OpenSSLPtrTypes.h \
212 io/async/ssl/OpenSSLUtils.h \
213 io/async/ssl/SSLErrors.h \
214 io/async/ssl/TLSDefinitions.h \
216 io/async/SSLContext.h \
217 io/async/ScopedEventBaseThread.h \
218 io/async/TimeoutManager.h \
219 io/async/WriteChainAsyncTransportWrapper.h \
220 io/async/test/AsyncSSLSocketTest.h \
221 io/async/test/BlockingSocket.h \
222 io/async/test/MockAsyncSocket.h \
223 io/async/test/MockAsyncServerSocket.h \
224 io/async/test/MockAsyncSSLSocket.h \
225 io/async/test/MockAsyncTransport.h \
226 io/async/test/MockAsyncUDPSocket.h \
227 io/async/test/MockTimeoutManager.h \
228 io/async/test/SocketPair.h \
229 io/async/test/TimeUtil.h \
230 io/async/test/UndelayedDestruction.h \
231 io/async/test/Util.h \
255 portability/Builtins.h \
256 portability/Config.h \
257 portability/Constexpr.h \
258 portability/Dirent.h \
259 portability/Environment.h \
260 portability/Event.h \
261 portability/Fcntl.h \
262 portability/GFlags.h \
263 portability/IOVec.h \
264 portability/Libgen.h \
265 portability/Malloc.h \
267 portability/Memory.h \
268 portability/PThread.h \
269 portability/Sockets.h \
270 portability/Stdio.h \
271 portability/Stdlib.h \
272 portability/String.h \
273 portability/Syslog.h \
274 portability/SysFile.h \
275 portability/SysMman.h \
276 portability/SysResource.h \
277 portability/SysStat.h \
278 portability/SysSyscall.h \
279 portability/SysTime.h \
280 portability/SysTypes.h \
281 portability/SysUio.h \
283 portability/Windows.h \
284 portability/Unistd.h \
286 ProducerConsumerQueue.h \
295 SingletonThreadLocal.h \
299 sorted_vector_types.h \
305 stats/BucketedTimeSeries-defs.h \
306 stats/BucketedTimeSeries.h \
307 stats/Histogram-defs.h \
309 stats/MultiLevelTimeSeries-defs.h \
310 stats/MultiLevelTimeSeries.h \
311 stats/TimeseriesHistogram-defs.h \
312 stats/TimeseriesHistogram.h \
318 test/FBStringTestBenchmarks.cpp.h \
319 test/FBVectorTestBenchmarks.cpp.h \
320 test/function_benchmark/benchmark_impl.h \
321 test/function_benchmark/test_functions.h \
322 test/SynchronizedTestLib.h \
323 test/SynchronizedTestLib-inl.h \
325 ThreadCachedArena.h \
341 FormatTables.cpp: build/generate_format_tables.py
342 $(PYTHON) build/generate_format_tables.py
343 CLEANFILES += FormatTables.cpp
345 EscapeTables.cpp: build/generate_escape_tables.py
346 $(PYTHON) build/generate_escape_tables.py
347 CLEANFILES += EscapeTables.cpp
349 GroupVarintTables.cpp: build/generate_varint_tables.py
350 $(PYTHON) build/generate_varint_tables.py
351 CLEANFILES += GroupVarintTables.cpp
353 libfollybase_la_SOURCES = \
356 detail/RangeCommon.cpp \
357 detail/RangeSse42.cpp \
365 libfolly_la_SOURCES = \
368 detail/CacheLocality.cpp \
369 detail/IPAddress.cpp \
373 FingerprintTables.cpp \
374 futures/Barrier.cpp \
376 futures/InlineExecutor.cpp \
377 futures/ManualExecutor.cpp \
378 futures/QueuedImmediateExecutor.cpp \
379 futures/ThreadWheelTimekeeper.cpp \
381 detail/StaticSingletonManager.cpp \
382 detail/ThreadLocalDetail.cpp \
384 GroupVarintTables.cpp \
394 io/ShutdownSocketSet.cpp \
395 io/async/AsyncPipe.cpp \
396 io/async/AsyncTimeout.cpp \
397 io/async/AsyncUDPSocket.cpp \
398 io/async/AsyncServerSocket.cpp \
399 io/async/AsyncSignalHandler.cpp \
400 io/async/AsyncSocket.cpp \
401 io/async/AsyncSSLSocket.cpp \
402 io/async/EventBase.cpp \
403 io/async/EventBaseLocal.cpp \
404 io/async/EventBaseManager.cpp \
405 io/async/EventHandler.cpp \
406 io/async/Request.cpp \
407 io/async/SSLContext.cpp \
408 io/async/ScopedEventBaseThread.cpp \
409 io/async/HHWheelTimer.cpp \
410 io/async/test/SocketPair.cpp \
411 io/async/test/TimeUtil.cpp \
412 io/async/ssl/OpenSSLUtils.cpp \
413 io/async/ssl/SSLErrors.cpp \
415 detail/MemoryIdler.cpp \
416 detail/SocketFastOpen.cpp \
419 portability/Dirent.cpp \
420 portability/Environment.cpp \
421 portability/Fcntl.cpp \
422 portability/Libgen.cpp \
423 portability/Malloc.cpp \
424 portability/Memory.cpp \
425 portability/Sockets.cpp \
426 portability/Stdio.cpp \
427 portability/Stdlib.cpp \
428 portability/String.cpp \
429 portability/SysFile.cpp \
430 portability/SysMman.cpp \
431 portability/SysResource.cpp \
432 portability/SysStat.cpp \
433 portability/SysTime.cpp \
434 portability/SysUio.cpp \
435 portability/Time.cpp \
436 portability/Unistd.cpp \
445 ssl/OpenSSLHash.cpp \
446 stats/Instantiations.cpp \
448 ThreadCachedArena.cpp \
452 experimental/bser/Dump.cpp \
453 experimental/bser/Load.cpp \
454 experimental/DynamicParser.cpp \
455 experimental/FunctionScheduler.cpp \
456 experimental/io/FsUtil.cpp \
457 experimental/JSONSchema.cpp \
458 experimental/NestedCommandLineApp.cpp \
459 experimental/ProgramOptions.cpp \
460 experimental/Select64.cpp \
461 experimental/TestUtil.cpp
464 nobase_follyinclude_HEADERS += \
465 experimental/io/HugePages.h
466 libfolly_la_SOURCES += \
467 experimental/io/HugePages.cpp
470 if !HAVE_WEAK_SYMBOLS
471 libfollybase_la_SOURCES += detail/MallocImpl.cpp
474 if !HAVE_BITS_FUNCTEXCEPT_H
475 libfollybase_la_SOURCES += detail/FunctionalExcept.cpp
478 if HAVE_BOOST_CONTEXT
479 nobase_follyinclude_HEADERS += \
481 fibers/AddTasks-inl.h \
484 fibers/BoostContextCompatibility.h \
485 fibers/EventBaseLoopController.h \
486 fibers/EventBaseLoopController-inl.h \
489 fibers/FiberManager.h \
490 fibers/FiberManager-inl.h \
491 fibers/FiberManagerMap.h \
493 fibers/ForEach-inl.h \
494 fibers/GenericBaton.h \
495 fibers/GuardPageAllocator.h \
496 fibers/LoopController.h \
498 fibers/Promise-inl.h \
499 fibers/SimpleLoopController.h \
500 fibers/TimedMutex.h \
501 fibers/TimedMutex-inl.h \
502 fibers/TimeoutController.h \
507 libfolly_la_SOURCES += \
510 fibers/FiberManager.cpp \
511 fibers/FiberManagerMap.cpp \
512 fibers/GuardPageAllocator.cpp \
513 fibers/TimeoutController.cpp
516 libfollybase_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LT_VERSION)
518 libfolly_la_LIBADD = libfollybase.la
519 libfolly_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LT_VERSION) -lssl
521 FingerprintTables.cpp: generate_fingerprint_tables
522 ./generate_fingerprint_tables
523 CLEANFILES += FingerprintTables.cpp
525 libfollybenchmark_la_SOURCES = Benchmark.cpp
526 libfollybenchmark_la_LIBADD = libfolly.la
527 libfollybenchmark_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LT_VERSION)