Changeset 258


Ignore:
Timestamp:
Feb 16, 2011, 6:05:51 PM (15 years ago)
Author:
dmik
Message:

corba: Apply make system patches from jdk (I really wonder why they are not shared) to add support for the OS/2 platform.

Location:
trunk/openjdk/corba/make/common
Files:
2 added
9 edited

Legend:

Unmodified
Added
Removed
  • trunk/openjdk/corba/make/common/Defs.gmk

    r2 r258  
    220220INCLUDES = -I. -I$(CLASSHDRDIR) \
    221221        $(patsubst %,-I%,$(subst $(CLASSPATH_SEPARATOR), ,$(VPATH.h))) $(OTHER_INCLUDES)
     222ifneq ($(PLATFORM), os2)
    222223OTHER_CPPFLAGS = $(INCLUDES)
    223 
     224endif
    224225
    225226#
     
    292293$(MKDIR) -p $(@D)
    293294$(RM) $@
     295endef
     296
     297# Prepare $@ target directory, remove old one and making sure parent exists
     298define prep-dir-target
     299$(MKDIR) -p $(@D)
     300$(RM) -r $@
    294301endef
    295302
     
    447454CFLAGS          = $(CFLAGS_$(VARIANT)/BYFILE)   $(CFLAGS_COMMON) $(OTHER_CFLAGS)
    448455CXXFLAGS        = $(CXXFLAGS_$(VARIANT)/BYFILE) $(CXXFLAGS_COMMON) $(OTHER_CXXFLAGS)
     456ifeq ($(PLATFORM), os2)
     457CPPFLAGS        = $(INCLUDES) $(CPPFLAGS_$(VARIANT)) $(CPPFLAGS_COMMON) $(OTHER_CPPFLAGS) \
     458                  $(DEFINES) $(OPTIONS:%=-D%)
     459else
    449460CPPFLAGS        = $(CPPFLAGS_$(VARIANT)) $(CPPFLAGS_COMMON) $(OTHER_CPPFLAGS) \
    450461                  $(DEFINES) $(OPTIONS:%=-D%)
     462endif
    451463LDFLAGS         = $(LDFLAGS_$(VARIANT)) $(LDFLAGS_COMMON) $(OTHER_LDFLAGS)
    452464LDLIBS          = $(OTHER_LDLIBS) $(LDLIBS_$(VARIANT)) $(LDLIBS_COMMON)
  • trunk/openjdk/corba/make/common/Library.gmk

    r2 r258  
    3535#
    3636
    37 ACTUAL_LIBRARY_NAME = $(LIB_PREFIX)$(LIBRARY).$(LIBRARY_SUFFIX)
     37ifneq ($(LIBRARY_SHORT),)
     38LIBRARY_NAME = $(LIBRARY_SHORT)
     39else
     40LIBRARY_NAME = $(LIBRARY)
     41endif
     42
     43ACTUAL_LIBRARY_NAME = $(LIB_PREFIX)$(LIBRARY_NAME).$(LIBRARY_SUFFIX)
    3844ACTUAL_LIBRARY_DIR = $(LIB_LOCATION)
    3945ACTUAL_LIBRARY = $(ACTUAL_LIBRARY_DIR)/$(ACTUAL_LIBRARY_NAME)
     
    186192endif # INSTALL_DOT_LIB
    187193
    188 else # PLATFORM
     194else # PLATFORM == windows
     195
     196ifeq ($(PLATFORM), os2)
     197
     198#
     199# Library building rules.
     200#
     201
     202$(LIBRARY).lib:: $(OBJDIR)
     203
     204$(ACTUAL_LIBRARY):: $(COMPILE_FILES_o) $(FILES_m) $(FILES_reorder) $(DEF_FILE)
     205        @$(prep-target)
     206        @$(ECHO) "STATS: LIBRARY=$(LIBRARY), PRODUCT=$(PRODUCT), _OPT=$(_OPT)"
     207        @$(ECHO) "Rebuilding $@ because of $?"
     208        $(LINK) $(LDFLAGS) $(SHARED_LIBRARY_FLAG) -o $@ $(FILES_o) $(LDLIBS) $(DEF_FILE)
     209        $(IMPLIB) -o $(OBJDIR)/$(LIBRARY).lib $@
     210        cd $(@D) && $(MAPSYM) $(basename $(@F)).map
     211
     212#
     213# Install a .lib file if required.
     214#
     215ifeq ($(INSTALL_DOT_LIB), true)
     216
     217$(ACTUAL_LIBRARY):: $(LIBDIR)/$(LIBRARY).lib
     218
     219clean::
     220        -$(RM) $(LIBDIR)/$(LIBRARY).lib
     221        -$(RM) $(LIBDIR)/$(LIBRARY).dll
     222
     223$(LIBDIR)/$(LIBRARY).lib:: $(OBJDIR)/$(LIBRARY).lib
     224        $(install-file)
     225
     226$(LIBDIR)/$(LIBRARY).dll:: $(ACTUAL_LIBRARY)
     227        $(install-file)
     228
     229endif # INSTALL_DOT_LIB
     230
     231else # PLATFORM == os2
    189232
    190233#
     
    202245endif # WRITE_LIBVERSION
    203246
    204 endif # PLATFORM
     247endif # PLATFORM == os2
     248
     249endif # PLATFORM == windows
    205250
    206251#
     
    216261#
    217262ifdef PACKAGE
     263
     264ifeq ($(PLATFORM), os2)
     265# OS/2 specific vpath should come first
     266vpath %.c $(PLATFORM_SRC_OS2)/native/$(PKGDIR)
     267OTHER_INCLUDES += -I$(PLATFORM_SRC_OS2)/native/common
     268OTHER_INCLUDES += -I$(PLATFORM_SRC_OS2)/native/$(PKGDIR)
     269endif
     270
    218271vpath %.c $(PLATFORM_SRC)/native/$(PKGDIR)
    219272vpath %.c $(SHARE_SRC)/native/$(PKGDIR)
     
    221274OTHER_INCLUDES += -I$(SHARE_SRC)/native/$(PKGDIR) \
    222275                  -I$(PLATFORM_SRC)/native/$(PKGDIR)
     276
    223277endif
    224278
  • trunk/openjdk/corba/make/common/internal/NativeCompileRules.gmk

    r2 r258  
    4747        @$(ECHO) "Creating $@"
    4848        @$(RM) $@.temp
    49         @$(CC) $(CC_DEPEND) $(CPPFLAGS) $< 2> $(DEV_NULL) | \
    50             $(CC_DEPEND_FILTER) > $@.temp
     49        @$(CC) $(CC_DEPEND) $(CPPFLAGS) $< \
     50            $(if $(CC_DEPEND_FILTER), | $(CC_DEPEND_FILTER)) \
     51            > $@.temp
    5152        @$(MV) $@.temp $@
    5253
     
    5556        @$(ECHO) "Creating $@"
    5657        @$(RM) $@.temp
    57         @$(CXX) $(CC_DEPEND) $(CPPFLAGS) $(CXXFLAGS) $< 2> $(DEV_NULL) | \
    58             $(CC_DEPEND_FILTER) > $@.temp
     58        @$(CXX) $(CC_DEPEND) $(CPPFLAGS) $(CXXFLAGS) $< \
     59            $(if $(CC_DEPEND_FILTER), | $(CC_DEPEND_FILTER)) \
     60            > $@.temp
    5961        @$(MV) $@.temp $@
    6062
  • trunk/openjdk/corba/make/common/shared/Compiler-gcc.gmk

    r2 r258  
    5353  _LINK_VER :=$(shell $(LINK) 2>&1 | $(HEAD) -n 1)
    5454  LINK_VER  :=$(call GetVersion,"$(_LINK_VER)")
     55
     56endif
     57
     58ifeq ($(PLATFORM), os2)
     59
     60  ifeq ($(EMXOMFLD_TYPE), WLINK)
     61    $(error WLINK is not currently supported due to fixup-related bugs when building awt.dll. \
     62            Use VAC308 ILINK instead)
     63  endif
     64
     65  # Settings specific to OS/2
     66  CC           = $(COMPILER_PATH)gcc
     67  CPP          = $(COMPILER_PATH)gcc -E
     68  CXX          = $(COMPILER_PATH)g++
     69  REQUIRED_CC_VER = 3.2
     70
     71  LINK         = $(COMPILER_PATH)gcc
     72  AR           = $(COMPILER_PATH)emxomfar
     73  IMPLIB       = $(COMPILER_PATH)emximp
     74  MAPSYM       = mapsym.exe
     75
     76  # Option used to create a shared library
     77  SHARED_LIBRARY_FLAG = -Zdll
     78  ifeq ($(EMXOMFLD_TYPE), VAC308)
     79    # (for some reason -Zdll is not always converted to /DLL by emxomfld)
     80    SHARED_LIBRARY_FLAG += -Zlinker /DLL
     81  endif
    5582
    5683endif
  • trunk/openjdk/corba/make/common/shared/Compiler.gmk

    r2 r258  
    3333endif
    3434
     35# OS/2 uses GNU compilers by default
     36ifeq ($(PLATFORM), os2)
     37  override CC_VERSION = gcc
     38endif
     39
    3540# Solaris uses Sun Studio compilers by default
    3641ifeq ($(PLATFORM), solaris)
  • trunk/openjdk/corba/make/common/shared/Defs-java.gmk

    r2 r258  
    118118
    119119# Needed for javah
    120 JAVAHFLAGS += -bootclasspath $(CLASSBINDIR)
     120JAVAHFLAGS += -bootclasspath $(if $(filter $(CLASSBINDIR),$(CLASSDESTDIR)),\
     121        $(CLASSBINDIR),$(CLASSDESTDIR)$(CLASSPATH_SEPARATOR)$(CLASSBINDIR))
    121122
    122123# Langtools
  • trunk/openjdk/corba/make/common/shared/Defs-utils.gmk

    r2 r258  
    6161endif
    6262
    63 ifeq ($(PLATFORM),windows)
     63ifeq ($(filter-out windows os2,$(PLATFORM)),)
    6464  UTILS_COMMAND_PATH=$(UNIXCOMMAND_PATH)
    6565  UTILS_USR_BIN_PATH=$(UNIXCOMMAND_PATH)
     
    158158endif
    159159
     160# OS/2 specific
     161ifeq ($(PLATFORM),os2)
     162  ECHO   = $(UNIXCOMMAND_PATH)echo -e
     163  NAWK   = $(UNIXCOMMAND_PATH)awk
     164endif
     165
    160166# Linux specific
    161167ifeq ($(PLATFORM),linux)
  • trunk/openjdk/corba/make/common/shared/Defs.gmk

    r2 r258  
    116116# Given a line of text, get the major.minor version number from it
    117117define GetVersion
    118 $(shell echo $1 | sed -e 's@[^1-9]*\([1-9][0-9]*\.[0-9][0-9]*\).*@\1@' )
     118$(shell echo $1 | sed -ne 's@[^1-9]*\([1-9][0-9]*\.[0-9][0-9]*\).*@\1@p')
    119119endef
    120120
  • trunk/openjdk/corba/make/common/shared/Platform.gmk

    r2 r258  
    373373endif
    374374
     375# Platform settings specific to OS/2
     376ifeq ($(SYSTEM_UNAME), OS/2)
     377  PLATFORM = os2
     378  OS_NAME = os2
     379  OS_VERSION := $(shell uname -r)
     380  OS_VENDOR = IBM
     381  TEMP_DISK = $(subst \,/,$(TEMP))
     382  ARCH_DATA_MODEL = 32
     383  ARCH = i586
     384  # LIBARCH is used to preserve the jre/lib/i386 directory name for 32-bit intel
     385  LIBARCH = i386
     386  # Value of Java os.arch property
     387  ARCHPROP = x86
     388  ARCH_FAMILY = $(ARCH)
     389  # Where is unwanted output to be delivered?
     390  DEV_NULL = nul
     391  # Classpath separator
     392  CLASSPATH_SEPARATOR = \;
     393  # The suffix used for object file (.o for unix .obj for windows)
     394  OBJECT_SUFFIX = obj
     395  # The suffix applied to executables (.exe for windows, nothing for solaris)
     396  EXE_SUFFIX = .exe
     397  # The prefix applied to library files (lib for solaris, nothing for windows)
     398  LIB_PREFIX =
     399  LIBRARY_SUFFIX = dll
     400  LIB_SUFFIX = lib
     401  # User name determination (set _USER)
     402  ifndef USER
     403    ifdef USERNAME
     404      _USER := $(USERNAME)
     405    else
     406      ifdef LOGNAME
     407        _USER := $(LOGNAME)
     408      else
     409        _USER := $(shell id -un)
     410      endif
     411    endif
     412  else
     413    _USER:=$(USER)
     414  endif
     415  # Location of client/server directories
     416  ARCH_VM_SUBDIR=jre/bin
     417  # Suffix for file bundles used in previous release
     418  BUNDLE_FILE_SUFFIX=.tar
     419  # Minimum disk space needed as determined by running 'du -sk' on
     420  #    a fully built workspace.
     421  REQUIRED_FREE_SPACE=500000
     422  # How much RAM does this machine have:
     423  # @todo
     424  # @todo We don't have JDK 1.6 yet so require 1.5
     425  REQUIRED_BOOT_VER = 1.5
     426endif
     427
    375428# Machines with 512Mb or less of real memory are considered low memory
    376429#    build machines and adjustments will be made to prevent excessing
     
    409462
    410463# Unix type settings (same for all unix platforms)
    411 ifneq ($(PLATFORM), windows)
     464ifneq ($(filter-out windows os2, $(PLATFORM)),)
    412465  # Temporary disk area
    413466  TEMP_DISK=/tmp
Note: See TracChangeset for help on using the changeset viewer.