jdk/make/java/nio/Makefile
changeset 2 90ce3da70b43
child 29 b8bedccd805d
equal deleted inserted replaced
0:fd16c54261b3 2:90ce3da70b43
       
     1 #
       
     2 # Copyright 2000-2007 Sun Microsystems, Inc.  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.  Sun designates this
       
     8 # particular file as subject to the "Classpath" exception as provided
       
     9 # by Sun 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 Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
       
    22 # CA 95054 USA or visit www.sun.com if you need additional information or
       
    23 # have any questions.
       
    24 #
       
    25 
       
    26 #
       
    27 # Makefile for java.nio
       
    28 #
       
    29 
       
    30 BUILDDIR = ../..
       
    31 PACKAGE = java.nio
       
    32 LIBRARY = nio
       
    33 PRODUCT = java
       
    34 OTHER_JAVACFLAGS += -Xmaxwarns 1000 -Xlint:serial -Werror
       
    35 include $(BUILDDIR)/common/Defs.gmk
       
    36 
       
    37 NIO_SRC = $(SHARE_SRC)/classes/java/nio
       
    38 NIO_GEN = $(GENSRCDIR)/java/nio
       
    39 
       
    40 SNIO_SRC = $(SHARE_SRC)/classes/sun/nio
       
    41 SNIO_GEN = $(GENSRCDIR)/sun/nio
       
    42 
       
    43 #
       
    44 # Files to compile
       
    45 #
       
    46 
       
    47 include FILES_java.gmk
       
    48 include FILES_c.gmk
       
    49 include Exportedfiles.gmk
       
    50 
       
    51 ifeq ($(PLATFORM), solaris)
       
    52 FILES_java += \
       
    53         sun/nio/ch/AbstractPollSelectorImpl.java \
       
    54 	sun/nio/ch/DevPollArrayWrapper.java \
       
    55 	sun/nio/ch/DevPollSelectorImpl.java \
       
    56         sun/nio/ch/DevPollSelectorProvider.java \
       
    57 	sun/nio/ch/InheritedChannel.java \
       
    58         sun/nio/ch/PollSelectorProvider.java \
       
    59         sun/nio/ch/PollSelectorImpl.java 
       
    60 
       
    61 FILES_c += \
       
    62         DevPollArrayWrapper.c \
       
    63 	InheritedChannel.c \
       
    64         PollArrayWrapper.c \
       
    65 	NativeThread.c
       
    66 
       
    67 FILES_export += \
       
    68 	sun/nio/ch/DevPollArrayWrapper.java \
       
    69 	sun/nio/ch/InheritedChannel.java \
       
    70 	sun/nio/ch/NativeThread.java 
       
    71 endif # PLATFORM = solaris
       
    72 
       
    73 ifeq ($(PLATFORM), windows)
       
    74 FILES_java += \
       
    75         sun/nio/ch/WindowsSelectorImpl.java \
       
    76         sun/nio/ch/WindowsSelectorProvider.java
       
    77 
       
    78 FILES_c += \
       
    79         WindowsSelectorImpl.c
       
    80 
       
    81 FILES_export += \
       
    82 	sun/nio/ch/WindowsSelectorImpl.java
       
    83 endif # PLATFORM = windows
       
    84 
       
    85 ifeq ($(PLATFORM), linux)
       
    86 FILES_java += \
       
    87         sun/nio/ch/AbstractPollSelectorImpl.java \
       
    88 	sun/nio/ch/EPollArrayWrapper.java \
       
    89 	sun/nio/ch/EPollSelectorProvider.java \
       
    90 	sun/nio/ch/EPollSelectorImpl.java \
       
    91 	sun/nio/ch/InheritedChannel.java \
       
    92         sun/nio/ch/PollSelectorProvider.java \
       
    93         sun/nio/ch/PollSelectorImpl.java
       
    94 
       
    95 FILES_c += \
       
    96 	EPollArrayWrapper.c \
       
    97         PollArrayWrapper.c \
       
    98 	InheritedChannel.c \
       
    99 	NativeThread.c
       
   100 
       
   101 FILES_export += \
       
   102         sun/nio/ch/EPollArrayWrapper.java \
       
   103 	sun/nio/ch/InheritedChannel.java \
       
   104 	sun/nio/ch/NativeThread.java 
       
   105 endif # PLATFORM = linux
       
   106 
       
   107 # Find platform-specific C source files
       
   108 #
       
   109 vpath %.c $(PLATFORM_SRC)/native/sun/nio/ch
       
   110 vpath %.c $(SHARE_SRC)/native/sun/nio/ch
       
   111 
       
   112 #
       
   113 # Various variables
       
   114 #
       
   115 
       
   116 JAVALIB = 		# Don't self-link
       
   117 
       
   118 #
       
   119 # Access to io_util.c and net_util.c
       
   120 #
       
   121 
       
   122 OTHER_INCLUDES += \
       
   123   -I$(SHARE_SRC)/native/sun/nio/ch \
       
   124   -I$(SHARE_SRC)/native/java/io \
       
   125   -I$(SHARE_SRC)/native/java/net \
       
   126   -I$(PLATFORM_SRC)/native/java/net \
       
   127   -I$(CLASSHDRDIR)/../../../java.lang/java/CClassHeaders
       
   128 
       
   129 ifeq ($(PLATFORM),windows)
       
   130   OTHER_LDLIBS += $(JVMLIB) ws2_32.lib \
       
   131      -libpath:$(LIBDIR) java.lib \
       
   132      $(OBJDIR)/../../../../sun/java.net/net/$(OBJDIRNAME)/net.lib \
       
   133      $(OBJDIR)/../../../java.lang/java/$(OBJDIRNAME)/io_util.obj \
       
   134      $(OBJDIR)/../../../java.lang/java/$(OBJDIRNAME)/FileDescriptor_md.obj
       
   135 endif
       
   136 ifeq ($(PLATFORM), linux)
       
   137 COMPILER_WARNINGS_FATAL=true
       
   138 OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -ljava -lnet -lpthread -ldl
       
   139 endif
       
   140 ifeq ($(PLATFORM), solaris)
       
   141 OTHER_LDLIBS += $(JVMLIB) $(LIBSOCKET) -lposix4 -ldl \
       
   142 		-L$(LIBDIR)/$(LIBARCH) -ljava -lnet
       
   143 endif # PLATFORM
       
   144 
       
   145 #
       
   146 # Rules
       
   147 #
       
   148 
       
   149 build: sources
       
   150 
       
   151 clean clobber::
       
   152 	$(RM) -r $(NIO_GEN) $(SNIO_GEN)
       
   153 	$(RM) -r $(CLASSDESTDIR)/java/nio
       
   154 	$(RM) -r $(CLASSDESTDIR)/sun/nio
       
   155 
       
   156 ifeq ($(PLATFORM), solaris)
       
   157 FILES_m = mapfile-solaris
       
   158 endif
       
   159 ifeq ($(PLATFORM), linux)
       
   160 FILES_m = mapfile-linux
       
   161 endif
       
   162 include $(BUILDDIR)/common/Mapfile-vers.gmk
       
   163 include $(BUILDDIR)/common/Library.gmk
       
   164 
       
   165 #
       
   166 # Generate source files
       
   167 #
       
   168 
       
   169 SPP = spp.sh
       
   170 SPP_CMD = $(SH) $(SPP)
       
   171 
       
   172 FILES_genout = $(FILES_gen:%.java=$(GENSRCDIR)/%.java)
       
   173 
       
   174 BUF_SRC=$(NIO_SRC)
       
   175 CH_SRC=$(NIO_SRC)/channels
       
   176 CS_SRC=$(NIO_SRC)/charset
       
   177 SCH_SRC=$(SNIO_SRC)/ch
       
   178 SCS_SRC=$(SNIO_SRC)/cs
       
   179 
       
   180 BUF_GEN=$(NIO_GEN)
       
   181 CH_GEN=$(NIO_GEN)/channels
       
   182 CS_GEN=$(NIO_GEN)/charset
       
   183 SCH_GEN=$(SNIO_GEN)/ch
       
   184 SCS_GEN=$(SNIO_GEN)/cs
       
   185 
       
   186 sources: $(SPP) $(FILES_genout)
       
   187 
       
   188 #
       
   189 # Generated buffer classes
       
   190 #
       
   191 
       
   192 GEN_BUFFER_SH = genBuffer.sh
       
   193 
       
   194 GEN_BUFFER_CMD = SPP="$(SPP_CMD)" NAWK=$(NAWK) SED=$(SED) \
       
   195                  $(SH) $(GEN_BUFFER_SH)
       
   196 
       
   197 # Public abstract buffer classes
       
   198 #
       
   199 $(BUF_GEN)/ByteBuffer.java: $(BUF_SRC)/X-Buffer.java \
       
   200 			    $(BUF_SRC)/X-Buffer-bin.java \
       
   201 			    $(GEN_BUFFER_SH)
       
   202 	$(prep-target)
       
   203 	@$(RM) $@.temp
       
   204 	TYPE=byte BIN=1 SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   205 	$(MV) $@.temp $@
       
   206 $(BUF_GEN)/CharBuffer.java: $(BUF_SRC)/X-Buffer.java $(GEN_BUFFER_SH)
       
   207 	$(prep-target)
       
   208 	@$(RM) $@.temp
       
   209 	TYPE=char SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   210 	$(MV) $@.temp $@
       
   211 $(BUF_GEN)/ShortBuffer.java: $(BUF_SRC)/X-Buffer.java $(GEN_BUFFER_SH)
       
   212 	$(prep-target)
       
   213 	@$(RM) $@.temp
       
   214 	TYPE=short SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   215 	$(MV) $@.temp $@
       
   216 $(BUF_GEN)/IntBuffer.java: $(BUF_SRC)/X-Buffer.java $(GEN_BUFFER_SH)
       
   217 	$(prep-target)
       
   218 	@$(RM) $@.temp
       
   219 	TYPE=int SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   220 	$(MV) $@.temp $@
       
   221 $(BUF_GEN)/LongBuffer.java: $(BUF_SRC)/X-Buffer.java $(GEN_BUFFER_SH)
       
   222 	$(prep-target)
       
   223 	@$(RM) $@.temp
       
   224 	TYPE=long SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   225 	$(MV) $@.temp $@
       
   226 $(BUF_GEN)/FloatBuffer.java: $(BUF_SRC)/X-Buffer.java $(GEN_BUFFER_SH)
       
   227 	$(prep-target)
       
   228 	@$(RM) $@.temp
       
   229 	TYPE=float SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   230 	$(MV) $@.temp $@
       
   231 $(BUF_GEN)/DoubleBuffer.java: $(BUF_SRC)/X-Buffer.java $(GEN_BUFFER_SH)
       
   232 	$(prep-target)
       
   233 	@$(RM) $@.temp
       
   234 	TYPE=double SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   235 	$(MV) $@.temp $@
       
   236 
       
   237 # Buffers whose contents are heap-allocated
       
   238 # 
       
   239 $(BUF_GEN)/HeapByteBuffer.java: $(BUF_SRC)/Heap-X-Buffer.java $(GEN_BUFFER_SH)
       
   240 	$(prep-target)
       
   241 	@$(RM) $@.temp
       
   242 	TYPE=byte SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   243 	$(MV) $@.temp $@
       
   244 $(BUF_GEN)/HeapByteBuffer%.java: $(BUF_SRC)/Heap-X-Buffer.java $(GEN_BUFFER_SH)
       
   245 	$(prep-target)
       
   246 	@$(RM) $@.temp
       
   247 	TYPE=byte RW=$* SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   248 	$(MV) $@.temp $@
       
   249 $(BUF_GEN)/HeapCharBuffer.java: $(BUF_SRC)/Heap-X-Buffer.java $(GEN_BUFFER_SH)
       
   250 	$(prep-target)
       
   251 	@$(RM) $@.temp
       
   252 	TYPE=char SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   253 	$(MV) $@.temp $@
       
   254 $(BUF_GEN)/HeapCharBuffer%.java: $(BUF_SRC)/Heap-X-Buffer.java $(GEN_BUFFER_SH)
       
   255 	$(prep-target)
       
   256 	@$(RM) $@.temp
       
   257 	TYPE=char RW=$* SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   258 	$(MV) $@.temp $@
       
   259 $(BUF_GEN)/HeapShortBuffer.java: $(BUF_SRC)/Heap-X-Buffer.java $(GEN_BUFFER_SH)
       
   260 	$(prep-target)
       
   261 	@$(RM) $@.temp
       
   262 	TYPE=short SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   263 	$(MV) $@.temp $@
       
   264 $(BUF_GEN)/HeapShortBuffer%.java: $(BUF_SRC)/Heap-X-Buffer.java $(GEN_BUFFER_SH)
       
   265 	$(prep-target)
       
   266 	@$(RM) $@.temp
       
   267 	TYPE=short RW=$* SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   268 	$(MV) $@.temp $@
       
   269 $(BUF_GEN)/HeapIntBuffer.java: $(BUF_SRC)/Heap-X-Buffer.java $(GEN_BUFFER_SH)
       
   270 	$(prep-target)
       
   271 	@$(RM) $@.temp
       
   272 	TYPE=int SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   273 	$(MV) $@.temp $@
       
   274 $(BUF_GEN)/HeapIntBuffer%.java: $(BUF_SRC)/Heap-X-Buffer.java $(GEN_BUFFER_SH)
       
   275 	$(prep-target)
       
   276 	@$(RM) $@.temp
       
   277 	TYPE=int RW=$* SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   278 	$(MV) $@.temp $@
       
   279 $(BUF_GEN)/HeapLongBuffer.java: $(BUF_SRC)/Heap-X-Buffer.java $(GEN_BUFFER_SH)
       
   280 	$(prep-target)
       
   281 	@$(RM) $@.temp
       
   282 	TYPE=long SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   283 	$(MV) $@.temp $@
       
   284 $(BUF_GEN)/HeapLongBuffer%.java: $(BUF_SRC)/Heap-X-Buffer.java $(GEN_BUFFER_SH)
       
   285 	$(prep-target)
       
   286 	@$(RM) $@.temp
       
   287 	TYPE=long RW=$* SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   288 	$(MV) $@.temp $@
       
   289 $(BUF_GEN)/HeapFloatBuffer.java: $(BUF_SRC)/Heap-X-Buffer.java $(GEN_BUFFER_SH)
       
   290 	$(prep-target)
       
   291 	@$(RM) $@.temp
       
   292 	TYPE=float SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   293 	$(MV) $@.temp $@
       
   294 $(BUF_GEN)/HeapFloatBuffer%.java: $(BUF_SRC)/Heap-X-Buffer.java $(GEN_BUFFER_SH)
       
   295 	$(prep-target)
       
   296 	@$(RM) $@.temp
       
   297 	TYPE=float RW=$* SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   298 	$(MV) $@.temp $@
       
   299 $(BUF_GEN)/HeapDoubleBuffer.java: $(BUF_SRC)/Heap-X-Buffer.java $(GEN_BUFFER_SH)
       
   300 	$(prep-target)
       
   301 	@$(RM) $@.temp
       
   302 	TYPE=double SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   303 	$(MV) $@.temp $@
       
   304 $(BUF_GEN)/HeapDoubleBuffer%.java: $(BUF_SRC)/Heap-X-Buffer.java $(GEN_BUFFER_SH)
       
   305 	$(prep-target)
       
   306 	@$(RM) $@.temp
       
   307 	TYPE=double RW=$* SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   308 	$(MV) $@.temp $@
       
   309 
       
   310 # Direct byte buffer
       
   311 # 
       
   312 $(BUF_GEN)/DirectByteBuffer.java: $(BUF_SRC)/Direct-X-Buffer.java \
       
   313 				  $(BUF_SRC)/Direct-X-Buffer.java \
       
   314 				  $(GEN_BUFFER_SH)
       
   315 	$(prep-target)
       
   316 	@$(RM) $@.temp
       
   317 	TYPE=byte BIN=1 SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   318 	$(MV) $@.temp $@
       
   319 $(BUF_GEN)/DirectByteBuffer%.java: $(BUF_SRC)/Direct-X-Buffer.java \
       
   320 				   $(BUF_SRC)/Direct-X-Buffer.java \
       
   321 				   $(GEN_BUFFER_SH)
       
   322 	$(prep-target)
       
   323 	@$(RM) $@.temp
       
   324 	TYPE=byte RW=$* BIN=1 SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   325 	$(MV) $@.temp $@
       
   326 
       
   327 # Unswapped views of direct byte buffers
       
   328 #
       
   329 $(BUF_GEN)/DirectCharBufferU.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   330 	$(prep-target)
       
   331 	@$(RM) $@.temp
       
   332 	TYPE=char BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   333 	$(MV) $@.temp $@
       
   334 $(BUF_GEN)/DirectCharBuffer%U.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   335 	$(prep-target)
       
   336 	@$(RM) $@.temp
       
   337 	TYPE=char RW=$* BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   338 	$(MV) $@.temp $@
       
   339 $(BUF_GEN)/DirectShortBufferU.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   340 	$(prep-target)
       
   341 	@$(RM) $@.temp
       
   342 	TYPE=short BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   343 	$(MV) $@.temp $@
       
   344 $(BUF_GEN)/DirectShortBuffer%U.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   345 	$(prep-target)
       
   346 	@$(RM) $@.temp
       
   347 	TYPE=short RW=$* BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   348 	$(MV) $@.temp $@
       
   349 $(BUF_GEN)/DirectIntBufferU.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   350 	$(prep-target)
       
   351 	@$(RM) $@.temp
       
   352 	TYPE=int BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   353 	$(MV) $@.temp $@
       
   354 $(BUF_GEN)/DirectIntBuffer%U.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   355 	$(prep-target)
       
   356 	@$(RM) $@.temp
       
   357 	TYPE=int RW=$* BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   358 	$(MV) $@.temp $@
       
   359 $(BUF_GEN)/DirectLongBufferU.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   360 	$(prep-target)
       
   361 	@$(RM) $@.temp
       
   362 	TYPE=long BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   363 	$(MV) $@.temp $@
       
   364 $(BUF_GEN)/DirectLongBuffer%U.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   365 	$(prep-target)
       
   366 	@$(RM) $@.temp
       
   367 	TYPE=long RW=$* BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   368 	$(MV) $@.temp $@
       
   369 $(BUF_GEN)/DirectFloatBufferU.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   370 	$(prep-target)
       
   371 	@$(RM) $@.temp
       
   372 	TYPE=float BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   373 	$(MV) $@.temp $@
       
   374 $(BUF_GEN)/DirectFloatBuffer%U.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   375 	$(prep-target)
       
   376 	@$(RM) $@.temp
       
   377 	TYPE=float RW=$* BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   378 	$(MV) $@.temp $@
       
   379 $(BUF_GEN)/DirectDoubleBufferU.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   380 	$(prep-target)
       
   381 	@$(RM) $@.temp
       
   382 	TYPE=double BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   383 	$(MV) $@.temp $@
       
   384 $(BUF_GEN)/DirectDoubleBuffer%U.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   385 	$(prep-target)
       
   386 	@$(RM) $@.temp
       
   387 	TYPE=double RW=$* BO=U SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   388 	$(MV) $@.temp $@
       
   389 
       
   390 # Swapped views of direct byte buffers
       
   391 #
       
   392 $(BUF_GEN)/DirectCharBufferS.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   393 	$(prep-target)
       
   394 	@$(RM) $@.temp
       
   395 	TYPE=char BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   396 	$(MV) $@.temp $@
       
   397 $(BUF_GEN)/DirectCharBuffer%S.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   398 	$(prep-target)
       
   399 	@$(RM) $@.temp
       
   400 	TYPE=char RW=$* BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   401 	$(MV) $@.temp $@
       
   402 $(BUF_GEN)/DirectShortBufferS.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   403 	$(prep-target)
       
   404 	@$(RM) $@.temp
       
   405 	TYPE=short BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   406 	$(MV) $@.temp $@
       
   407 $(BUF_GEN)/DirectShortBuffer%S.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   408 	$(prep-target)
       
   409 	@$(RM) $@.temp
       
   410 	TYPE=short RW=$* BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   411 	$(MV) $@.temp $@
       
   412 $(BUF_GEN)/DirectIntBufferS.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   413 	$(prep-target)
       
   414 	@$(RM) $@.temp
       
   415 	TYPE=int BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   416 	$(MV) $@.temp $@
       
   417 $(BUF_GEN)/DirectIntBuffer%S.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   418 	$(prep-target)
       
   419 	@$(RM) $@.temp
       
   420 	TYPE=int RW=$* BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   421 	$(MV) $@.temp $@
       
   422 $(BUF_GEN)/DirectLongBufferS.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   423 	$(prep-target)
       
   424 	@$(RM) $@.temp
       
   425 	TYPE=long BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   426 	$(MV) $@.temp $@
       
   427 $(BUF_GEN)/DirectLongBuffer%S.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   428 	$(prep-target)
       
   429 	@$(RM) $@.temp
       
   430 	TYPE=long RW=$* BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   431 	$(MV) $@.temp $@
       
   432 $(BUF_GEN)/DirectFloatBufferS.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   433 	$(prep-target)
       
   434 	@$(RM) $@.temp
       
   435 	TYPE=float BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   436 	$(MV) $@.temp $@
       
   437 $(BUF_GEN)/DirectFloatBuffer%S.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   438 	$(prep-target)
       
   439 	@$(RM) $@.temp
       
   440 	TYPE=float RW=$* BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   441 	$(MV) $@.temp $@
       
   442 $(BUF_GEN)/DirectDoubleBufferS.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   443 	$(prep-target)
       
   444 	@$(RM) $@.temp
       
   445 	TYPE=double BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   446 	$(MV) $@.temp $@
       
   447 $(BUF_GEN)/DirectDoubleBuffer%S.java: $(BUF_SRC)/Direct-X-Buffer.java $(GEN_BUFFER_SH)
       
   448 	$(prep-target)
       
   449 	@$(RM) $@.temp
       
   450 	TYPE=double RW=$* BO=S SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   451 	$(MV) $@.temp $@
       
   452 
       
   453 # Big-endian views of byte buffers
       
   454 #
       
   455 $(BUF_GEN)/ByteBufferAsCharBufferB.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   456 	$(prep-target)
       
   457 	@$(RM) $@.temp
       
   458 	TYPE=char BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   459 	$(MV) $@.temp $@
       
   460 $(BUF_GEN)/ByteBufferAsCharBuffer%B.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   461 	$(prep-target)
       
   462 	@$(RM) $@.temp
       
   463 	TYPE=char RW=$* BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   464 	$(MV) $@.temp $@
       
   465 $(BUF_GEN)/ByteBufferAsShortBufferB.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   466 	$(prep-target)
       
   467 	@$(RM) $@.temp
       
   468 	TYPE=short BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   469 	$(MV) $@.temp $@
       
   470 $(BUF_GEN)/ByteBufferAsShortBuffer%B.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   471 	$(prep-target)
       
   472 	@$(RM) $@.temp
       
   473 	TYPE=short RW=$* BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   474 	$(MV) $@.temp $@
       
   475 $(BUF_GEN)/ByteBufferAsIntBufferB.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   476 	$(prep-target)
       
   477 	@$(RM) $@.temp
       
   478 	TYPE=int BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   479 	$(MV) $@.temp $@
       
   480 $(BUF_GEN)/ByteBufferAsIntBuffer%B.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   481 	$(prep-target)
       
   482 	@$(RM) $@.temp
       
   483 	TYPE=int RW=$* BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   484 	$(MV) $@.temp $@
       
   485 $(BUF_GEN)/ByteBufferAsLongBufferB.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   486 	$(prep-target)
       
   487 	@$(RM) $@.temp
       
   488 	TYPE=long BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   489 	$(MV) $@.temp $@
       
   490 $(BUF_GEN)/ByteBufferAsLongBuffer%B.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   491 	$(prep-target)
       
   492 	@$(RM) $@.temp
       
   493 	TYPE=long RW=$* BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   494 	$(MV) $@.temp $@
       
   495 $(BUF_GEN)/ByteBufferAsFloatBufferB.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   496 	$(prep-target)
       
   497 	@$(RM) $@.temp
       
   498 	TYPE=float BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   499 	$(MV) $@.temp $@
       
   500 $(BUF_GEN)/ByteBufferAsFloatBuffer%B.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   501 	$(prep-target)
       
   502 	@$(RM) $@.temp
       
   503 	TYPE=float RW=$* BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   504 	$(MV) $@.temp $@
       
   505 $(BUF_GEN)/ByteBufferAsDoubleBufferB.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   506 	$(prep-target)
       
   507 	@$(RM) $@.temp
       
   508 	TYPE=double BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   509 	$(MV) $@.temp $@
       
   510 $(BUF_GEN)/ByteBufferAsDoubleBuffer%B.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   511 	$(prep-target)
       
   512 	@$(RM) $@.temp
       
   513 	TYPE=double RW=$* BO=B SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   514 	$(MV) $@.temp $@
       
   515 
       
   516 # Little-endian views of byte buffers
       
   517 #
       
   518 $(BUF_GEN)/ByteBufferAsCharBufferL.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   519 	$(prep-target)
       
   520 	@$(RM) $@.temp
       
   521 	TYPE=char BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   522 	$(MV) $@.temp $@
       
   523 $(BUF_GEN)/ByteBufferAsCharBuffer%L.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   524 	$(prep-target)
       
   525 	@$(RM) $@.temp
       
   526 	TYPE=char RW=$* BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   527 	$(MV) $@.temp $@
       
   528 $(BUF_GEN)/ByteBufferAsShortBufferL.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   529 	$(prep-target)
       
   530 	@$(RM) $@.temp
       
   531 	TYPE=short BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   532 	$(MV) $@.temp $@
       
   533 $(BUF_GEN)/ByteBufferAsShortBuffer%L.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   534 	$(prep-target)
       
   535 	@$(RM) $@.temp
       
   536 	TYPE=short RW=$* BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   537 	$(MV) $@.temp $@
       
   538 $(BUF_GEN)/ByteBufferAsIntBufferL.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   539 	$(prep-target)
       
   540 	@$(RM) $@.temp
       
   541 	TYPE=int BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   542 	$(MV) $@.temp $@
       
   543 $(BUF_GEN)/ByteBufferAsIntBuffer%L.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   544 	$(prep-target)
       
   545 	@$(RM) $@.temp
       
   546 	TYPE=int RW=$* BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   547 	$(MV) $@.temp $@
       
   548 $(BUF_GEN)/ByteBufferAsLongBufferL.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   549 	$(prep-target)
       
   550 	@$(RM) $@.temp
       
   551 	TYPE=long BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   552 	$(MV) $@.temp $@
       
   553 $(BUF_GEN)/ByteBufferAsLongBuffer%L.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   554 	$(prep-target)
       
   555 	@$(RM) $@.temp
       
   556 	TYPE=long RW=$* BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   557 	$(MV) $@.temp $@
       
   558 $(BUF_GEN)/ByteBufferAsFloatBufferL.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   559 	$(prep-target)
       
   560 	@$(RM) $@.temp
       
   561 	TYPE=float BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   562 	$(MV) $@.temp $@
       
   563 $(BUF_GEN)/ByteBufferAsFloatBuffer%L.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   564 	$(prep-target)
       
   565 	@$(RM) $@.temp
       
   566 	TYPE=float RW=$* BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   567 	$(MV) $@.temp $@
       
   568 $(BUF_GEN)/ByteBufferAsDoubleBufferL.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   569 	$(prep-target)
       
   570 	@$(RM) $@.temp
       
   571 	TYPE=double BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   572 	$(MV) $@.temp $@
       
   573 $(BUF_GEN)/ByteBufferAsDoubleBuffer%L.java: $(BUF_SRC)/ByteBufferAs-X-Buffer.java $(GEN_BUFFER_SH)
       
   574 	$(prep-target)
       
   575 	@$(RM) $@.temp
       
   576 	TYPE=double RW=$* BO=L SRC=$< DST=$@.temp $(GEN_BUFFER_CMD)
       
   577 	$(MV) $@.temp $@
       
   578 
       
   579 #
       
   580 # Generated coder classes
       
   581 #
       
   582 
       
   583 GEN_CODER_SH = genCoder.sh
       
   584 
       
   585 GEN_CODER_CMD = SPP="$(SPP_CMD)" SED=$(SED) NAWK=$(NAWK) $(SH) $(GEN_CODER_SH)
       
   586 
       
   587 $(CS_GEN)/CharsetDecoder.java: $(CS_SRC)/Charset-X-Coder.java $(GEN_CODER_SH)
       
   588 	$(prep-target)
       
   589 	@$(RM) $@.temp
       
   590 	$(GEN_CODER_CMD) decoder $< $@.temp
       
   591 	$(MV) $@.temp $@
       
   592 
       
   593 $(CS_GEN)/CharsetEncoder.java: $(CS_SRC)/Charset-X-Coder.java $(GEN_CODER_SH)
       
   594 	$(prep-target)
       
   595 	@$(RM) $@.temp
       
   596 	$(GEN_CODER_CMD) encoder $< $@.temp
       
   597 	$(MV) $@.temp $@
       
   598 
       
   599 #
       
   600 # Generated exception classes
       
   601 #
       
   602 
       
   603 GEN_EX_SH = genExceptions.sh
       
   604  
       
   605 GEN_EX_CMD = NAWK=$(NAWK) $(SHELL) $(GEN_EX_SH)
       
   606 
       
   607 $(CH_GEN)/%Exception.java: genExceptions.sh $(CH_SRC)/exceptions
       
   608 	$(prep-target)
       
   609 	@$(RM) $@.temp
       
   610 	$(GEN_EX_CMD) $(CH_SRC)/exceptions $(CH_GEN)
       
   611 
       
   612 $(CS_GEN)/%Exception.java: genExceptions.sh $(CS_SRC)/exceptions
       
   613 	$(prep-target)
       
   614 	@$(RM) $@.temp
       
   615 	$(GEN_EX_CMD) $(CS_SRC)/exceptions $(CS_GEN)
       
   616 
       
   617 $(BUF_GEN)/%Exception.java: genExceptions.sh $(BUF_SRC)/exceptions
       
   618 	$(prep-target)
       
   619 	@$(RM) $@.temp
       
   620 	$(GEN_EX_CMD) $(BUF_SRC)/exceptions $(BUF_GEN)
       
   621 
       
   622 $(SCH_GEN)/%Exception.java: genExceptions.sh $(SCH_SRC)/exceptions
       
   623 	$(prep-target)
       
   624 	@$(RM) $@.temp
       
   625 	$(GEN_EX_CMD) $(SCH_SRC)/exceptions $(SCH_GEN)
       
   626 
       
   627 
       
   628 #
       
   629 # Generated charset-provider classes
       
   630 #
       
   631 
       
   632 HASHER_JARFILE = $(BUILDTOOLJARDIR)/hasher.jar
       
   633 
       
   634 $(SCS_GEN)/StandardCharsets.java: genCharsetProvider.sh \
       
   635     $(HASHER_JARFILE) $(SCS_SRC)/standard-charsets
       
   636 	$(prep-target)
       
   637 	@$(RM) $@.temp
       
   638 	NAWK=$(NAWK) TEMPDIR=$(TEMPDIR) \
       
   639 	  HASHER="$(BOOT_JAVA_CMD) -jar $(HASHER_JARFILE)" \
       
   640 	  $(SHELL) -e genCharsetProvider.sh $(SCS_SRC)/standard-charsets $(SCS_GEN)
       
   641 
       
   642 .PHONY: sources