blob: 1a88c4a719f48743b910f531f00c529c1ed4ca7b [file] [log] [blame]
mtkleind6043b22014-06-16 20:21:06 -07001{
2 'variables': {
3 'skia_warnings_as_errors': 0,
4 },
5 'targets': [{
6 # Draws pictures cross-process.
7 'target_name': 'nanomsg_picture_demo',
8 'type': 'executable',
9 'dependencies': [
10 'skia_lib.gyp:skia_lib',
11 'flags.gyp:flags',
12 'libnanomsg',
13 ],
14 'sources': [ '../experimental/nanomsg/picture_demo.cpp' ],
15 },{
16 'target_name': 'libnanomsg',
17 'type': 'static_library',
18
19 # Clients can include nanomsg public header foo.h with #include "nanomsg/src/foo.h"
20 'direct_dependent_settings': {
21 'include_dirs': [ '../third_party/externals' ]
22 },
23
24 # To refresh: cd gyp; find ../third_party/externals/nanomsg/src -name "*.c"
25 'sources': [
26 '../third_party/externals/nanomsg/src/aio/ctx.c',
27 '../third_party/externals/nanomsg/src/aio/fsm.c',
28 '../third_party/externals/nanomsg/src/aio/poller.c',
29 '../third_party/externals/nanomsg/src/aio/pool.c',
30 '../third_party/externals/nanomsg/src/aio/timer.c',
31 '../third_party/externals/nanomsg/src/aio/timerset.c',
32 '../third_party/externals/nanomsg/src/aio/usock.c',
33 '../third_party/externals/nanomsg/src/aio/worker.c',
34 '../third_party/externals/nanomsg/src/core/device.c',
35 '../third_party/externals/nanomsg/src/core/ep.c',
36 '../third_party/externals/nanomsg/src/core/epbase.c',
37 '../third_party/externals/nanomsg/src/core/global.c',
38 '../third_party/externals/nanomsg/src/core/pipe.c',
39 '../third_party/externals/nanomsg/src/core/poll.c',
40 '../third_party/externals/nanomsg/src/core/sock.c',
41 '../third_party/externals/nanomsg/src/core/sockbase.c',
42 '../third_party/externals/nanomsg/src/core/symbol.c',
43 '../third_party/externals/nanomsg/src/protocols/bus/bus.c',
44 '../third_party/externals/nanomsg/src/protocols/bus/xbus.c',
45 '../third_party/externals/nanomsg/src/protocols/pair/pair.c',
46 '../third_party/externals/nanomsg/src/protocols/pair/xpair.c',
47 '../third_party/externals/nanomsg/src/protocols/pipeline/pull.c',
48 '../third_party/externals/nanomsg/src/protocols/pipeline/push.c',
49 '../third_party/externals/nanomsg/src/protocols/pipeline/xpull.c',
50 '../third_party/externals/nanomsg/src/protocols/pipeline/xpush.c',
51 '../third_party/externals/nanomsg/src/protocols/pubsub/pub.c',
52 '../third_party/externals/nanomsg/src/protocols/pubsub/sub.c',
53 '../third_party/externals/nanomsg/src/protocols/pubsub/trie.c',
54 '../third_party/externals/nanomsg/src/protocols/pubsub/xpub.c',
55 '../third_party/externals/nanomsg/src/protocols/pubsub/xsub.c',
56 '../third_party/externals/nanomsg/src/protocols/reqrep/rep.c',
57 '../third_party/externals/nanomsg/src/protocols/reqrep/req.c',
58 '../third_party/externals/nanomsg/src/protocols/reqrep/xrep.c',
59 '../third_party/externals/nanomsg/src/protocols/reqrep/xreq.c',
60 '../third_party/externals/nanomsg/src/protocols/survey/respondent.c',
61 '../third_party/externals/nanomsg/src/protocols/survey/surveyor.c',
62 '../third_party/externals/nanomsg/src/protocols/survey/xrespondent.c',
63 '../third_party/externals/nanomsg/src/protocols/survey/xsurveyor.c',
64 '../third_party/externals/nanomsg/src/protocols/utils/dist.c',
65 '../third_party/externals/nanomsg/src/protocols/utils/excl.c',
66 '../third_party/externals/nanomsg/src/protocols/utils/fq.c',
67 '../third_party/externals/nanomsg/src/protocols/utils/lb.c',
68 '../third_party/externals/nanomsg/src/protocols/utils/priolist.c',
69 '../third_party/externals/nanomsg/src/transports/inproc/binproc.c',
70 '../third_party/externals/nanomsg/src/transports/inproc/cinproc.c',
71 '../third_party/externals/nanomsg/src/transports/inproc/inproc.c',
72 '../third_party/externals/nanomsg/src/transports/inproc/ins.c',
73 '../third_party/externals/nanomsg/src/transports/inproc/msgqueue.c',
74 '../third_party/externals/nanomsg/src/transports/inproc/sinproc.c',
75 '../third_party/externals/nanomsg/src/transports/ipc/aipc.c',
76 '../third_party/externals/nanomsg/src/transports/ipc/bipc.c',
77 '../third_party/externals/nanomsg/src/transports/ipc/cipc.c',
78 '../third_party/externals/nanomsg/src/transports/ipc/ipc.c',
79 '../third_party/externals/nanomsg/src/transports/ipc/sipc.c',
80 '../third_party/externals/nanomsg/src/transports/tcp/atcp.c',
81 '../third_party/externals/nanomsg/src/transports/tcp/btcp.c',
82 '../third_party/externals/nanomsg/src/transports/tcp/ctcp.c',
83 '../third_party/externals/nanomsg/src/transports/tcp/stcp.c',
84 '../third_party/externals/nanomsg/src/transports/tcp/tcp.c',
85 '../third_party/externals/nanomsg/src/transports/utils/backoff.c',
86 '../third_party/externals/nanomsg/src/transports/utils/dns.c',
87 '../third_party/externals/nanomsg/src/transports/utils/iface.c',
88 '../third_party/externals/nanomsg/src/transports/utils/literal.c',
89 '../third_party/externals/nanomsg/src/transports/utils/port.c',
90 '../third_party/externals/nanomsg/src/transports/utils/streamhdr.c',
91 '../third_party/externals/nanomsg/src/utils/alloc.c',
92 '../third_party/externals/nanomsg/src/utils/atomic.c',
93 '../third_party/externals/nanomsg/src/utils/chunk.c',
94 '../third_party/externals/nanomsg/src/utils/chunkref.c',
95 '../third_party/externals/nanomsg/src/utils/clock.c',
96 '../third_party/externals/nanomsg/src/utils/closefd.c',
97 '../third_party/externals/nanomsg/src/utils/efd.c',
98 '../third_party/externals/nanomsg/src/utils/err.c',
99 '../third_party/externals/nanomsg/src/utils/glock.c',
100 '../third_party/externals/nanomsg/src/utils/hash.c',
101 '../third_party/externals/nanomsg/src/utils/list.c',
102 '../third_party/externals/nanomsg/src/utils/msg.c',
103 '../third_party/externals/nanomsg/src/utils/mutex.c',
104 '../third_party/externals/nanomsg/src/utils/queue.c',
105 '../third_party/externals/nanomsg/src/utils/random.c',
106 '../third_party/externals/nanomsg/src/utils/sem.c',
107 '../third_party/externals/nanomsg/src/utils/sleep.c',
108 '../third_party/externals/nanomsg/src/utils/stopwatch.c',
109 '../third_party/externals/nanomsg/src/utils/thread.c',
110 '../third_party/externals/nanomsg/src/utils/wire.c',
111 ],
112
113 # TODO(mtklein): Support Windows?
114 # To refresh: cd third_party/externals/nanomsg; ./autogen.sh; ./configure; copy from Makefile.
115 'conditions': [
116 ['skia_os == "linux"', {
117 'cflags': [ '-Wno-missing-field-initializers' ],
118 'libraries': [ '-lanl' ], # Provides getaddrinfo_a and co.
119 'direct_dependent_settings': {
120 'libraries': [ '-lanl' ],
121 },
122 'defines=': [ # equals sign throws away most Skia defines (just noise)
123 'HAVE_ACCEPT4',
124 'HAVE_ARPA_INET_H',
125 'HAVE_CLOCK_GETTIME',
126 'HAVE_DLFCN_H',
127 'HAVE_EPOLL_CREATE',
128 'HAVE_EVENTFD',
129 'HAVE_GETIFADDRS',
130 'HAVE_INTTYPES_H',
131 'HAVE_MEMORY_H',
132 'HAVE_NETDB_H',
133 'HAVE_NETINET_IN_H',
134 'HAVE_PIPE',
135 'HAVE_PIPE2',
136 'HAVE_POLL',
137 'HAVE_PTHREAD_PRIO_INHERIT',
138 'HAVE_STDINT_H',
139 'HAVE_STDLIB_H',
140 'HAVE_STRINGS_H',
141 'HAVE_STRING_H',
142 'HAVE_SYS_IOCTL_H',
143 'HAVE_SYS_SOCKET_H',
144 'HAVE_SYS_STAT_H',
145 'HAVE_SYS_TYPES_H',
146 'HAVE_UNISTD_H',
147 'HAVE_UNISTD_H',
148 'NN_HAVE_ACCEPT4',
149 'NN_HAVE_CLANG',
150 'NN_HAVE_EVENTFD',
151 'NN_HAVE_GCC',
152 'NN_HAVE_GETADDRINFO_A',
153 'NN_HAVE_LINUX',
154 'NN_HAVE_PIPE',
155 'NN_HAVE_PIPE2',
156 'NN_HAVE_POLL',
157 'NN_HAVE_SEMAPHORE',
158 'NN_HAVE_SOCKETPAIR',
159 'NN_USE_EPOLL',
160 'NN_USE_EVENTFD',
161 'NN_USE_IFADDRS',
162 'STDC_HEADERS',
163 '_GNU_SOURCE',
164 ],
165 }],
166 ['skia_os == "mac"', {
167 'defines=': [ # equals sign throws away most Skia defines (just noise)
168 'HAVE_ARPA_INET_H',
169 'HAVE_DLFCN_H',
170 'HAVE_GETIFADDRS',
171 'HAVE_INTTYPES_H',
172 'HAVE_KQUEUE',
173 'HAVE_MEMORY_H',
174 'HAVE_NETDB_H',
175 'HAVE_NETINET_IN_H',
176 'HAVE_PIPE',
177 'HAVE_POLL',
178 'HAVE_PTHREAD_PRIO_INHERIT',
179 'HAVE_STDINT_H',
180 'HAVE_STDLIB_H',
181 'HAVE_STRINGS_H',
182 'HAVE_STRING_H',
183 'HAVE_SYS_IOCTL_H',
184 'HAVE_SYS_SOCKET_H',
185 'HAVE_SYS_STAT_H',
186 'HAVE_SYS_TYPES_H',
187 'HAVE_UNISTD_H',
188 'NN_HAVE_CLANG',
189 'NN_HAVE_GCC',
190 'NN_HAVE_OSX',
191 'NN_HAVE_PIPE',
192 'NN_HAVE_POLL',
193 'NN_HAVE_SEMAPHORE',
194 'NN_HAVE_SOCKETPAIR',
195 'NN_USE_IFADDRS',
196 'NN_USE_KQUEUE',
197 'NN_USE_PIPE',
198 'STDC_HEADERS',
199 '_THREAD_SAFE',
200 ],
201 }],
202 ]
203 }]
204}