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/CDDL.txt
      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/CDDL.txt.
     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 #
     23 #ident	"@(#)Makefile.master.Linux	1.11	07/06/06 SMI"
     24 #
     25 # Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
     26 # Use is subject to license terms.
     27 #
     28 # Makefile.master.Linux
     29 #
     30 # SunCluster/Linux additions to Makefile.master
     31 #
     32 
     33 .KEEP_STATE:
     34 
     35 TARGET_ROOT_NAME=$(OSNAME)
     36 
     37 INS.file=       $(RM) $@; $(INS) -m $(FILEMODE) $< $(@D)
     38 $(CH)INS.file=  $(INS) -m $(FILEMODE) -o $(OWNER) -g $(GROUP) $< $(@D)
     39 INS.dir=        $(INS) -d -m $(DIRMODE) $@
     40 $(CH)INS.dir=   $(INS) -d -m $(DIRMODE) -o $(OWNER) -g $(GROUP) $@
     41 
     42 #
     43 # C compiler mode. Future compilers may change the default on us,
     44 # so force transition mode globally. Lower level makefiles can
     45 # override this by setting CCMODE.
     46 #
     47 CCMODE=
     48 CCMODE64=
     49 
     50 # set this to the secret flag "-Wc,-Qiselect-regsym=0" to disable register
     51 # symbols (used to detect conflicts between objects that use global registers)
     52 # we disable this now for safety, and because genunix doesn't link with
     53 # this feature (the v9 default) enabled.
     54 #
     55 # REGSYM is separate since the C++ driver syntax is different.
     56 CCREGSYM=
     57 CCCREGSYM=
     58 
     59 # generate 32-bit addresses in the v9 kernel. Saves memory.
     60 CCABS32=
     61 
     62 #
     63 # disable the incremental linker
     64 ILDOFF=
     65 
     66 #
     67 # turn warnings into errors (C)
     68 CERRWARN=       -Werror
     69 
     70 #
     71 # turn warnings into errors (C++)
     72 CCERRWARN=      -Werror
     73 
     74 #
     75 # Ignore anachronisms and constant string messages
     76 CCNOCONSTSTRINGS= -fno-const-strings
     77 CCNOANACHRONISMS=
     78 
     79 #
     80 # Set compiler compatibility mode
     81 i386_CC_COMPAT=
     82 
     83 #
     84 # tradeoff time for space (smaller is better)
     85 #
     86 i386_SPACEFLAG	=
     87 
     88 NOINLINEFLAG	= -fno-default-inline
     89 i386_CCFLAGS	+=	-D_XOPEN_SOURCE=500 -D_BSD_SOURCE=1
     90 
     91 #
     92 # Link time macros
     93 #
     94 LINK.cc=	$(CCC) $(CCFLAGS) $(CPPFLAGS) -z nodefaultlib $(LDFLAGS) $(CCNEEDED)
     95 
     96 LINUX_ROOT=		/usr
     97 
     98 i386_CC=	$(LINUX_ROOT)/bin/gcc
     99 i386_CCC=	$(LINUX_ROOT)/bin/g++
    100 i386_AS=	$(LINUX_ROOT)/bin/as
    101 i386_LD=	$(LINUX_ROOT)/bin/ld
    102 
    103 LIBCC		=
    104 
    105 i386_LINT=
    106 
    107 PROCESS_COMMENT= /bin/true
    108 
    109 SYMLINK=	/bin/ln -s
    110 LN=		/bin/ln
    111 CHMOD=		/bin/chmod
    112 $(CH)CHOWN=	/bin/chown -h
    113 $(CH)CHGRP=	/bin/chgrp -h
    114 MV=		/bin/mv -f
    115 RM=		/bin/rm -f
    116 GREP=		/bin/grep
    117 XPG4GREP=	/bin/grep
    118 SED=		/bin/sed
    119 CP=		/bin/cp
    120 CAT=            /bin/cat
    121 RPCGEN=		/usr/bin/rpcgen
    122 
    123 $(NOT_RELEASE_BUILD)CL_CPPFLAGS	= $(FI_CPPFLAGS) -DDEBUG -DFAULT_ALL
    124 
    125 XAR=
    126 
    127 RPCGENMT=
    128 
    129 #
    130 # XXX Special wait target may need to be ported to GNU make
    131 #
    132 .WAIT:
    133 
    134 #
    135 # GNU make doesn't understand ":=" the same as Sun make does.  The same
    136 # functionality in GNU make is ":".  GNU make uses ":=" to assign
    137 # the RHS as the value of the LHS, so to avoid problems with
    138 # the default Sun make Makefile directives we clear them out here
    139 # as well.
    140 #
    141 def :=
    142 def :		TARGET= def
    143 all :=
    144 all :		TARGET= all
    145 install :=
    146 install :	TARGET= install
    147 install_h :=
    148 install_h :	TARGET= install_h
    149 debug :=
    150 debug :		TARGET= debug
    151 delete :=
    152 delete :	TARGET= delete
    153 clean :=
    154 clean :		TARGET= clean
    155 clobber :=
    156 clobber :	TARGET= clobber
    157 lint :=
    158 lint :		TARGET= lint
    159 cstyle :=
    160 cstyle :	TARGET= cstyle
    161 style :=
    162 style :		TARGET= style
    163 check :=
    164 check :		TARGET= check
    165 dmods :=
    166 dmods :		TARGET= dmods
    167 clean.lint :=
    168 clean.lint :	TARGET= clean.lint
    169 _msg :=
    170 _msg :		TARGET= catalog
    171 _dc :=
    172 _dc :		TARGET= _dc
    173 package :=
    174 package :	TARGET= package
    175 all_xmod :=
    176 all_xmod :	TARGET= all
    177 install_xmod :=
    178 install_xmod :	TARGET= install
    179