Home | History | Annotate | Download | only in src
      1 #
      2 # CDDL HEADER START
      3 #
      4 # The contents of this file are subject to the terms of the
      5 # Common Development and Distribution License (the "License").
      6 # You may not use this file except in compliance with the License.
      7 #
      8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
      9 # or http://www.opensolaris.org/os/licensing.
     10 # See the License for the specific language governing permissions
     11 # and limitations under the License.
     12 #
     13 # When distributing Covered Code, include this CDDL HEADER in each
     14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
     15 # If applicable, add the following below this CDDL HEADER, with the
     16 # fields enclosed by brackets "[]" replaced with your own identifying
     17 # information: Portions Copyright [yyyy] [name of copyright owner]
     18 #
     19 # CDDL HEADER END
     20 #
     21 #
     22 # Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
     23 # Use is subject to license terms.
     24 #
     25 
     26 # rebind basic build macros to 64-bit versions
     27 
     28 CFLAGS=		$(CFLAGS64)
     29 CCFLAGS=	$(CCFLAGS64)
     30 COPTFLAG=	$(COPTFLAG64)
     31 CCOPTFLAG=	$(CCOPTFLAG64)
     32 COMPILE.c=	$(COMPILE64.c)
     33 COMPILE.cc=	$(COMPILE64.cc)
     34 COMPILE.s=	$(COMPILE64.s)
     35 COMPILE.d=	$(COMPILE64.d)
     36 COMPILE.b=	$(COMPILE64.b)
     37 LINK.c=		$(LINK64.c)
     38 LINK.cc=	$(LINK64.cc)
     39 LINT.c=		$(LINT64.c)
     40 
     41 OFFSETS_CREATE=	$(OFFSETS_CREATE64)
     42 
     43 #
     44 # Some library path hackery, to allow building of partial workspaces
     45 # and properly set the 64-bit library paths with 'ws'
     46 #
     47 LDLIBS1=	$(ENVLDLIBS1:%=%/$(MACH64))
     48 LDLIBS2=	$(ENVLDLIBS2:%=%/$(MACH64))
     49 LDLIBS3=	$(ENVLDLIBS3:%=%/$(MACH64))
     50 LDLIBS64 = 	$(LDLIBS1) $(LDLIBS2) $(LDLIBS3)
     51 #
     52 # Moved these up to the top level here, so they can be overridden
     53 #
     54 LDLIBS.cmd =	$(LDLIBS64)
     55 LDLIBS.lib =	$(LDLIBS64)
     56 
     57 #
     58 # Override Makefile.master's settings of SFWLIBDIR
     59 #
     60 SFWLIBDIR=	$(SFWLIBDIR64)
     61 
     62 #
     63 # Override Makefile.master's settings of CC, CCC, AS and LINT
     64 #
     65 CC=		$($(MACH64)_CC)
     66 CCC=		$($(MACH64)_CCC)
     67 CPP=		$($(MACH64)_CPP)
     68 AS=		$($(MACH64)_AS)
     69 LD=		$($(MACH64)_LD)
     70 LINT=		$($(MACH64)_LINT)
     71 
     72 REAL_CC=	$(CW_CC_CMD:sh)
     73 REAL_CCC=	$(CW_CCC_CMD:sh)
     74 
     75 BUILD.SO=	$(CC) $(CFLAGS) -o $@ $(GSHARED) $(DYNFLAGS) \
     76 		$(PICS) -L $(ROOTLIBDIR64) $(LDLIBS)
     77 
     78 #
     79 # ld(1) requires the -64 option to create a 64-bit filter solely from a mapfile
     80 #
     81 MAPFILECLASS=	-64
     82 
     83 CCNEEDED =		-lCrun
     84 $(__GNUC64)CCNEEDED =	-L$(SFWLIBDIR) -R$(SFWLIBDIR) -lstdc++	\
     85 			-lgcc_s_$(MACH64)
     86 
     87 BUILDCCC.SO=    $(CCC) $(CCFLAGS) -o $@ $(GSHARED) $(DYNFLAGS) $(PICS) $(LDLIBS) $(CCNEEDED)
     88 MAPFILE.NGB =	$(MAPFILE.NGB_$(MACH64))
     89