(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 karl   1.22.8.1 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.22.8.2 ##
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.22.8.2 
46 karl            1.22.8.1 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.22.8.2 ##
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 denise.eckstein 1.16     
65 karl            1.22.8.1 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                          depend: $(OBJ_DIR)/target $(ERROR)
71                          	$(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.22.8.2 	$(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 karl            1.22.8.1 endif
77 karl            1.22.8.2 
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