|
1 # |
|
2 # Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. |
|
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
|
4 # |
|
5 # This code is free software; you can redistribute it and/or modify it |
|
6 # under the terms of the GNU General Public License version 2 only, as |
|
7 # published by the Free Software Foundation. Oracle designates this |
|
8 # particular file as subject to the "Classpath" exception as provided |
|
9 # by Oracle in the LICENSE file that accompanied this code. |
|
10 # |
|
11 # This code is distributed in the hope that it will be useful, but WITHOUT |
|
12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
|
13 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
|
14 # version 2 for more details (a copy is included in the LICENSE file that |
|
15 # accompanied this code). |
|
16 # |
|
17 # You should have received a copy of the GNU General Public License version |
|
18 # 2 along with this work; if not, write to the Free Software Foundation, |
|
19 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
|
20 # |
|
21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
|
22 # or visit www.oracle.com if you need additional information or have any |
|
23 # questions. |
|
24 # |
|
25 |
|
26 # |
|
27 # Makefile for java.nio |
|
28 # |
|
29 |
|
30 BUILDDIR = ../.. |
|
31 LEGACY_BUILDDIR = ../../../make |
|
32 PACKAGE = java.nio |
|
33 LIBRARY = nio |
|
34 PRODUCT = java |
|
35 JAVAC_MAX_WARNINGS = true |
|
36 JAVAC_WARNINGS_FATAL = true |
|
37 include $(BUILDDIR)/common/Defs.gmk |
|
38 |
|
39 NIO_SRC = $(SHARE_SRC)/classes/java/nio |
|
40 NIO_GEN = $(GENSRCDIR)/java/nio |
|
41 |
|
42 SNIO_SRC = $(SHARE_SRC)/classes/sun/nio |
|
43 SNIO_GEN = $(GENSRCDIR)/sun/nio |
|
44 |
|
45 # |
|
46 # Files to compile |
|
47 # |
|
48 |
|
49 include FILES_java.gmk |
|
50 include FILES_c.gmk |
|
51 include Exportedfiles.gmk |
|
52 |
|
53 ifeq ($(PLATFORM), solaris) |
|
54 FILES_java += \ |
|
55 sun/nio/ch/AbstractPollSelectorImpl.java \ |
|
56 sun/nio/ch/DevPollArrayWrapper.java \ |
|
57 sun/nio/ch/DevPollSelectorImpl.java \ |
|
58 sun/nio/ch/DevPollSelectorProvider.java \ |
|
59 sun/nio/ch/InheritedChannel.java \ |
|
60 sun/nio/ch/PollSelectorProvider.java \ |
|
61 sun/nio/ch/PollSelectorImpl.java \ |
|
62 sun/nio/ch/Port.java \ |
|
63 sun/nio/ch/SimpleAsynchronousFileChannelImpl.java \ |
|
64 sun/nio/ch/SolarisAsynchronousChannelProvider.java \ |
|
65 sun/nio/ch/SolarisEventPort.java \ |
|
66 sun/nio/ch/UnixAsynchronousServerSocketChannelImpl.java \ |
|
67 sun/nio/ch/UnixAsynchronousSocketChannelImpl.java \ |
|
68 \ |
|
69 sun/nio/fs/GnomeFileTypeDetector.java \ |
|
70 sun/nio/fs/PollingWatchService.java \ |
|
71 sun/nio/fs/SolarisAclFileAttributeView.java \ |
|
72 sun/nio/fs/SolarisFileStore.java \ |
|
73 sun/nio/fs/SolarisFileSystem.java \ |
|
74 sun/nio/fs/SolarisFileSystemProvider.java \ |
|
75 sun/nio/fs/SolarisUserDefinedFileAttributeView.java \ |
|
76 sun/nio/fs/SolarisNativeDispatcher.java \ |
|
77 sun/nio/fs/SolarisWatchService.java \ |
|
78 sun/nio/fs/UnixChannelFactory.java \ |
|
79 sun/nio/fs/UnixCopyFile.java \ |
|
80 sun/nio/fs/UnixDirectoryStream.java \ |
|
81 sun/nio/fs/UnixException.java \ |
|
82 sun/nio/fs/UnixFileAttributeViews.java \ |
|
83 sun/nio/fs/UnixFileAttributes.java \ |
|
84 sun/nio/fs/UnixFileKey.java \ |
|
85 sun/nio/fs/UnixFileModeAttribute.java \ |
|
86 sun/nio/fs/UnixFileStore.java \ |
|
87 sun/nio/fs/UnixFileStoreAttributes.java \ |
|
88 sun/nio/fs/UnixFileSystem.java \ |
|
89 sun/nio/fs/UnixFileSystemProvider.java \ |
|
90 sun/nio/fs/UnixMountEntry.java \ |
|
91 sun/nio/fs/UnixNativeDispatcher.java \ |
|
92 sun/nio/fs/UnixPath.java \ |
|
93 sun/nio/fs/UnixSecureDirectoryStream.java \ |
|
94 sun/nio/fs/UnixUriUtils.java \ |
|
95 sun/nio/fs/UnixUserPrincipals.java |
|
96 |
|
97 FILES_c += \ |
|
98 DevPollArrayWrapper.c \ |
|
99 InheritedChannel.c \ |
|
100 NativeThread.c \ |
|
101 PollArrayWrapper.c \ |
|
102 SolarisEventPort.c \ |
|
103 UnixAsynchronousServerSocketChannelImpl.c \ |
|
104 UnixAsynchronousSocketChannelImpl.c \ |
|
105 \ |
|
106 GnomeFileTypeDetector.c \ |
|
107 SolarisNativeDispatcher.c \ |
|
108 SolarisWatchService.c \ |
|
109 UnixCopyFile.c \ |
|
110 UnixNativeDispatcher.c |
|
111 |
|
112 FILES_export += \ |
|
113 sun/nio/ch/DevPollArrayWrapper.java \ |
|
114 sun/nio/ch/InheritedChannel.java \ |
|
115 sun/nio/ch/NativeThread.java \ |
|
116 sun/nio/ch/SolarisEventPort.java \ |
|
117 sun/nio/ch/UnixAsynchronousServerSocketChannelImpl.java \ |
|
118 sun/nio/ch/UnixAsynchronousSocketChannelImpl.java \ |
|
119 \ |
|
120 sun/nio/fs/GnomeFileTypeDetector.java \ |
|
121 sun/nio/fs/SolarisNativeDispatcher.java \ |
|
122 sun/nio/fs/SolarisWatchService.java \ |
|
123 sun/nio/fs/UnixCopyFile.java \ |
|
124 sun/nio/fs/UnixNativeDispatcher.java |
|
125 |
|
126 FILES_gen += \ |
|
127 sun/nio/fs/SolarisConstants.java \ |
|
128 sun/nio/fs/UnixConstants.java |
|
129 endif # PLATFORM = solaris |
|
130 |
|
131 ifeq ($(PLATFORM), windows) |
|
132 FILES_java += \ |
|
133 sun/nio/ch/Iocp.java \ |
|
134 sun/nio/ch/PendingIoCache.java \ |
|
135 sun/nio/ch/WindowsAsynchronousChannelProvider.java \ |
|
136 sun/nio/ch/WindowsAsynchronousFileChannelImpl.java \ |
|
137 sun/nio/ch/WindowsAsynchronousServerSocketChannelImpl.java \ |
|
138 sun/nio/ch/WindowsAsynchronousSocketChannelImpl.java \ |
|
139 sun/nio/ch/WindowsSelectorImpl.java \ |
|
140 sun/nio/ch/WindowsSelectorProvider.java \ |
|
141 \ |
|
142 sun/nio/fs/RegistryFileTypeDetector.java \ |
|
143 sun/nio/fs/WindowsAclFileAttributeView.java \ |
|
144 sun/nio/fs/WindowsChannelFactory.java \ |
|
145 sun/nio/fs/WindowsConstants.java \ |
|
146 sun/nio/fs/WindowsDirectoryStream.java \ |
|
147 sun/nio/fs/WindowsException.java \ |
|
148 sun/nio/fs/WindowsFileAttributeViews.java \ |
|
149 sun/nio/fs/WindowsFileAttributes.java \ |
|
150 sun/nio/fs/WindowsFileCopy.java \ |
|
151 sun/nio/fs/WindowsFileStore.java \ |
|
152 sun/nio/fs/WindowsFileSystem.java \ |
|
153 sun/nio/fs/WindowsFileSystemProvider.java \ |
|
154 sun/nio/fs/WindowsLinkSupport.java \ |
|
155 sun/nio/fs/WindowsUserDefinedFileAttributeView.java \ |
|
156 sun/nio/fs/WindowsNativeDispatcher.java \ |
|
157 sun/nio/fs/WindowsPath.java \ |
|
158 sun/nio/fs/WindowsPathParser.java \ |
|
159 sun/nio/fs/WindowsPathType.java \ |
|
160 sun/nio/fs/WindowsSecurity.java \ |
|
161 sun/nio/fs/WindowsSecurityDescriptor.java \ |
|
162 sun/nio/fs/WindowsUriSupport.java \ |
|
163 sun/nio/fs/WindowsUserPrincipals.java \ |
|
164 sun/nio/fs/WindowsWatchService.java |
|
165 |
|
166 FILES_c += \ |
|
167 Iocp.c \ |
|
168 RegistryFileTypeDetector.c \ |
|
169 WindowsAsynchronousFileChannelImpl.c \ |
|
170 WindowsAsynchronousServerSocketChannelImpl.c \ |
|
171 WindowsAsynchronousSocketChannelImpl.c \ |
|
172 WindowsNativeDispatcher.c \ |
|
173 WindowsSelectorImpl.c |
|
174 |
|
175 FILES_export += \ |
|
176 sun/nio/ch/Iocp.java \ |
|
177 sun/nio/ch/WindowsAsynchronousFileChannelImpl.java \ |
|
178 sun/nio/ch/WindowsAsynchronousServerSocketChannelImpl.java \ |
|
179 sun/nio/ch/WindowsAsynchronousSocketChannelImpl.java \ |
|
180 sun/nio/ch/WindowsSelectorImpl.java \ |
|
181 sun/nio/fs/WindowsNativeDispatcher.java \ |
|
182 sun/nio/fs/RegistryFileTypeDetector.java |
|
183 endif # PLATFORM = windows |
|
184 |
|
185 ifeq ($(PLATFORM), linux) |
|
186 FILES_java += \ |
|
187 sun/nio/ch/AbstractPollSelectorImpl.java \ |
|
188 sun/nio/ch/EPoll.java \ |
|
189 sun/nio/ch/EPollArrayWrapper.java \ |
|
190 sun/nio/ch/EPollPort.java \ |
|
191 sun/nio/ch/EPollSelectorProvider.java \ |
|
192 sun/nio/ch/EPollSelectorImpl.java \ |
|
193 sun/nio/ch/InheritedChannel.java \ |
|
194 sun/nio/ch/LinuxAsynchronousChannelProvider.java \ |
|
195 sun/nio/ch/PollSelectorProvider.java \ |
|
196 sun/nio/ch/PollSelectorImpl.java \ |
|
197 sun/nio/ch/Port.java \ |
|
198 sun/nio/ch/SimpleAsynchronousFileChannelImpl.java \ |
|
199 sun/nio/ch/UnixAsynchronousServerSocketChannelImpl.java \ |
|
200 sun/nio/ch/UnixAsynchronousSocketChannelImpl.java \ |
|
201 \ |
|
202 sun/nio/fs/GnomeFileTypeDetector.java \ |
|
203 sun/nio/fs/LinuxDosFileAttributeView.java \ |
|
204 sun/nio/fs/LinuxFileStore.java \ |
|
205 sun/nio/fs/LinuxFileSystem.java \ |
|
206 sun/nio/fs/LinuxFileSystemProvider.java \ |
|
207 sun/nio/fs/LinuxUserDefinedFileAttributeView.java \ |
|
208 sun/nio/fs/LinuxNativeDispatcher.java \ |
|
209 sun/nio/fs/LinuxWatchService.java \ |
|
210 sun/nio/fs/UnixChannelFactory.java \ |
|
211 sun/nio/fs/UnixCopyFile.java \ |
|
212 sun/nio/fs/UnixDirectoryStream.java \ |
|
213 sun/nio/fs/UnixException.java \ |
|
214 sun/nio/fs/UnixFileAttributeViews.java \ |
|
215 sun/nio/fs/UnixFileAttributes.java \ |
|
216 sun/nio/fs/UnixFileKey.java \ |
|
217 sun/nio/fs/UnixFileModeAttribute.java \ |
|
218 sun/nio/fs/UnixFileStore.java \ |
|
219 sun/nio/fs/UnixFileStoreAttributes.java \ |
|
220 sun/nio/fs/UnixFileSystem.java \ |
|
221 sun/nio/fs/UnixFileSystemProvider.java \ |
|
222 sun/nio/fs/UnixMountEntry.java \ |
|
223 sun/nio/fs/UnixNativeDispatcher.java \ |
|
224 sun/nio/fs/UnixPath.java \ |
|
225 sun/nio/fs/UnixSecureDirectoryStream.java \ |
|
226 sun/nio/fs/UnixUriUtils.java \ |
|
227 sun/nio/fs/UnixUserPrincipals.java |
|
228 |
|
229 FILES_c += \ |
|
230 EPoll.c \ |
|
231 EPollArrayWrapper.c \ |
|
232 EPollPort.c \ |
|
233 InheritedChannel.c \ |
|
234 NativeThread.c \ |
|
235 PollArrayWrapper.c \ |
|
236 UnixAsynchronousServerSocketChannelImpl.c \ |
|
237 UnixAsynchronousSocketChannelImpl.c \ |
|
238 \ |
|
239 GnomeFileTypeDetector.c \ |
|
240 LinuxNativeDispatcher.c \ |
|
241 LinuxWatchService.c \ |
|
242 UnixCopyFile.c \ |
|
243 UnixNativeDispatcher.c |
|
244 |
|
245 FILES_export += \ |
|
246 sun/nio/ch/EPoll.java \ |
|
247 sun/nio/ch/EPollArrayWrapper.java \ |
|
248 sun/nio/ch/EPollPort.java \ |
|
249 sun/nio/ch/InheritedChannel.java \ |
|
250 sun/nio/ch/NativeThread.java \ |
|
251 sun/nio/ch/UnixAsynchronousServerSocketChannelImpl.java \ |
|
252 sun/nio/ch/UnixAsynchronousSocketChannelImpl.java \ |
|
253 \ |
|
254 sun/nio/fs/GnomeFileTypeDetector.java \ |
|
255 sun/nio/fs/LinuxNativeDispatcher.java \ |
|
256 sun/nio/fs/LinuxWatchService.java \ |
|
257 sun/nio/fs/UnixCopyFile.java \ |
|
258 sun/nio/fs/UnixNativeDispatcher.java |
|
259 |
|
260 FILES_gen += \ |
|
261 sun/nio/fs/UnixConstants.java |
|
262 endif # PLATFORM = linux |
|
263 |
|
264 ifeq ($(PLATFORM), macosx) |
|
265 FILES_java += \ |
|
266 sun/nio/ch/AbstractPollSelectorImpl.java \ |
|
267 sun/nio/ch/BsdAsynchronousChannelProvider.java \ |
|
268 sun/nio/ch/InheritedChannel.java \ |
|
269 sun/nio/ch/KQueue.java \ |
|
270 sun/nio/ch/KQueuePort.java \ |
|
271 sun/nio/ch/PollSelectorProvider.java \ |
|
272 sun/nio/ch/PollSelectorImpl.java \ |
|
273 sun/nio/ch/Port.java \ |
|
274 sun/nio/ch/SimpleAsynchronousFileChannelImpl.java \ |
|
275 sun/nio/ch/UnixAsynchronousServerSocketChannelImpl.java \ |
|
276 sun/nio/ch/UnixAsynchronousSocketChannelImpl.java \ |
|
277 \ |
|
278 sun/nio/fs/GnomeFileTypeDetector.java \ |
|
279 sun/nio/fs/BsdFileStore.java \ |
|
280 sun/nio/fs/BsdFileSystem.java \ |
|
281 sun/nio/fs/BsdFileSystemProvider.java \ |
|
282 sun/nio/fs/BsdNativeDispatcher.java \ |
|
283 sun/nio/fs/PollingWatchService.java \ |
|
284 sun/nio/fs/UnixChannelFactory.java \ |
|
285 sun/nio/fs/UnixCopyFile.java \ |
|
286 sun/nio/fs/UnixDirectoryStream.java \ |
|
287 sun/nio/fs/UnixException.java \ |
|
288 sun/nio/fs/UnixFileAttributeViews.java \ |
|
289 sun/nio/fs/UnixFileAttributes.java \ |
|
290 sun/nio/fs/UnixFileKey.java \ |
|
291 sun/nio/fs/UnixFileModeAttribute.java \ |
|
292 sun/nio/fs/UnixFileStore.java \ |
|
293 sun/nio/fs/UnixFileStoreAttributes.java \ |
|
294 sun/nio/fs/UnixFileSystem.java \ |
|
295 sun/nio/fs/UnixFileSystemProvider.java \ |
|
296 sun/nio/fs/UnixMountEntry.java \ |
|
297 sun/nio/fs/UnixNativeDispatcher.java \ |
|
298 sun/nio/fs/UnixPath.java \ |
|
299 sun/nio/fs/UnixSecureDirectoryStream.java \ |
|
300 sun/nio/fs/UnixUriUtils.java \ |
|
301 sun/nio/fs/UnixUserPrincipals.java |
|
302 |
|
303 FILES_c += \ |
|
304 InheritedChannel.c \ |
|
305 NativeThread.c \ |
|
306 PollArrayWrapper.c \ |
|
307 UnixAsynchronousServerSocketChannelImpl.c \ |
|
308 UnixAsynchronousSocketChannelImpl.c \ |
|
309 \ |
|
310 GnomeFileTypeDetector.c \ |
|
311 BsdNativeDispatcher.c \ |
|
312 UnixCopyFile.c \ |
|
313 UnixNativeDispatcher.c \ |
|
314 \ |
|
315 KQueue.c \ |
|
316 KQueuePort.c |
|
317 |
|
318 FILES_export += \ |
|
319 sun/nio/ch/InheritedChannel.java \ |
|
320 sun/nio/ch/KQueue.java \ |
|
321 sun/nio/ch/KQueuePort.java \ |
|
322 sun/nio/ch/NativeThread.java \ |
|
323 sun/nio/ch/UnixAsynchronousServerSocketChannelImpl.java \ |
|
324 sun/nio/ch/UnixAsynchronousSocketChannelImpl.java \ |
|
325 \ |
|
326 sun/nio/fs/GnomeFileTypeDetector.java \ |
|
327 sun/nio/fs/BsdNativeDispatcher.java \ |
|
328 sun/nio/fs/UnixCopyFile.java \ |
|
329 sun/nio/fs/UnixNativeDispatcher.java |
|
330 |
|
331 FILES_gen += \ |
|
332 sun/nio/fs/UnixConstants.java |
|
333 endif # PLATFORM = bsd, macosx |
|
334 |
|
335 ifeq ($(PLATFORM), macosx) |
|
336 FILES_java += \ |
|
337 sun/nio/ch/KQueueSelectorProvider.java \ |
|
338 sun/nio/ch/KQueueSelectorImpl.java \ |
|
339 sun/nio/ch/KQueueArrayWrapper.java |
|
340 |
|
341 FILES_c += \ |
|
342 KQueueArrayWrapper.c |
|
343 |
|
344 vpath %.c $(call NativeSrcDirList,,native/sun/nio/fs) |
|
345 vpath %.c $(call NativeSrcDirList,,native/sun/nio/ch) |
|
346 |
|
347 else |
|
348 |
|
349 # |
|
350 # Find platform-specific C source files |
|
351 # |
|
352 vpath %.c $(PLATFORM_SRC)/native/sun/nio/fs |
|
353 vpath %.c $(PLATFORM_SRC)/native/sun/nio/ch |
|
354 vpath %.c $(SHARE_SRC)/native/sun/nio/ch |
|
355 |
|
356 endif # PLATFORM = macosx |
|
357 |
|
358 # |
|
359 # Various variables |
|
360 # |
|
361 |
|
362 JAVALIB = # Don't self-link |
|
363 |
|
364 # |
|
365 # Access to io_util.c and net_util.c |
|
366 # |
|
367 |
|
368 OTHER_INCLUDES += \ |
|
369 -I$(SHARE_SRC)/native/sun/nio/ch \ |
|
370 -I$(SHARE_SRC)/native/java/io \ |
|
371 -I$(SHARE_SRC)/native/java/net \ |
|
372 -I$(PLATFORM_SRC)/native/java/net \ |
|
373 -I$(CLASSHDRDIR)/../../../java.lang/java/CClassHeaders |
|
374 |
|
375 ifeq ($(PLATFORM),windows) |
|
376 OTHER_LDLIBS += $(JVMLIB) ws2_32.lib \ |
|
377 -libpath:$(LIBDIR) java.lib \ |
|
378 $(OBJDIR)/../../../../sun/java.net/net/$(OBJDIRNAME)/net.lib \ |
|
379 $(OBJDIR)/../../../java.lang/java/$(OBJDIRNAME)/io_util.obj \ |
|
380 $(OBJDIR)/../../../java.lang/java/$(OBJDIRNAME)/FileDescriptor_md.obj |
|
381 endif |
|
382 ifeq ($(PLATFORM), linux) |
|
383 OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -ljava -lnet -lpthread $(LIBDL) |
|
384 endif |
|
385 ifeq ($(PLATFORM), macosx) |
|
386 OTHER_LDLIBS += -L$(LIBDIR) -ljava -lnet -pthread |
|
387 endif |
|
388 ifeq ($(PLATFORM), solaris) |
|
389 OTHER_LDLIBS += $(JVMLIB) $(LIBSOCKET) -lposix4 $(LIBDL) -lsendfile \ |
|
390 -L$(LIBDIR)/$(LIBARCH) -ljava -lnet |
|
391 endif # PLATFORM |
|
392 |
|
393 # |
|
394 # Rules |
|
395 # |
|
396 |
|
397 build: sources |
|
398 |
|
399 clean clobber:: |
|
400 $(RM) -r $(NIO_GEN) $(SNIO_GEN) |
|
401 $(RM) -r $(CLASSDESTDIR)/java/nio |
|
402 $(RM) -r $(CLASSDESTDIR)/sun/nio |
|
403 |
|
404 ifeq ($(PLATFORM), solaris) |
|
405 FILES_m = mapfile-solaris |
|
406 endif |
|
407 ifeq ($(PLATFORM), linux) |
|
408 FILES_m = mapfile-linux |
|
409 endif |
|
410 ifeq ($(PLATFORM), macosx) |
|
411 FILES_m = mapfile-bsd |
|
412 endif |
|
413 include $(BUILDDIR)/common/Mapfile-vers.gmk |
|
414 include $(BUILDDIR)/common/Library.gmk |
|
415 |
|
416 # |
|
417 # Generate source files |
|
418 # |
|
419 |
|
420 FILES_genout = $(FILES_gen:%.java=$(GENSRCDIR)/%.java) |
|
421 |
|
422 BUF_SRC=$(NIO_SRC) |
|
423 CH_SRC=$(NIO_SRC)/channels |
|
424 CS_SRC=$(NIO_SRC)/charset |
|
425 SCH_SRC=$(SNIO_SRC)/ch |
|
426 SCS_SRC=$(SNIO_SRC)/cs |
|
427 SFS_SRC=$(SNIO_SRC)/fs |
|
428 |
|
429 # Template files |
|
430 HEAP_X_BUF_TEMPLATE=$(BUF_SRC)/Heap-X-Buffer.java.template |
|
431 BYTE_X_BUF_TEMPLATE=$(BUF_SRC)/ByteBufferAs-X-Buffer.java.template |
|
432 X_BUF_TEMPLATE=$(BUF_SRC)/X-Buffer.java.template |
|
433 X_BUF_BIN_TEMPLATE=$(BUF_SRC)/X-Buffer-bin.java.template |
|
434 DIRECT_X_BUF_TEMPLATE=$(BUF_SRC)/Direct-X-Buffer.java.template |
|
435 DIRECT_X_BUF_BIN_TEMPLATE=$(BUF_SRC)/Direct-X-Buffer-bin.java.template |
|
436 CHARSET_X_CODER_TEMPLATE=$(CS_SRC)/Charset-X-Coder.java.template |
|
437 |
|
438 BUF_GEN=$(NIO_GEN) |
|
439 CH_GEN=$(NIO_GEN)/channels |
|
440 CS_GEN=$(NIO_GEN)/charset |
|
441 SCH_GEN=$(SNIO_GEN)/ch |
|
442 SCS_GEN=$(SNIO_GEN)/cs |
|
443 SFS_GEN=$(SNIO_GEN)/fs |
|
444 |
|
445 FILES_gensbcs_out = $(FILES_gen_sbcs:%.java=$(GENSRCDIR)/%.java) |
|
446 |
|
447 sources: $(SPP_JARFILE) $(FILES_genout) $(FILES_gensbcs_out) |
|
448 |
|
449 # |
|
450 # Generated buffer classes |
|
451 # |
|
452 |
|
453 GEN_BUFFER_SH = genBuffer.sh |
|
454 |
|
455 GEN_BUFFER_CMD = SPP="$(TOOL_SPP)" NAWK="$(NAWK)" SED="$(SED)" SH="$(SH)" \ |
|
456 $(SH) $(GEN_BUFFER_SH) |
|
457 |
|
458 # Public abstract buffer classes |
|
459 # |
|
460 $(BUF_GEN)/ByteBuffer.java: $(X_BUF_TEMPLATE) \ |
|
461 $(X_BUF_BIN_TEMPLATE) \ |
|
462 $(GEN_BUFFER_SH) |
|
463 $(prep-target) |
|
464 @$(RM) $@.temp |
|
465 TYPE=byte BIN=1 SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
466 $(MV) $@.temp $@ |
|
467 $(BUF_GEN)/CharBuffer.java: $(X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
468 $(prep-target) |
|
469 @$(RM) $@.temp |
|
470 TYPE=char SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
471 $(MV) $@.temp $@ |
|
472 $(BUF_GEN)/ShortBuffer.java: $(X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
473 $(prep-target) |
|
474 @$(RM) $@.temp |
|
475 TYPE=short SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
476 $(MV) $@.temp $@ |
|
477 $(BUF_GEN)/IntBuffer.java: $(X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
478 $(prep-target) |
|
479 @$(RM) $@.temp |
|
480 TYPE=int SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
481 $(MV) $@.temp $@ |
|
482 $(BUF_GEN)/LongBuffer.java: $(X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
483 $(prep-target) |
|
484 @$(RM) $@.temp |
|
485 TYPE=long SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
486 $(MV) $@.temp $@ |
|
487 $(BUF_GEN)/FloatBuffer.java: $(X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
488 $(prep-target) |
|
489 @$(RM) $@.temp |
|
490 TYPE=float SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
491 $(MV) $@.temp $@ |
|
492 $(BUF_GEN)/DoubleBuffer.java: $(X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
493 $(prep-target) |
|
494 @$(RM) $@.temp |
|
495 TYPE=double SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
496 $(MV) $@.temp $@ |
|
497 |
|
498 # Buffers whose contents are heap-allocated |
|
499 # |
|
500 $(BUF_GEN)/HeapByteBuffer.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
501 $(prep-target) |
|
502 @$(RM) $@.temp |
|
503 TYPE=byte SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
504 $(MV) $@.temp $@ |
|
505 $(BUF_GEN)/HeapByteBuffer%.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
506 $(prep-target) |
|
507 @$(RM) $@.temp |
|
508 TYPE=byte RW=$* SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
509 $(MV) $@.temp $@ |
|
510 $(BUF_GEN)/HeapCharBuffer.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
511 $(prep-target) |
|
512 @$(RM) $@.temp |
|
513 TYPE=char SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
514 $(MV) $@.temp $@ |
|
515 $(BUF_GEN)/HeapCharBuffer%.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
516 $(prep-target) |
|
517 @$(RM) $@.temp |
|
518 TYPE=char RW=$* SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
519 $(MV) $@.temp $@ |
|
520 $(BUF_GEN)/HeapShortBuffer.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
521 $(prep-target) |
|
522 @$(RM) $@.temp |
|
523 TYPE=short SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
524 $(MV) $@.temp $@ |
|
525 $(BUF_GEN)/HeapShortBuffer%.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
526 $(prep-target) |
|
527 @$(RM) $@.temp |
|
528 TYPE=short RW=$* SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
529 $(MV) $@.temp $@ |
|
530 $(BUF_GEN)/HeapIntBuffer.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
531 $(prep-target) |
|
532 @$(RM) $@.temp |
|
533 TYPE=int SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
534 $(MV) $@.temp $@ |
|
535 $(BUF_GEN)/HeapIntBuffer%.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
536 $(prep-target) |
|
537 @$(RM) $@.temp |
|
538 TYPE=int RW=$* SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
539 $(MV) $@.temp $@ |
|
540 $(BUF_GEN)/HeapLongBuffer.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
541 $(prep-target) |
|
542 @$(RM) $@.temp |
|
543 TYPE=long SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
544 $(MV) $@.temp $@ |
|
545 $(BUF_GEN)/HeapLongBuffer%.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
546 $(prep-target) |
|
547 @$(RM) $@.temp |
|
548 TYPE=long RW=$* SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
549 $(MV) $@.temp $@ |
|
550 $(BUF_GEN)/HeapFloatBuffer.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
551 $(prep-target) |
|
552 @$(RM) $@.temp |
|
553 TYPE=float SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
554 $(MV) $@.temp $@ |
|
555 $(BUF_GEN)/HeapFloatBuffer%.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
556 $(prep-target) |
|
557 @$(RM) $@.temp |
|
558 TYPE=float RW=$* SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
559 $(MV) $@.temp $@ |
|
560 $(BUF_GEN)/HeapDoubleBuffer.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
561 $(prep-target) |
|
562 @$(RM) $@.temp |
|
563 TYPE=double SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
564 $(MV) $@.temp $@ |
|
565 $(BUF_GEN)/HeapDoubleBuffer%.java: $(HEAP_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
566 $(prep-target) |
|
567 @$(RM) $@.temp |
|
568 TYPE=double RW=$* SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
569 $(MV) $@.temp $@ |
|
570 |
|
571 # Direct byte buffer |
|
572 # |
|
573 $(BUF_GEN)/DirectByteBuffer.java: $(DIRECT_X_BUF_TEMPLATE) \ |
|
574 $(DIRECT_X_BUF_TEMPLATE) \ |
|
575 $(GEN_BUFFER_SH) |
|
576 $(prep-target) |
|
577 @$(RM) $@.temp |
|
578 TYPE=byte BIN=1 SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
579 $(MV) $@.temp $@ |
|
580 $(BUF_GEN)/DirectByteBuffer%.java: $(DIRECT_X_BUF_TEMPLATE) \ |
|
581 $(DIRECT_X_BUF_TEMPLATE) \ |
|
582 $(GEN_BUFFER_SH) |
|
583 $(prep-target) |
|
584 @$(RM) $@.temp |
|
585 TYPE=byte RW=$* BIN=1 SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
586 $(MV) $@.temp $@ |
|
587 |
|
588 # Unswapped views of direct byte buffers |
|
589 # |
|
590 $(BUF_GEN)/DirectCharBufferU.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
591 $(prep-target) |
|
592 @$(RM) $@.temp |
|
593 TYPE=char BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
594 $(MV) $@.temp $@ |
|
595 $(BUF_GEN)/DirectCharBuffer%U.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
596 $(prep-target) |
|
597 @$(RM) $@.temp |
|
598 TYPE=char RW=$* BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
599 $(MV) $@.temp $@ |
|
600 $(BUF_GEN)/DirectShortBufferU.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
601 $(prep-target) |
|
602 @$(RM) $@.temp |
|
603 TYPE=short BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
604 $(MV) $@.temp $@ |
|
605 $(BUF_GEN)/DirectShortBuffer%U.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
606 $(prep-target) |
|
607 @$(RM) $@.temp |
|
608 TYPE=short RW=$* BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
609 $(MV) $@.temp $@ |
|
610 $(BUF_GEN)/DirectIntBufferU.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
611 $(prep-target) |
|
612 @$(RM) $@.temp |
|
613 TYPE=int BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
614 $(MV) $@.temp $@ |
|
615 $(BUF_GEN)/DirectIntBuffer%U.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
616 $(prep-target) |
|
617 @$(RM) $@.temp |
|
618 TYPE=int RW=$* BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
619 $(MV) $@.temp $@ |
|
620 $(BUF_GEN)/DirectLongBufferU.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
621 $(prep-target) |
|
622 @$(RM) $@.temp |
|
623 TYPE=long BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
624 $(MV) $@.temp $@ |
|
625 $(BUF_GEN)/DirectLongBuffer%U.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
626 $(prep-target) |
|
627 @$(RM) $@.temp |
|
628 TYPE=long RW=$* BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
629 $(MV) $@.temp $@ |
|
630 $(BUF_GEN)/DirectFloatBufferU.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
631 $(prep-target) |
|
632 @$(RM) $@.temp |
|
633 TYPE=float BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
634 $(MV) $@.temp $@ |
|
635 $(BUF_GEN)/DirectFloatBuffer%U.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
636 $(prep-target) |
|
637 @$(RM) $@.temp |
|
638 TYPE=float RW=$* BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
639 $(MV) $@.temp $@ |
|
640 $(BUF_GEN)/DirectDoubleBufferU.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
641 $(prep-target) |
|
642 @$(RM) $@.temp |
|
643 TYPE=double BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
644 $(MV) $@.temp $@ |
|
645 $(BUF_GEN)/DirectDoubleBuffer%U.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
646 $(prep-target) |
|
647 @$(RM) $@.temp |
|
648 TYPE=double RW=$* BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
649 $(MV) $@.temp $@ |
|
650 |
|
651 # Swapped views of direct byte buffers |
|
652 # |
|
653 $(BUF_GEN)/DirectCharBufferS.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
654 $(prep-target) |
|
655 @$(RM) $@.temp |
|
656 TYPE=char BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
657 $(MV) $@.temp $@ |
|
658 $(BUF_GEN)/DirectCharBuffer%S.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
659 $(prep-target) |
|
660 @$(RM) $@.temp |
|
661 TYPE=char RW=$* BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
662 $(MV) $@.temp $@ |
|
663 $(BUF_GEN)/DirectShortBufferS.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
664 $(prep-target) |
|
665 @$(RM) $@.temp |
|
666 TYPE=short BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
667 $(MV) $@.temp $@ |
|
668 $(BUF_GEN)/DirectShortBuffer%S.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
669 $(prep-target) |
|
670 @$(RM) $@.temp |
|
671 TYPE=short RW=$* BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
672 $(MV) $@.temp $@ |
|
673 $(BUF_GEN)/DirectIntBufferS.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
674 $(prep-target) |
|
675 @$(RM) $@.temp |
|
676 TYPE=int BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
677 $(MV) $@.temp $@ |
|
678 $(BUF_GEN)/DirectIntBuffer%S.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
679 $(prep-target) |
|
680 @$(RM) $@.temp |
|
681 TYPE=int RW=$* BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
682 $(MV) $@.temp $@ |
|
683 $(BUF_GEN)/DirectLongBufferS.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
684 $(prep-target) |
|
685 @$(RM) $@.temp |
|
686 TYPE=long BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
687 $(MV) $@.temp $@ |
|
688 $(BUF_GEN)/DirectLongBuffer%S.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
689 $(prep-target) |
|
690 @$(RM) $@.temp |
|
691 TYPE=long RW=$* BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
692 $(MV) $@.temp $@ |
|
693 $(BUF_GEN)/DirectFloatBufferS.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
694 $(prep-target) |
|
695 @$(RM) $@.temp |
|
696 TYPE=float BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
697 $(MV) $@.temp $@ |
|
698 $(BUF_GEN)/DirectFloatBuffer%S.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
699 $(prep-target) |
|
700 @$(RM) $@.temp |
|
701 TYPE=float RW=$* BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
702 $(MV) $@.temp $@ |
|
703 $(BUF_GEN)/DirectDoubleBufferS.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
704 $(prep-target) |
|
705 @$(RM) $@.temp |
|
706 TYPE=double BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
707 $(MV) $@.temp $@ |
|
708 $(BUF_GEN)/DirectDoubleBuffer%S.java: $(DIRECT_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
709 $(prep-target) |
|
710 @$(RM) $@.temp |
|
711 TYPE=double RW=$* BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
712 $(MV) $@.temp $@ |
|
713 |
|
714 # Big-endian views of byte buffers |
|
715 # |
|
716 $(BUF_GEN)/ByteBufferAsCharBufferB.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
717 $(prep-target) |
|
718 @$(RM) $@.temp |
|
719 TYPE=char BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
720 $(MV) $@.temp $@ |
|
721 $(BUF_GEN)/ByteBufferAsCharBuffer%B.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
722 $(prep-target) |
|
723 @$(RM) $@.temp |
|
724 TYPE=char RW=$* BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
725 $(MV) $@.temp $@ |
|
726 $(BUF_GEN)/ByteBufferAsShortBufferB.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
727 $(prep-target) |
|
728 @$(RM) $@.temp |
|
729 TYPE=short BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
730 $(MV) $@.temp $@ |
|
731 $(BUF_GEN)/ByteBufferAsShortBuffer%B.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
732 $(prep-target) |
|
733 @$(RM) $@.temp |
|
734 TYPE=short RW=$* BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
735 $(MV) $@.temp $@ |
|
736 $(BUF_GEN)/ByteBufferAsIntBufferB.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
737 $(prep-target) |
|
738 @$(RM) $@.temp |
|
739 TYPE=int BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
740 $(MV) $@.temp $@ |
|
741 $(BUF_GEN)/ByteBufferAsIntBuffer%B.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
742 $(prep-target) |
|
743 @$(RM) $@.temp |
|
744 TYPE=int RW=$* BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
745 $(MV) $@.temp $@ |
|
746 $(BUF_GEN)/ByteBufferAsLongBufferB.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
747 $(prep-target) |
|
748 @$(RM) $@.temp |
|
749 TYPE=long BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
750 $(MV) $@.temp $@ |
|
751 $(BUF_GEN)/ByteBufferAsLongBuffer%B.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
752 $(prep-target) |
|
753 @$(RM) $@.temp |
|
754 TYPE=long RW=$* BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
755 $(MV) $@.temp $@ |
|
756 $(BUF_GEN)/ByteBufferAsFloatBufferB.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
757 $(prep-target) |
|
758 @$(RM) $@.temp |
|
759 TYPE=float BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
760 $(MV) $@.temp $@ |
|
761 $(BUF_GEN)/ByteBufferAsFloatBuffer%B.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
762 $(prep-target) |
|
763 @$(RM) $@.temp |
|
764 TYPE=float RW=$* BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
765 $(MV) $@.temp $@ |
|
766 $(BUF_GEN)/ByteBufferAsDoubleBufferB.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
767 $(prep-target) |
|
768 @$(RM) $@.temp |
|
769 TYPE=double BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
770 $(MV) $@.temp $@ |
|
771 $(BUF_GEN)/ByteBufferAsDoubleBuffer%B.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
772 $(prep-target) |
|
773 @$(RM) $@.temp |
|
774 TYPE=double RW=$* BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
775 $(MV) $@.temp $@ |
|
776 |
|
777 # Little-endian views of byte buffers |
|
778 # |
|
779 $(BUF_GEN)/ByteBufferAsCharBufferL.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
780 $(prep-target) |
|
781 @$(RM) $@.temp |
|
782 TYPE=char BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
783 $(MV) $@.temp $@ |
|
784 $(BUF_GEN)/ByteBufferAsCharBuffer%L.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
785 $(prep-target) |
|
786 @$(RM) $@.temp |
|
787 TYPE=char RW=$* BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
788 $(MV) $@.temp $@ |
|
789 $(BUF_GEN)/ByteBufferAsShortBufferL.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
790 $(prep-target) |
|
791 @$(RM) $@.temp |
|
792 TYPE=short BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
793 $(MV) $@.temp $@ |
|
794 $(BUF_GEN)/ByteBufferAsShortBuffer%L.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
795 $(prep-target) |
|
796 @$(RM) $@.temp |
|
797 TYPE=short RW=$* BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
798 $(MV) $@.temp $@ |
|
799 $(BUF_GEN)/ByteBufferAsIntBufferL.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
800 $(prep-target) |
|
801 @$(RM) $@.temp |
|
802 TYPE=int BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
803 $(MV) $@.temp $@ |
|
804 $(BUF_GEN)/ByteBufferAsIntBuffer%L.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
805 $(prep-target) |
|
806 @$(RM) $@.temp |
|
807 TYPE=int RW=$* BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
808 $(MV) $@.temp $@ |
|
809 $(BUF_GEN)/ByteBufferAsLongBufferL.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
810 $(prep-target) |
|
811 @$(RM) $@.temp |
|
812 TYPE=long BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
813 $(MV) $@.temp $@ |
|
814 $(BUF_GEN)/ByteBufferAsLongBuffer%L.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
815 $(prep-target) |
|
816 @$(RM) $@.temp |
|
817 TYPE=long RW=$* BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
818 $(MV) $@.temp $@ |
|
819 $(BUF_GEN)/ByteBufferAsFloatBufferL.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
820 $(prep-target) |
|
821 @$(RM) $@.temp |
|
822 TYPE=float BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
823 $(MV) $@.temp $@ |
|
824 $(BUF_GEN)/ByteBufferAsFloatBuffer%L.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
825 $(prep-target) |
|
826 @$(RM) $@.temp |
|
827 TYPE=float RW=$* BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
828 $(MV) $@.temp $@ |
|
829 $(BUF_GEN)/ByteBufferAsDoubleBufferL.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
830 $(prep-target) |
|
831 @$(RM) $@.temp |
|
832 TYPE=double BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
833 $(MV) $@.temp $@ |
|
834 $(BUF_GEN)/ByteBufferAsDoubleBuffer%L.java: $(BYTE_X_BUF_TEMPLATE) $(GEN_BUFFER_SH) |
|
835 $(prep-target) |
|
836 @$(RM) $@.temp |
|
837 TYPE=double RW=$* BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD) |
|
838 $(MV) $@.temp $@ |
|
839 |
|
840 # |
|
841 # Generated coder classes |
|
842 # |
|
843 |
|
844 GEN_CODER_SH = genCoder.sh |
|
845 |
|
846 GEN_CODER_CMD = SPP="$(TOOL_SPP)" SED="$(SED)" NAWK="$(NAWK)" SH="$(SH)" $(SH) $(GEN_CODER_SH) |
|
847 |
|
848 $(CS_GEN)/CharsetDecoder.java: $(CHARSET_X_CODER_TEMPLATE) $(GEN_CODER_SH) |
|
849 $(prep-target) |
|
850 @$(RM) $@.temp |
|
851 $(GEN_CODER_CMD) decoder $< $@.temp |
|
852 $(MV) $@.temp $@ |
|
853 |
|
854 $(CS_GEN)/CharsetEncoder.java: $(CHARSET_X_CODER_TEMPLATE) $(GEN_CODER_SH) |
|
855 $(prep-target) |
|
856 @$(RM) $@.temp |
|
857 $(GEN_CODER_CMD) encoder $< $@.temp |
|
858 $(MV) $@.temp $@ |
|
859 |
|
860 # |
|
861 # Generated exception classes |
|
862 # |
|
863 |
|
864 GEN_EX_SH = genExceptions.sh |
|
865 |
|
866 GEN_EX_CMD = NAWK="$(NAWK)" SH="$(SH)" $(SH) $(GEN_EX_SH) |
|
867 |
|
868 $(CH_GEN)/%Exception.java: genExceptions.sh $(CH_SRC)/exceptions |
|
869 $(prep-target) |
|
870 @$(RM) $@.temp |
|
871 $(GEN_EX_CMD) $(CH_SRC)/exceptions $(CH_GEN) |
|
872 |
|
873 $(CS_GEN)/%Exception.java: genExceptions.sh $(CS_SRC)/exceptions |
|
874 $(prep-target) |
|
875 @$(RM) $@.temp |
|
876 $(GEN_EX_CMD) $(CS_SRC)/exceptions $(CS_GEN) |
|
877 |
|
878 $(BUF_GEN)/%Exception.java: genExceptions.sh $(BUF_SRC)/exceptions |
|
879 $(prep-target) |
|
880 @$(RM) $@.temp |
|
881 $(GEN_EX_CMD) $(BUF_SRC)/exceptions $(BUF_GEN) |
|
882 |
|
883 # |
|
884 # Generated charset-provider classes |
|
885 # |
|
886 |
|
887 $(SCS_GEN)/StandardCharsets.java: genCharsetProvider.sh \ |
|
888 $(HASHER_JARFILE) $(SCS_SRC)/standard-charsets |
|
889 $(prep-target) |
|
890 @$(RM) $@.temp |
|
891 NAWK="$(NAWK)" TEMPDIR="$(TEMPDIR)" SH="$(SH)" \ |
|
892 HASHER="$(TOOL_HASHER)" \ |
|
893 $(SH) -e genCharsetProvider.sh $(SCS_SRC)/standard-charsets $(SCS_GEN) |
|
894 |
|
895 # |
|
896 # Generated channel implementation classes. |
|
897 # C source is compiled in TEMPDIR to avoid turds left by Windows compilers. |
|
898 # |
|
899 |
|
900 GENSOR_SRC = $(SHARE_SRC)/native/sun/nio/ch/genSocketOptionRegistry.c |
|
901 |
|
902 GENSOR_EXE = $(TEMPDIR)/genSocketOptionRegistry$(EXE_SUFFIX) |
|
903 |
|
904 SOR_COPYRIGHT_YEARS = $(shell $(CAT) $(GENSOR_SRC) | \ |
|
905 $(NAWK) '/^.*Copyright.*Oracle/ { printf "%s %s",$$4,$$5 }') |
|
906 |
|
907 $(TEMPDIR)/$(GENSOR_SRC) : $(GENSOR_SRC) |
|
908 $(install-file) |
|
909 |
|
910 ifndef NIO_CC |
|
911 ifeq ($(PLATFORM), macosx) |
|
912 NIO_CC=$(HOST_CC) |
|
913 else |
|
914 NIO_CC=$(CC) |
|
915 endif |
|
916 endif |
|
917 |
|
918 $(GENSOR_EXE) : $(TEMPDIR)/$(GENSOR_SRC) |
|
919 $(prep-target) |
|
920 ($(CD) $(TEMPDIR); $(NIO_CC) $(CPPFLAGS) $(LDDFLAGS) \ |
|
921 -o genSocketOptionRegistry$(EXE_SUFFIX) $(GENSOR_SRC)) |
|
922 |
|
923 ifdef NIO_PLATFORM_CLASSES_ROOT_DIR |
|
924 $(SCH_GEN)/SocketOptionRegistry.java: $(NIO_PLATFORM_CLASSES_ROOT_DIR)/sun/nio/ch/SocketOptionRegistry-$(PLATFORM)-$(ARCH).java |
|
925 $(prep-target) |
|
926 $(CP) $< $@ |
|
927 else |
|
928 $(SCH_GEN)/SocketOptionRegistry.java: $(GENSOR_EXE) |
|
929 $(prep-target) |
|
930 NAWK="$(NAWK)" SH="$(SH)" $(SH) -e addNotices.sh "$(SOR_COPYRIGHT_YEARS)" > $@ |
|
931 $(GENSOR_EXE) >> $@ |
|
932 endif |
|
933 # |
|
934 # Generated sun.nio.cs SingleByte classes |
|
935 # |
|
936 GENCSSRC = $(LEGACY_BUILDDIR)/tools/CharsetMapping |
|
937 |
|
938 $(FILES_gensbcs_out): $(GENCSSRC)/SingleByte-X.java.template $(GENCSSRC)/sbcs |
|
939 @$(prep-target) |
|
940 $(TOOL_CHARSETMAPPING) $(GENCSSRC) $(SCS_GEN) sbcs |
|
941 |
|
942 # |
|
943 # Generated file system implementation classes (Unix only) |
|
944 # |
|
945 |
|
946 GENUC_SRC = $(PLATFORM_SRC)/native/sun/nio/fs/genUnixConstants.c |
|
947 |
|
948 GENUC_OBJ = $(TEMPDIR)/genUnixConstants.o |
|
949 GENUC_EXE = $(TEMPDIR)/genUnixConstants |
|
950 |
|
951 GENUC_COPYRIGHT_YEARS = $(shell $(CAT) $(GENUC_SRC) | \ |
|
952 $(NAWK) '/^.*Copyright.*Oracle/ { printf "%s %s",$$4,$$5 }') |
|
953 |
|
954 $(GENUC_EXE) : $(GENUC_SRC) |
|
955 $(prep-target) |
|
956 $(NIO_CC) $(CPPFLAGS) -c -o $(GENUC_OBJ) $(GENUC_SRC) |
|
957 $(NIO_CC) $(CPPFLAGS) -o $@ $(GENUC_OBJ) |
|
958 |
|
959 ifdef NIO_PLATFORM_CLASSES_ROOT_DIR |
|
960 $(SFS_GEN)/UnixConstants.java: $(NIO_PLATFORM_CLASSES_ROOT_DIR)/sun/nio/fs/UnixConstants-$(PLATFORM)-$(ARCH).java |
|
961 $(prep-target) |
|
962 $(CP) $< $@ |
|
963 else |
|
964 $(SFS_GEN)/UnixConstants.java: $(GENUC_EXE) |
|
965 $(prep-target) |
|
966 NAWK="$(NAWK)" SH="$(SH)" $(SH) -e addNotices.sh "$(GENUC_COPYRIGHT_YEARS)" > $@ |
|
967 $(GENUC_EXE) >> $@ |
|
968 endif |
|
969 |
|
970 GENSC_SRC = $(PLATFORM_SRC)/native/sun/nio/fs/genSolarisConstants.c |
|
971 |
|
972 GENSC_OBJ = $(TEMPDIR)/genSolarisConstants.o |
|
973 GENSC_EXE = $(TEMPDIR)/genSolarisConstants |
|
974 |
|
975 GENSC_COPYRIGHT_YEARS = $(shell $(CAT) $(GENSC_SRC) | \ |
|
976 $(NAWK) '/^.*Copyright.*Oracle/ { printf "%s %s",$$4,$$5 }') |
|
977 |
|
978 $(GENSC_EXE) : $(GENSC_SRC) |
|
979 $(prep-target) |
|
980 $(NIO_CC) $(CPPFLAGS) -c -o $(GENSC_OBJ) $(GENSC_SRC) |
|
981 $(NIO_CC) $(CPPFLAGS) -o $@ $(GENSC_OBJ) |
|
982 |
|
983 ifdef NIO_PLATFORM_CLASSES_ROOT_DIR |
|
984 $(SFS_GEN)/SolarisConstants.java: $(NIO_PLATFORM_CLASSES_ROOT_DIR)/sun/nio/fs/SolarisConstants-$(PLATFORM)-$(ARCH).java |
|
985 $(prep-target) |
|
986 $(CP) $< $@ |
|
987 else |
|
988 $(SFS_GEN)/SolarisConstants.java: $(GENSC_EXE) |
|
989 $(prep-target) |
|
990 NAWK="$(NAWK)" SH="$(SH)" $(SH) -e addNotices.sh "$(GENSC_COPYRIGHT_YEARS)" > $@ |
|
991 $(GENSC_EXE) >> $@ |
|
992 endif |
|
993 |
|
994 .PHONY: sources |