< prev index next >

make/common/NativeCompilation.gmk

Print this page




 355     $1_EXTRA_CFLAGS += $$(C_FLAG_REORDER)
 356     $1_EXTRA_CXXFLAGS += $$(CXX_FLAG_REORDER)
 357   endif
 358 
 359   ifeq (NONE, $$($1_OPTIMIZATION))
 360     $1_EXTRA_CFLAGS += $(C_O_FLAG_NONE)
 361     $1_EXTRA_CXXFLAGS += $(CXX_O_FLAG_NONE)
 362   else ifeq (LOW, $$($1_OPTIMIZATION))
 363     $1_EXTRA_CFLAGS += $(C_O_FLAG_NORM)
 364     $1_EXTRA_CXXFLAGS += $(CXX_O_FLAG_NORM)
 365   else ifeq (HIGH, $$($1_OPTIMIZATION))
 366     $1_EXTRA_CFLAGS += $(C_O_FLAG_HI)
 367     $1_EXTRA_CXXFLAGS += $(CXX_O_FLAG_HI)
 368   else ifeq (HIGHEST, $$($1_OPTIMIZATION))
 369     $1_EXTRA_CFLAGS += $(C_O_FLAG_HIGHEST)
 370     $1_EXTRA_CXXFLAGS += $(CXX_O_FLAG_HIGHEST)
 371   else ifneq (, $$($1_OPTIMIZATION))
 372     $$(error Unknown value for OPTIMIZATION: $$($1_OPTIMIZATION))
 373   endif
 374 




 375   # Now call add_native_source for each source file we are going to compile.
 376   $$(foreach p,$$($1_SRCS), \
 377       $$(eval $$(call add_native_source,$1,$$p,$$($1_OBJECT_DIR), \
 378           $$($1_CFLAGS) $$($1_EXTRA_CFLAGS),$$($1_CC), \
 379           $$($1_CXXFLAGS) $$($1_EXTRA_CXXFLAGS),$(CXX),$$($1_ASFLAGS))))
 380 
 381   # On windows we need to create a resource file
 382   ifeq ($(OPENJDK_TARGET_OS), windows)
 383     ifneq (,$$($1_VERSIONINFO_RESOURCE))
 384       $1_RES:=$$($1_OBJECT_DIR)/$$($1_BASENAME).res
 385       $$($1_RES): $$($1_VERSIONINFO_RESOURCE)
 386                 $(RC) $$($1_RC_FLAGS) $(CC_OUT_OPTION)$$@ $$($1_VERSIONINFO_RESOURCE)
 387     endif
 388     ifneq (,$$($1_MANIFEST))
 389       $1_GEN_MANIFEST:=$$($1_OBJECT_DIR)/$$($1_PROGRAM).manifest
 390       IMVERSIONVALUE:=$(JDK_MINOR_VERSION).$(JDK_MICRO_VERSION).$(JDK_UPDATE_VERSION).$(COOKED_BUILD_NUMBER)
 391       $$($1_GEN_MANIFEST): $$($1_MANIFEST)
 392                 $(SED) 's%IMVERSION%$$(IMVERSIONVALUE)%g;s%PROGRAM%$$($1_PROGRAM)%g' $$< > $$@
 393     endif
 394   endif


 399       $1_REAL_MAPFILE:=$$($1_MAPFILE)
 400       ifneq (,$$($1_REORDER))
 401         $1_REAL_MAPFILE:=$$($1_OBJECT_DIR)/mapfile
 402 
 403         $$($1_REAL_MAPFILE) : $$($1_MAPFILE) $$($1_REORDER)
 404                 $$(MKDIR) -p $$(@D)
 405                 $$(CP) $$($1_MAPFILE) $$@.tmp
 406                 $$(SED) -e 's=OUTPUTDIR=$$($1_OBJECT_DIR)=' $$($1_REORDER) >> $$@.tmp
 407                 $$(MV) $$@.tmp $$@
 408       endif
 409     endif
 410   endif
 411 
 412   # Pickup extra OPENJDK_TARGET_OS_API and/or OPENJDK_TARGET_OS dependent variables
 413   # for LDFLAGS and LDFLAGS_SUFFIX
 414   $1_EXTRA_LDFLAGS:=$$($1_LDFLAGS_$(OPENJDK_TARGET_OS_API)) $$($1_LDFLAGS_$(OPENJDK_TARGET_OS))
 415   $1_EXTRA_LDFLAGS_SUFFIX:=$$($1_LDFLAGS_SUFFIX_$(OPENJDK_TARGET_OS_API)) $$($1_LDFLAGS_SUFFIX_$(OPENJDK_TARGET_OS))
 416   ifneq (,$$($1_REAL_MAPFILE))
 417     $1_EXTRA_LDFLAGS += $(call SET_SHARED_LIBRARY_MAPFILE,$$($1_REAL_MAPFILE))
 418   endif


 419 
 420   $1 := $$($1_TARGET)
 421   ifneq (,$$($1_LIBRARY))
 422     # Generating a dynamic library.
 423     $1_EXTRA_LDFLAGS+=$$(call SET_SHARED_LIBRARY_NAME,$$($1_BASENAME))
 424     ifeq ($(OPENJDK_TARGET_OS), windows)
 425       $1_EXTRA_LDFLAGS+="-implib:$$($1_OBJECT_DIR)/$$($1_LIBRARY).lib"
 426     endif
 427 
 428     $1_EXTRA_LDFLAGS_SUFFIX += $(GLOBAL_LDFLAGS_SUFFIX)
 429 
 430     ifneq (,$$($1_DEBUG_SYMBOLS))
 431       ifeq ($(ENABLE_DEBUG_SYMBOLS), true)
 432         ifeq ($(OPENJDK_TARGET_OS), windows)
 433           $1_EXTRA_LDFLAGS+="-pdb:$$($1_OBJECT_DIR)/$$($1_LIBRARY).pdb" \
 434               "-map:$$($1_OBJECT_DIR)/$$($1_LIBRARY).map"
 435         endif
 436 
 437         ifneq ($$($1_OUTPUT_DIR),$$($1_OBJECT_DIR))
 438           $$($1_OUTPUT_DIR)/% : $$($1_OBJECT_DIR)/%




 355     $1_EXTRA_CFLAGS += $$(C_FLAG_REORDER)
 356     $1_EXTRA_CXXFLAGS += $$(CXX_FLAG_REORDER)
 357   endif
 358 
 359   ifeq (NONE, $$($1_OPTIMIZATION))
 360     $1_EXTRA_CFLAGS += $(C_O_FLAG_NONE)
 361     $1_EXTRA_CXXFLAGS += $(CXX_O_FLAG_NONE)
 362   else ifeq (LOW, $$($1_OPTIMIZATION))
 363     $1_EXTRA_CFLAGS += $(C_O_FLAG_NORM)
 364     $1_EXTRA_CXXFLAGS += $(CXX_O_FLAG_NORM)
 365   else ifeq (HIGH, $$($1_OPTIMIZATION))
 366     $1_EXTRA_CFLAGS += $(C_O_FLAG_HI)
 367     $1_EXTRA_CXXFLAGS += $(CXX_O_FLAG_HI)
 368   else ifeq (HIGHEST, $$($1_OPTIMIZATION))
 369     $1_EXTRA_CFLAGS += $(C_O_FLAG_HIGHEST)
 370     $1_EXTRA_CXXFLAGS += $(CXX_O_FLAG_HIGHEST)
 371   else ifneq (, $$($1_OPTIMIZATION))
 372     $$(error Unknown value for OPTIMIZATION: $$($1_OPTIMIZATION))
 373   endif
 374 
 375   # Add sys root specific cflags last
 376   $1_EXTRA_CFLAGS += $(SYSROOT_CFLAGS)
 377   $1_EXTRA_CXXFLAGS += $(SYSROOT_CFLAGS)
 378 
 379   # Now call add_native_source for each source file we are going to compile.
 380   $$(foreach p,$$($1_SRCS), \
 381       $$(eval $$(call add_native_source,$1,$$p,$$($1_OBJECT_DIR), \
 382           $$($1_CFLAGS) $$($1_EXTRA_CFLAGS),$$($1_CC), \
 383           $$($1_CXXFLAGS) $$($1_EXTRA_CXXFLAGS),$(CXX),$$($1_ASFLAGS))))
 384 
 385   # On windows we need to create a resource file
 386   ifeq ($(OPENJDK_TARGET_OS), windows)
 387     ifneq (,$$($1_VERSIONINFO_RESOURCE))
 388       $1_RES:=$$($1_OBJECT_DIR)/$$($1_BASENAME).res
 389       $$($1_RES): $$($1_VERSIONINFO_RESOURCE)
 390                 $(RC) $$($1_RC_FLAGS) $(CC_OUT_OPTION)$$@ $$($1_VERSIONINFO_RESOURCE)
 391     endif
 392     ifneq (,$$($1_MANIFEST))
 393       $1_GEN_MANIFEST:=$$($1_OBJECT_DIR)/$$($1_PROGRAM).manifest
 394       IMVERSIONVALUE:=$(JDK_MINOR_VERSION).$(JDK_MICRO_VERSION).$(JDK_UPDATE_VERSION).$(COOKED_BUILD_NUMBER)
 395       $$($1_GEN_MANIFEST): $$($1_MANIFEST)
 396                 $(SED) 's%IMVERSION%$$(IMVERSIONVALUE)%g;s%PROGRAM%$$($1_PROGRAM)%g' $$< > $$@
 397     endif
 398   endif


 403       $1_REAL_MAPFILE:=$$($1_MAPFILE)
 404       ifneq (,$$($1_REORDER))
 405         $1_REAL_MAPFILE:=$$($1_OBJECT_DIR)/mapfile
 406 
 407         $$($1_REAL_MAPFILE) : $$($1_MAPFILE) $$($1_REORDER)
 408                 $$(MKDIR) -p $$(@D)
 409                 $$(CP) $$($1_MAPFILE) $$@.tmp
 410                 $$(SED) -e 's=OUTPUTDIR=$$($1_OBJECT_DIR)=' $$($1_REORDER) >> $$@.tmp
 411                 $$(MV) $$@.tmp $$@
 412       endif
 413     endif
 414   endif
 415 
 416   # Pickup extra OPENJDK_TARGET_OS_API and/or OPENJDK_TARGET_OS dependent variables
 417   # for LDFLAGS and LDFLAGS_SUFFIX
 418   $1_EXTRA_LDFLAGS:=$$($1_LDFLAGS_$(OPENJDK_TARGET_OS_API)) $$($1_LDFLAGS_$(OPENJDK_TARGET_OS))
 419   $1_EXTRA_LDFLAGS_SUFFIX:=$$($1_LDFLAGS_SUFFIX_$(OPENJDK_TARGET_OS_API)) $$($1_LDFLAGS_SUFFIX_$(OPENJDK_TARGET_OS))
 420   ifneq (,$$($1_REAL_MAPFILE))
 421     $1_EXTRA_LDFLAGS += $(call SET_SHARED_LIBRARY_MAPFILE,$$($1_REAL_MAPFILE))
 422   endif
 423 
 424   $1_EXTRA_LDFLAGS += $(SYSROOT_LDFLAGS)
 425 
 426   $1 := $$($1_TARGET)
 427   ifneq (,$$($1_LIBRARY))
 428     # Generating a dynamic library.
 429     $1_EXTRA_LDFLAGS+=$$(call SET_SHARED_LIBRARY_NAME,$$($1_BASENAME))
 430     ifeq ($(OPENJDK_TARGET_OS), windows)
 431       $1_EXTRA_LDFLAGS+="-implib:$$($1_OBJECT_DIR)/$$($1_LIBRARY).lib"
 432     endif
 433 
 434     $1_EXTRA_LDFLAGS_SUFFIX += $(GLOBAL_LDFLAGS_SUFFIX)
 435 
 436     ifneq (,$$($1_DEBUG_SYMBOLS))
 437       ifeq ($(ENABLE_DEBUG_SYMBOLS), true)
 438         ifeq ($(OPENJDK_TARGET_OS), windows)
 439           $1_EXTRA_LDFLAGS+="-pdb:$$($1_OBJECT_DIR)/$$($1_LIBRARY).pdb" \
 440               "-map:$$($1_OBJECT_DIR)/$$($1_LIBRARY).map"
 441         endif
 442 
 443         ifneq ($$($1_OUTPUT_DIR),$$($1_OBJECT_DIR))
 444           $$($1_OUTPUT_DIR)/% : $$($1_OBJECT_DIR)/%


< prev index next >