17871dc3eSAndrew Rist#************************************************************** 27871dc3eSAndrew Rist# 37871dc3eSAndrew Rist# Licensed to the Apache Software Foundation (ASF) under one 47871dc3eSAndrew Rist# or more contributor license agreements. See the NOTICE file 57871dc3eSAndrew Rist# distributed with this work for additional information 67871dc3eSAndrew Rist# regarding copyright ownership. The ASF licenses this file 77871dc3eSAndrew Rist# to you under the Apache License, Version 2.0 (the 87871dc3eSAndrew Rist# "License"); you may not use this file except in compliance 97871dc3eSAndrew Rist# with the License. You may obtain a copy of the License at 107871dc3eSAndrew Rist# 117871dc3eSAndrew Rist# http://www.apache.org/licenses/LICENSE-2.0 127871dc3eSAndrew Rist# 137871dc3eSAndrew Rist# Unless required by applicable law or agreed to in writing, 147871dc3eSAndrew Rist# software distributed under the License is distributed on an 157871dc3eSAndrew Rist# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 167871dc3eSAndrew Rist# KIND, either express or implied. See the License for the 177871dc3eSAndrew Rist# specific language governing permissions and limitations 187871dc3eSAndrew Rist# under the License. 197871dc3eSAndrew Rist# 207871dc3eSAndrew Rist#************************************************************** 217871dc3eSAndrew Rist 227871dc3eSAndrew Rist 23cdf0e10cSrcweir 24cdf0e10cSrcweirCOMPVERMK:=$(SOLARINCDIR)/comp_ver.mk 25cdf0e10cSrcweir 26cdf0e10cSrcweir.INCLUDE .IGNORE : $(COMPVERMK) 27cdf0e10cSrcweir 28cdf0e10cSrcweir.IF "$(COMNAME)"=="" || "$(COMPATH:s!\!/!)"!="$(COMPATH_STORED)" 29cdf0e10cSrcweir.IF "$(L10N_framework)"=="" 30cdf0e10cSrcweir 31cdf0e10cSrcweirCOMNAME:= 32cdf0e10cSrcweir 33cdf0e10cSrcweir.IF "$(COM)"=="GCC" 34*c91626b3SAndrea PescettiCFLAGSVERSION=-dumpfullversion -dumpversion 35*c91626b3SAndrea PescettiCFLAGSVERSION_CMD=-dumpfullversion -dumpversion 36*c91626b3SAndrea PescettiCFLAGSNUMVERSION_CMD=-dumpfullversion -dumpversion $(PIPEERROR) $(AWK) -v num=true -f $(SOLARENV)/bin/getcompver.awk 37*c91626b3SAndrea Pescetti#CFLAGSNUMVERSION_CMD=-dumpfullversion -dumpversion | 2>&1 $(AWK) -v num=true -f $(SOLARENV)/bin/getcompver.awk 3823455dabSPedro Giffuni.ELIF "$(COM)"=="CLANG" 3923455dabSPedro GiffuniCFLAGSVERSION=--version 4023455dabSPedro GiffuniCFLAGSVERSION_CMD=--version | head -n1 | sed -e"s/.*version //" -e"s/ .*//" 4159749ddcSPedro Giffuni.IF "$(OS)"="FREEBSD" 4259749ddcSPedro GiffuniCFLAGSNUMVERSION_CMD=${CFLAGSVERSION_CMD} | $(AWK) -v num=true -f $(SOLARENV)/bin/getcompver.awk 4359749ddcSPedro Giffuni.ELSE 4423455dabSPedro GiffuniCFLAGSNUMVERSION_CMD=${CFLAGSVERSION_CMD} | sed -e"s/\.//" 4559749ddcSPedro Giffuni.ENDIF 4623455dabSPedro Giffuni.ELIF "$(COM)"=="MSC" 47cdf0e10cSrcweirCFLAGSVERSION= 48cdf0e10cSrcweirCFLAGSVERSION_CMD= $(PIPEERROR) $(AWK) -f $(SOLARENV)/bin/getcompver.awk 49cdf0e10cSrcweirCFLAGSNUMVERSION_CMD= $(PIPEERROR) $(AWK) -v num=true -f $(SOLARENV)/bin/getcompver.awk 50cdf0e10cSrcweir.ENDIF 51cdf0e10cSrcweir 52cdf0e10cSrcweir.IF "$(COM)"=="C55" || "$(COM)"=="C54" || "$(COM)"=="C52" || "$(COM)"=="C40" || "$(COM)"=="sunpro" 53cdf0e10cSrcweirCFLAGSVERSION= -V 54cdf0e10cSrcweirCFLAGSVERSION_CMD= -V $(PIPEERROR) $(AWK) -f $(SOLARENV)/bin/getcompver.awk 55cdf0e10cSrcweirCFLAGSNUMVERSION_CMD= -V $(PIPEERROR) $(AWK) -v num=true -f $(SOLARENV)/bin/getcompver.awk 56cdf0e10cSrcweir.ENDIF 57cdf0e10cSrcweir 58cdf0e10cSrcweir.IF "$(COM)"=="C730" 59cdf0e10cSrcweirCFLAGSVERSION= -version 60cdf0e10cSrcweirCFLAGSVERSION_CMD= -version |& cut -d" " -f4- 61cdf0e10cSrcweirCFLAGSNUMVERSION_CMD= -version |& cut -d" " -f4- 62cdf0e10cSrcweir.ENDIF 63cdf0e10cSrcweir 64cdf0e10cSrcweir# that's the version known by the specific 65cdf0e10cSrcweir# compiler 66cdf0e10cSrcweirCCVER:=$(shell @-$(CXX) $(CFLAGSVERSION_CMD)) 67cdf0e10cSrcweir 68cdf0e10cSrcweir# and a computed integer for comparing 69cdf0e10cSrcweir# each point seperated token blown up to 4 digits 70cdf0e10cSrcweirCCNUMVER:=$(shell @-$(CXX) $(CFLAGSNUMVERSION_CMD)) 71cdf0e10cSrcweir 72cdf0e10cSrcweir.IF "$(COM)"=="MSC" 73cdf0e10cSrcweir.IF "$(CCNUMVER)">="001200000000" 74cdf0e10cSrcweirCOMID=MSC 75cdf0e10cSrcweirCOMNAME=msci 76cdf0e10cSrcweir.ENDIF 77cdf0e10cSrcweir.ENDIF 78cdf0e10cSrcweir 79cdf0e10cSrcweir.IF "$(COM)"=="GCC" 80cdf0e10cSrcweir 81cdf0e10cSrcweir.IF "$(CCNUMVER)">="000200910000" 82cdf0e10cSrcweirCOMID=GCC 83cdf0e10cSrcweirCOMNAME=gcc2 84cdf0e10cSrcweir.ENDIF 85cdf0e10cSrcweir 86cdf0e10cSrcweir.IF "$(CCNUMVER)">="000300000001" 87cdf0e10cSrcweir 88cdf0e10cSrcweirCOMID=gcc3 89cdf0e10cSrcweirCOMNAME=gcc3 90cdf0e10cSrcweir 91cdf0e10cSrcweir.ENDIF 92cdf0e10cSrcweir.ENDIF 93cdf0e10cSrcweir 94cdf0e10cSrcweir.IF "$(COM)"=="C55" || "$(COM)" == "C54" || "$(COM)"=="C52" || "$(COM)"=="C40" || "$(COM)"=="sunpro" 95cdf0e10cSrcweir.IF "$(CCNUMVER)">="00050002" 96cdf0e10cSrcweirCOMID=C52 97cdf0e10cSrcweirCOMNAME=sunpro5 98cdf0e10cSrcweir.ENDIF 99cdf0e10cSrcweir.ENDIF 100cdf0e10cSrcweir 101cdf0e10cSrcweir.IF "$(COM)"=="C730" 102cdf0e10cSrcweirCOMID=C730 103cdf0e10cSrcweirCOMNAME=MipsPro 104cdf0e10cSrcweir.ENDIF 105cdf0e10cSrcweir 1066d1ed1ddSHerbert Dürr.IF "$(COM)"=="CLANG" 107de2c434cSPedro Giffuni.IF "$(OS)" == "FREEBSD" 108de2c434cSPedro GiffuniCOMID=gcc3 109de2c434cSPedro GiffuniCOMNAME=gcc3 110de2c434cSPedro Giffuni.ELSE 1116d1ed1ddSHerbert DürrCOMID=s5abi 1126d1ed1ddSHerbert DürrCOMNAME=s5abi 1136d1ed1ddSHerbert Dürr.ENDIF 114de2c434cSPedro Giffuni.ENDIF 1156d1ed1ddSHerbert Dürr 116cdf0e10cSrcweir.IF "$(COMNAME)"=="" 117cdf0e10cSrcweir 118cdf0e10cSrcweir# "EXCEPTIONSFILES" get compiled before this, but shouldn't 119cdf0e10cSrcweir# appear in the first n modules. 120cdf0e10cSrcweir 121cdf0e10cSrcweircompiler_version_error: 122cdf0e10cSrcweir @echo ++++++++++++++++++++++++++++++++++++ 123cdf0e10cSrcweir @echo ERROR! 124cdf0e10cSrcweir @echo Could not detect compiler version! 125cdf0e10cSrcweir @echo Please extend tg_compv.mk in 126cdf0e10cSrcweir @echo "solenv/inc". 127cdf0e10cSrcweir @echo ++++++++++++++++++++++++++++++++++++ 128cdf0e10cSrcweir @echo "$(CXX) $(CFLAGSVERSION)" returns 129cdf0e10cSrcweir @$(CXX) $(CFLAGSVERSION) 130cdf0e10cSrcweir @echo ++++++++++++++++++++++++++++++++++++ 131cdf0e10cSrcweir force_dmake_to_error 132cdf0e10cSrcweir 133cdf0e10cSrcweir.ENDIF # "$(COMNAME)"=="" 134cdf0e10cSrcweir 135cdf0e10cSrcweirCDEFS+=-DCPPU_ENV=$(COMNAME) 136cdf0e10cSrcweir 137cdf0e10cSrcweir.ENDIF # "$(L10N_framework)"=="" 138cdf0e10cSrcweir.ENDIF # "$(COMNAME)"=="" 139