Some opensource build fixes
[folly.git] / folly / Makefile.am
1 SUBDIRS = . test
2
3 ACLOCAL_AMFLAGS = -I m4
4
5 CLEANFILES =
6
7 noinst_PROGRAMS = generate_fingerprint_tables
8 generate_fingerprint_tables_SOURCES = build/GenerateFingerprintTables.cpp
9 generate_fingerprint_tables_LDADD = libfolly.la
10
11 lib_LTLIBRARIES = \
12         libfolly.la \
13         libfollybenchmark.la \
14         libfollytimeout_queue.la \
15         libfollyfingerprint.la
16
17 follyincludedir = $(includedir)/folly
18
19 nobase_follyinclude_HEADERS = \
20         ApplyTuple.h \
21         Arena.h \
22         Arena-inl.h \
23         AtomicBitSet.h \
24         AtomicHashArray.h \
25         AtomicHashArray-inl.h \
26         AtomicHashMap.h \
27         AtomicHashMap-inl.h \
28         AtomicStruct.h \
29         Baton.h \
30         Benchmark.h \
31         Bits.h \
32         Checksum.h \
33         Chrono.h \
34         ConcurrentSkipList.h \
35         ConcurrentSkipList-inl.h \
36         Conv.h \
37         CpuId.h \
38         CPortability.h \
39         detail/AtomicHashUtils.h \
40         detail/BitIteratorDetail.h \
41         detail/BitsDetail.h \
42         detail/CacheLocality.h \
43         detail/ChecksumDetail.h \
44         detail/Clock.h \
45         detail/DiscriminatedPtrDetail.h \
46         detail/ExceptionWrapper.h \
47         detail/FileUtilDetail.h \
48         detail/FingerprintPolynomial.h \
49         detail/FunctionalExcept.h \
50         detail/Futex.h \
51         detail/GroupVarintDetail.h \
52         detail/Malloc.h \
53         detail/MemoryIdler.h \
54         detail/MPMCPipelineDetail.h \
55         detail/SlowFingerprint.h \
56         detail/Stats.h \
57         detail/ThreadLocalDetail.h \
58         detail/UncaughtExceptionCounter.h \
59         Demangle.h \
60         DiscriminatedPtr.h \
61         DynamicConverter.h \
62         dynamic.h \
63         dynamic-inl.h \
64         Exception.h \
65         FBString.h \
66         FBVector.h \
67         File.h \
68         FileUtil.h \
69         Fingerprint.h \
70         folly-config.h \
71         Exception.h \
72         ExceptionWrapper.h \
73         Foreach.h \
74         FormatArg.h \
75         Format.h \
76         Format-inl.h \
77         GroupVarint.h \
78         Hash.h \
79         IPAddress.h \
80         IPAddressV4.h \
81         IPAddressV6.h \
82         IPAddressException.h \
83         IndexedMemPool.h \
84         IntrusiveList.h \
85         io/Cursor.h \
86         io/IOBuf.h \
87         io/IOBufQueue.h \
88         io/RecordIO.h \
89         io/RecordIO-inl.h \
90         io/TypedIOBuf.h \
91         io/async/AsyncTimeout.h \
92         io/async/EventBase.h \
93         io/async/EventFDWrapper.h \
94         io/async/EventHandler.h \
95         io/async/EventUtil.h \
96         io/async/NotificationQueue.h \
97         io/async/Request.h \
98         io/async/TimeoutManager.h \
99         json.h \
100         Lazy.h \
101         LifoSem.h \
102         Likely.h \
103         Logging.h \
104         MacAddress.h \
105         Malloc.h \
106         MapUtil.h \
107         Memory.h \
108         MemoryMapping.h \
109         MoveWrapper.h \
110         MPMCPipeline.h \
111         MPMCQueue.h \
112         Optional.h \
113         PackedSyncPtr.h \
114         Padded.h \
115         Portability.h \
116         Preprocessor.h \
117         ProducerConsumerQueue.h \
118         Random.h \
119         Range.h \
120         RWSpinLock.h \
121         ScopeGuard.h \
122         SmallLocks.h \
123         small_vector.h \
124         sorted_vector_types.h \
125         SpookyHashV1.h \
126         SpookyHashV2.h \
127         stats/BucketedTimeSeries-defs.h \
128         stats/BucketedTimeSeries.h \
129         stats/Histogram-defs.h \
130         stats/Histogram.h \
131         stats/MultiLevelTimeSeries-defs.h \
132         stats/MultiLevelTimeSeries.h \
133         String.h \
134         String-inl.h \
135         Subprocess.h \
136         Synchronized.h \
137         test/FBStringTestBenchmarks.cpp.h \
138         test/FBVectorTestBenchmarks.cpp.h \
139         test/function_benchmark/benchmark_impl.h \
140         test/function_benchmark/test_functions.h \
141         test/SynchronizedTestLib.h \
142         test/SynchronizedTestLib-inl.h \
143         ThreadCachedArena.h \
144         ThreadCachedInt.h \
145         ThreadLocal.h \
146         TimeoutQueue.h \
147         Traits.h \
148         Unicode.h \
149         Uri.h \
150         Uri-inl.h \
151         Varint.h \
152         wangle/Executor.h \
153         wangle/Future-inl.h \
154         wangle/Future.h \
155         wangle/GenericThreadGate.h \
156         wangle/InlineExecutor.h \
157         wangle/Later-inl.h \
158         wangle/Later.h \
159         wangle/ManualExecutor.h \
160         wangle/Promise-inl.h \
161         wangle/Promise.h \
162         wangle/ThreadGate.h \
163         wangle/Try-inl.h \
164         wangle/Try.h \
165         wangle/WangleException.h \
166         wangle/detail.h
167
168 FormatTables.cpp: build/generate_format_tables.py
169         build/generate_format_tables.py
170 CLEANFILES += FormatTables.cpp
171
172 EscapeTables.cpp: build/generate_escape_tables.py
173         build/generate_escape_tables.py
174 CLEANFILES += EscapeTables.cpp
175
176 GroupVarintTables.cpp: build/generate_varint_tables.py
177         build/generate_varint_tables.py
178 CLEANFILES += GroupVarintTables.cpp
179
180 libfolly_la_SOURCES = \
181         Bits.cpp \
182         Conv.cpp \
183         Demangle.cpp \
184         detail/CacheLocality.cpp \
185         dynamic.cpp \
186         EscapeTables.cpp \
187         File.cpp \
188         FileUtil.cpp \
189         Format.cpp \
190         FormatTables.cpp \
191         detail/Futex.cpp \
192         GroupVarint.cpp \
193         GroupVarintTables.cpp \
194         IPAddress.cpp \
195         IPAddressV4.cpp \
196         IPAddressV6.cpp \
197         LifoSem.cpp \
198         io/IOBuf.cpp \
199         io/IOBufQueue.cpp \
200         io/RecordIO.cpp \
201         io/async/AsyncTimeout.cpp \
202         io/async/EventBase.cpp \
203         io/async/EventHandler.cpp \
204         io/async/Request.cpp \
205         experimental/io/HugePages.cpp \
206         json.cpp \
207         detail/MallocImpl.cpp \
208         detail/MemoryIdler.cpp \
209         MacAddress.cpp \
210         Malloc.cpp \
211         MemoryMapping.cpp \
212         Random.cpp \
213         Range.cpp \
214         SafeAssert.cpp \
215         SpookyHashV1.cpp \
216         SpookyHashV2.cpp \
217         stats/Instantiations.cpp \
218         String.cpp \
219         Subprocess.cpp \
220         ThreadCachedArena.cpp \
221         TimeoutQueue.cpp \
222         Unicode.cpp \
223         Uri.cpp \
224         wangle/InlineExecutor.cpp \
225         wangle/ManualExecutor.cpp \
226         wangle/ThreadGate.cpp
227
228 if !HAVE_LINUX
229 nobase_follyinclude_HEADERS += detail/Clock.h
230 libfolly_la_SOURCES += detail/Clock.cpp
231 endif
232
233 if !HAVE_WEAK_SYMBOLS
234 libfolly_la_SOURCES += detail/MallocImpl.cpp
235 endif
236
237 if !HAVE_BITS_FUNCTEXCEPT
238 libfolly_la_SOURCES += detail/FunctionalExcept.cpp
239 endif
240
241 libfolly_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LT_VERSION)
242
243 FingerprintTables.cpp: generate_fingerprint_tables
244         ./generate_fingerprint_tables
245 CLEANFILES += FingerprintTables.cpp
246
247 libfollyfingerprint_la_SOURCES = \
248         FingerprintTables.cpp
249 libfollyfingerprint_la_LIBADD = libfolly.la
250 libfollyfingerprint_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LT_VERSION)
251
252 libfollybenchmark_la_SOURCES = Benchmark.cpp
253 libfollybenchmark_la_LIBADD = libfolly.la
254 libfollybenchmark_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LT_VERSION)
255
256 libfollytimeout_queue_la_SOURCES = TimeoutQueue.cpp
257 libfollytimeout_queue_la_LIBADD = libfolly.la
258 libfollytimeout_queue_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LT_VERSION)
259