(file) Return to depend-unix.mak CVS log (file) (dir) Up to [Pegasus] / pegasus / mak

 1 martin 1.20 #//%LICENSE////////////////////////////////////////////////////////////////
 2 martin 1.21 #//
 3 martin 1.20 #// Licensed to The Open Group (TOG) under one or more contributor license
 4             #// agreements.  Refer to the OpenPegasusNOTICE.txt file distributed with
 5             #// this work for additional information regarding copyright ownership.
 6             #// Each contributor licenses this file to you under the OpenPegasus Open
 7             #// Source License; you may not use this file except in compliance with the
 8             #// License.
 9 martin 1.21 #//
10 martin 1.20 #// Permission is hereby granted, free of charge, to any person obtaining a
11             #// copy of this software and associated documentation files (the "Software"),
12             #// to deal in the Software without restriction, including without limitation
13             #// the rights to use, copy, modify, merge, publish, distribute, sublicense,
14             #// and/or sell copies of the Software, and to permit persons to whom the
15             #// Software is furnished to do so, subject to the following conditions:
16 martin 1.21 #//
17 martin 1.20 #// The above copyright notice and this permission notice shall be included
18             #// in all copies or substantial portions of the Software.
19 martin 1.21 #//
20 martin 1.20 #// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
21 martin 1.21 #// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
22 martin 1.20 #// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
23             #// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
24             #// CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
25             #// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
26             #// SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
27 martin 1.21 #//
28 martin 1.20 #//////////////////////////////////////////////////////////////////////////
29 mike   1.1  DEPEND_MAK = $(OBJ_DIR)/depend.mak
30             
31 nagaraj.gr 1.24 ifeq ($(ARCHITECTURE),PARISC)
32 dmitry.mikulin 1.17   SOURCES_NO_ASM = $(patsubst %.s,,$(SOURCES))
33                     else
34                       SOURCES_NO_ASM = $(SOURCES)
35                     endif
36                     
37 karl           1.26 ##
38                     ## test for compiler definition in CXX (g++, clang++, etc. compilers).
39                     ## Test for compiler type  as substring, not exact because there
40                     ## are cases where other info exists in CXX (ex. CXX=ccache g++)
41                     ##
42                     ifeq ($(findstring g++, $(CXX)), g++)
43 denise.eckstein 1.16     PEGASUS_CXX_MAKEDEPEND_OPTION = -M
44                      endif
45 karl            1.26 
46 dev.meetei      1.23 ifeq ($(CXX), clang++)
47                          PEGASUS_CXX_MAKEDEPEND_OPTION = -M
48                          C_SOURCES = $(filter %.c, $(SOURCES))
49                      endif
50                      
51 denise.eckstein 1.16 ifeq ($(CXX), CC)
52                          PEGASUS_CXX_MAKEDEPEND_OPTION = -xM1
53                      endif
54 dmitry.mikulin  1.17 ifeq ($(CXX), aCC)
55 dmitry.mikulin  1.19     PEGASUS_CXX_MAKEDEPEND_OPTION = +Make -E
56 dmitry.mikulin  1.18     acc_sed_filter = -e 's=$(OBJ_DIR).*cpp:==g'
57 dmitry.mikulin  1.17 endif
58 denise.eckstein 1.16 
59 karl            1.26 ##
60                      ## If compiler definition found, use compiler to define depend.mak
61                      ## each obj dir
62                      ##
63 kumpf           1.22 ifdef PEGASUS_CXX_MAKEDEPEND_OPTION
64 dev.meetei      1.23 
65                      ifeq ($(COMPILER), clang)
66                      ifneq ($(strip $(C_SOURCES)),)
67                      depend: $(OBJ_DIR)/target $(ERROR)
68                      	$(CC) $(PEGASUS_CXX_MAKEDEPEND_OPTION) $(LOCAL_DEFINES) $(DEFINES) $(SYS_INCLUDES) $(INCLUDES) $(SOURCES_NO_ASM) | sed -e 's=^\(.*:\)='$(OBJ_DIR)'/\1=' > $(DEPEND_MAK)
69                      else
70 keith.petley    1.11 depend: $(OBJ_DIR)/target $(ERROR)
71 dev.meetei      1.23 	$(CXX) $(PEGASUS_CXX_MAKEDEPEND_OPTION) $(LOCAL_DEFINES) $(DEFINES) $(SYS_INCLUDES) $(INCLUDES) $(SOURCES_NO_ASM) | sed -e 's=^\(.*:\)='$(OBJ_DIR)'/\1=' > $(DEPEND_MAK)
72                      endif
73                      else
74                        depend: $(OBJ_DIR)/target $(ERROR)
75 karl            1.25 	$(CXX) $(PEGASUS_CXX_MAKEDEPEND_OPTION) $(LOCAL_DEFINES) $(DEFINES) $(SYS_INCLUDES) $(INCLUDES) $(SOURCES_NO_ASM) | sed -e 's=^\(.*:\)='$(OBJ_DIR)'/\1=' $(acc_sed_filter) > $(DEPEND_MAK)
76 dev.meetei      1.23 endif
77 karl            1.26 
78                      ##
79                      ## Compiler type not found.   If PEGASUS_HAS_MAKEDEPEND set use makedepend
80                      ## to define depend.mak files.  Otherwise use OpenPegasus mu to create
81                      ## depend.make files
82                      ##
83 keith.petley    1.11 else
84 mike            1.9  ifdef PEGASUS_HAS_MAKEDEPEND
85 david.dillard   1.13 DEPEND_INCLUDES += -DPEGASUS_OS_TYPE_UNIX -I/usr/include $(SYS_INCLUDES)
86 mike            1.9  
87                      depend: $(OBJ_DIR)/target $(ERROR)
88                      	touch $(DEPEND_MAK)
89 dmitry.mikulin  1.17 	makedepend -v $(LOCAL_DEFINES) $(DEFINES) $(DEPEND_DEFINES) $(PRE_DEPEND_INCLUDES) $(DEPEND_INCLUDES) $(INCLUDES) $(SOURCES_NO_ASM) -f $(DEPEND_MAK) -p $(OBJ_DIR)/
90 mike            1.9  else
91 mike            1.5  depend: $(OBJ_DIR)/target $(ERROR)
92 dmitry.mikulin  1.17 	mu depend -O$(OBJ_DIR) $(INCLUDES) $(SOURCES_NO_ASM) > $(DEPEND_MAK)
93 keith.petley    1.11 endif
94 mike            1.9  endif
95 mike            1.2  clean-depend:
96                      	$(RM) $(OBJ_DIR)/depend.mak

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2