- Timestamp:
- Dec 13, 2008, 11:04:56 PM (15 years ago)
- Location:
- CMT/HEAD
- Files:
-
- 2 added
- 23 edited
Legend:
- Unmodified
- Added
- Removed
-
CMT/HEAD/ChangeLog
r482 r483 1 2008-12-13 <rybkin@lal.in2p3.fr> 378 2 3 * source/cmt_language.h: In class Language, introduce the members 4 dependencies_options, native_dependencies 5 * source/cmt_language.cxx: In class Language, in function action, add the 6 parsing of the -dependencies_options=OPTIONS option, in function show, 7 add the display of that option, implement the setup_native_dependencies 8 function to set <language>.native_dependencies to true, if 9 <language>.dependencies_options expands to a non-empty string 10 * source/cmt_generator.h: In class CmtGenerator, add the m_DEPENDENCIESOPTS 11 member 12 * source/cmt_generator.cxx: Handle the m_DEPENDENCIESOPTS member 13 * source/cmt_generators.cxx: In function LibraryGenerator::module_file_action, 14 replace the DEPENDENCIESOPTS template in the <language>, <language>_library 15 fragments with the value of <language>.dependencies_options, do not include 16 the dependencies fragment in the constituent (library/application) Make 17 file, if the language preprocessor(s) of all the source file(s) support the 18 generation of dependencies and the corresponding compiler options are 19 passed via the -dependencies_options=OPTIONS option of the language(s) 20 * mgr/fragments/cpp: Implement the generation of dependencies Make files 21 (one per source file) making use of the language compiler if the 22 the corresponding compiler options are passed 23 * mgr/fragments/cpp_library: idem 24 * mgr/fragments/c: idem 25 * mgr/fragments/c_library: idem 26 * mgr/fragments/nmake/cpp: idem 27 * mgr/fragments/nmake/cpp_library: idem 28 * mgr/fragments/nmake/c: idem 29 * mgr/fragments/nmake/c_library: idem 30 * mgr/requirements: define the cppdepflags, cdepflags macros to generate 31 dependencies making use of the language compiler for Linux, Darwin, VisualC 32 when the tags cpp_native_dependencies, c_native_dependencies are activated, 33 pass cppdepflags, cdepflags to the c++, c languages, define the 34 format_dependencies macro 35 * src/Makefile.core: Add the dep_echo, dep_silent macros to be used when 36 generating dependencies, add .make .stamp .cxx to the list of known 37 suffixes for optimisation 38 * src/NMakefile.core: idem 39 * src/Makefile.header: Remove the Make rule for src/Makefile.core 40 * mgr/fragments/constituent: In case STRUCTURED_OUTPUT is defined, create 41 the $(bin)${CONSTITUENT} here rather than in the constituent Make file 42 * mgr/fragments/constituent_lock: idem 43 * mgr/fragments/make_header: idem 44 * mgr/NMake: Filter macros containing personal names out of VisualC.nmake 45 * mgr/VisualC.nmake: idem 46 * mgr/cmt_format_deps.sh: Introduced to be used for the generation of 47 one dependencies Make file per source file 48 * mgr/cmt_format_deps.bat: idem 49 1 50 2008-11-29 <rybkin@lal.in2p3.fr> 377 2 51 -
CMT/HEAD/mgr/NMake
r23 r483 43 43 cmttag :: 44 44 @echo Rebuilding VisualC.nmake 45 @$(cmtexe) build tag_makefile | find /I /V "Arnault" | find /I /V " include=" | find /I /V "lib=" | find /I /V "PATH=" | find /I /V "CMTROOT=" >VisualC.nmake45 @$(cmtexe) build tag_makefile | find /I /V "Arnault" | find /I /V "rybkin" | find /I /V "include=" | find /I /V "lib=" | find /I /V "PATH=" | find /I /V "CMTROOT=" >VisualC.nmake 46 46 47 47 democlean :: -
CMT/HEAD/mgr/VisualC.nmake
r469 r483 1 1 CMT_tag=$(tag) 2 CMT_root=Y:\user\g\grybkine\labs\CMT\HEAD3 2 CMTVERSION=HEAD 4 CMT_project=grybkine5 CMT_project_release=labs6 3 cmt_hardware_query_command=uname -m 7 4 cmt_hardware=WIN32 … … 40 37 build_dependencies=$(cmtexe) -tag=$(tags) build dependencies 41 38 build_triggers=$(cmtexe) build triggers 39 format_dependencies=$(CMTROOT)\mgr\cmt_format_deps.bat /no_stamps 42 40 implied_library_prefix=-l 43 41 implied_library_suffix=.lib … … 82 80 srcdir=..\src 83 81 bin=..\$(CMT_tag)\ 84 BIN=Y:\user\g\grybkine\labs\CMT\HEAD\$(CMT_tag)\85 82 javabin=..\classes\ 86 83 mgrdir=mgr 87 project=grybkine 88 cmt_installarea_paths= $(cmt_installarea_prefix)/$(CMTCONFIG)/bin $(grybkine_installarea_prefix)/$(CMTCONFIG)/lib $(grybkine_installarea_prefix)/share/lib $(grybkine_installarea_prefix)/share/bin 89 use_linkopts= $(cmt_installarea_linkopts) $(CMT_linkopts) 90 grybkine_installarea_prefix=$(cmt_installarea_prefix) 91 grybkine_installarea_prefix_remove=$(grybkine_installarea_prefix) 92 cmt_installarea_linkopts= /LIBPATH:Y:\user\g\grybkine\labs\$(grybkine_installarea_prefix)\$(CMTCONFIG)\lib 93 CMTINSTALLAREA=Y:\user\g\grybkine\labs\$(cmt_installarea_prefix) 94 use_requirements=requirements 95 use_includes= 96 use_fincludes= $(use_includes) 97 use_stamps= $(CMT_stamps) 98 use_cflags= $(CMT_cflags) 99 use_pp_cflags= $(CMT_pp_cflags) 100 use_cppflags= $(CMT_cppflags) 101 use_pp_cppflags= $(CMT_pp_cppflags) 102 use_fflags= $(CMT_fflags) 103 use_pp_fflags= $(CMT_pp_fflags) 104 includes= $(ppcmd)"$(srcdir)" $(use_includes) 105 fincludes= $(includes) 84 cmt_installarea_paths= $(cmt_installarea_prefix)/$(CMTCONFIG)/bin 85 use_linkopts= $(cmt_installarea_linkopts) 86 cmt_GUID={88BF15AB-5A2D-4bea-B64F-02752C2A1F4F} 106 87 cmt_use_linkopts= $(CMT_linkopts) 88 make_GUID={88BF15AB-5A2D-4bea-B64F-02752C2A1F4F} 107 89 constituents= cmt 108 90 constituentsclean= cmtclean -
CMT/HEAD/mgr/fragments/c
r469 r483 1 1 #-- start of c ------ 2 2 3 ifneq (${DEPENDENCIESOPTS},) 4 5 ifneq ($(MAKECMDGOALS),${CONSTITUENT}clean) 6 -include $(bin)$(binobj)${NAME}${CONSTITUENTSUFFIX}.d 7 8 $(bin)$(binobj)${NAME}${CONSTITUENTSUFFIX}.d : $(use_requirements) $(cmt_final_setup_${CONSTITUENT}) 9 10 $(bin)$(binobj)${NAME}${CONSTITUENTSUFFIX}.d : ${FULLNAME} 11 $(dep_echo) $@ 12 $(c_silent) $(ccomp) ${DEPENDENCIESOPTS} -o $(@D)/${NAME}${CONSTITUENTSUFFIX}.dep $(use_pp_cflags) $(${CONSTITUENT}_pp_cflags) $(app_${CONSTITUENT}_pp_cflags) $(${NAME}_pp_cflags) $(use_cflags) $(${CONSTITUENT}_cflags) $(app_${CONSTITUENT}_cflags) $(${NAME}_cflags) $(${NAME}_${FILESUFFIX}_cflags) ${ADDINCLUDE} ${FULLNAME} 13 $(c_silent) $(format_dependencies) $@ $(@D)/${NAME}${CONSTITUENTSUFFIX}.o ${FULLNAME} $(@D)/${NAME}${CONSTITUENTSUFFIX}.dep 14 endif 15 16 $(bin)$(binobj)${NAME}${CONSTITUENTSUFFIX}.o : ${FULLNAME} 17 else 3 18 $(bin)${CONSTITUENT}_dependencies.make : $(${NAME}_${FILESUFFIX}_dependencies) 4 19 5 $(bin)${NAME}${CONSTITUENTSUFFIX}.o : $(${NAME}_${FILESUFFIX}_dependencies) 20 $(bin)$(binobj)${NAME}${CONSTITUENTSUFFIX}.o : $(${NAME}_${FILESUFFIX}_dependencies) 21 endif 6 22 $(c_echo) ${FULLNAME} 7 23 $(c_silent) $(ccomp) -o $@ $(use_pp_cflags) $(${CONSTITUENT}_pp_cflags) $(app_${CONSTITUENT}_pp_cflags) $(${NAME}_pp_cflags) $(use_cflags) $(${CONSTITUENT}_cflags) $(app_${CONSTITUENT}_cflags) $(${NAME}_cflags) $(${NAME}_${FILESUFFIX}_cflags) ${ADDINCLUDE} ${FULLNAME} 8 # $(c_silent) cd $(bin); $(ccomp) -o ${NAME}${CONSTITUENTSUFFIX}.o $(use_pp_cflags) $(${CONSTITUENT}_pp_cflags) $(app_${CONSTITUENT}_pp_cflags) $(${NAME}_pp_cflags) $(use_cflags) $(${CONSTITUENT}_cflags) $(app_${CONSTITUENT}_cflags) $(${NAME}_cflags) $(${NAME}_${FILESUFFIX}_cflags) ${ADDINCLUDE} ${FULLNAME}9 24 10 25 #-- end of c ------ -
CMT/HEAD/mgr/fragments/c_library
r469 r483 1 1 #-- start of c_library ------ 2 2 3 ifneq (${DEPENDENCIESOPTS},) 4 5 ifneq ($(MAKECMDGOALS),${CONSTITUENT}clean) 6 -include $(bin)$(binobj)${NAME}${CONSTITUENTSUFFIX}.d 7 8 $(bin)$(binobj)${NAME}${CONSTITUENTSUFFIX}.d : $(use_requirements) $(cmt_final_setup_${CONSTITUENT}) 9 10 $(bin)$(binobj)${NAME}${CONSTITUENTSUFFIX}.d : ${FULLNAME} 11 $(dep_echo) $@ 12 $(c_silent) $(ccomp) ${DEPENDENCIESOPTS} -o $(@D)/${NAME}${CONSTITUENTSUFFIX}.dep $(use_pp_cflags) $(${CONSTITUENT}_pp_cflags) $(lib_${CONSTITUENT}_pp_cflags) $(${NAME}_pp_cflags) $(use_cflags) $(${CONSTITUENT}_cflags) $(lib_${CONSTITUENT}_cflags) $(${NAME}_cflags) $(${NAME}_${FILESUFFIX}_cflags) ${ADDINCLUDE} ${FULLNAME} 13 $(c_silent) $(format_dependencies) $@ $(@D)/${NAME}${CONSTITUENTSUFFIX}.o ${FULLNAME} $(@D)/${NAME}${CONSTITUENTSUFFIX}.dep 14 endif 15 16 $(bin)$(binobj)${NAME}${CONSTITUENTSUFFIX}.o : ${FULLNAME} 17 else 3 18 $(bin)${CONSTITUENT}_dependencies.make : $(${NAME}_${FILESUFFIX}_dependencies) 4 19 5 20 $(bin)$(binobj)${NAME}${CONSTITUENTSUFFIX}.o : $(${NAME}_${FILESUFFIX}_dependencies) 21 endif 6 22 $(c_echo) ${FULLNAME} 7 23 $(c_silent) $(ccomp) -o $@ $(use_pp_cflags) $(${CONSTITUENT}_pp_cflags) $(lib_${CONSTITUENT}_pp_cflags) $(${NAME}_pp_cflags) $(use_cflags) $(${CONSTITUENT}_cflags) $(lib_${CONSTITUENT}_cflags) $(${NAME}_cflags) $(${NAME}_${FILESUFFIX}_cflags) ${ADDINCLUDE} ${FULLNAME} 8 # $(c_silent) cd $(bin); $(ccomp) -o $(binobj)${NAME}${CONSTITUENTSUFFIX}.o $(use_pp_cflags) $(${CONSTITUENT}_pp_cflags) $(lib_${CONSTITUENT}_pp_cflags) $(${NAME}_pp_cflags) $(use_cflags) $(${CONSTITUENT}_cflags) $(lib_${CONSTITUENT}_cflags) $(${NAME}_cflags) $(${NAME}_${FILESUFFIX}_cflags) ${ADDINCLUDE} ${FULLNAME}9 24 10 25 #-- end of c_library ------ -
CMT/HEAD/mgr/fragments/constituent
r459 r483 49 49 50 50 ifndef QUICK 51 ifdef STRUCTURED_OUTPUT 52 ${CONSTITUENT}dirs :: 53 @if test ! -d $(bin)${CONSTITUENT}; then $(mkdir) -p $(bin)${CONSTITUENT}; fi 54 $(echo) "STRUCTURED_OUTPUT="$(bin)${CONSTITUENT} 55 56 $(cmt_local_${CONSTITUENT}_makefile) :: $(${CONSTITUENT}_dependencies) $(cmt_local_tagfile_${CONSTITUENT}) build_library_links dirs ${CONSTITUENT}dirs 57 else 51 58 $(cmt_local_${CONSTITUENT}_makefile) :: $(${CONSTITUENT}_dependencies) $(cmt_local_tagfile_${CONSTITUENT}) build_library_links dirs 59 endif 52 60 else 53 61 $(cmt_local_${CONSTITUENT}_makefile) :: $(cmt_local_tagfile_${CONSTITUENT}) -
CMT/HEAD/mgr/fragments/constituent_lock
r466 r483 49 49 50 50 ifndef QUICK 51 ifdef STRUCTURED_OUTPUT 52 ${CONSTITUENT}dirs :: 53 @if test ! -d $(bin)${CONSTITUENT}; then $(mkdir) -p $(bin)${CONSTITUENT}; fi 54 $(echo) "STRUCTURED_OUTPUT="$(bin)${CONSTITUENT} 55 56 $(cmt_local_${CONSTITUENT}_makefile) :: $(${CONSTITUENT}_dependencies) $(cmt_local_tagfile_${CONSTITUENT}) build_library_links dirs ${CONSTITUENT}dirs 57 else 51 58 $(cmt_local_${CONSTITUENT}_makefile) :: $(${CONSTITUENT}_dependencies) $(cmt_local_tagfile_${CONSTITUENT}) build_library_links dirs 59 endif 52 60 else 53 61 $(cmt_local_${CONSTITUENT}_makefile) :: $(cmt_local_tagfile_${CONSTITUENT}) -
CMT/HEAD/mgr/fragments/cpp
r469 r483 1 1 #-- start of cpp ------ 2 2 3 ifneq (${DEPENDENCIESOPTS},) 4 5 ifneq ($(MAKECMDGOALS),${CONSTITUENT}clean) 6 -include $(bin)$(binobj)${NAME}${CONSTITUENTSUFFIX}.d 7 8 $(bin)$(binobj)${NAME}${CONSTITUENTSUFFIX}.d : $(use_requirements) $(cmt_final_setup_${CONSTITUENT}) 9 10 $(bin)$(binobj)${NAME}${CONSTITUENTSUFFIX}.d : ${FULLNAME} 11 $(dep_echo) $@ 12 $(cpp_silent) $(cppcomp) ${DEPENDENCIESOPTS} -o $(@D)/${NAME}${CONSTITUENTSUFFIX}.dep $(use_pp_cppflags) $(${CONSTITUENT}_pp_cppflags) $(app_${CONSTITUENT}_pp_cppflags) $(${NAME}_pp_cppflags) $(use_cppflags) $(${CONSTITUENT}_cppflags) $(app_${CONSTITUENT}_cppflags) $(${NAME}_cppflags) $(${NAME}_${FILESUFFIX}_cppflags) ${ADDINCLUDE} ${FULLNAME} 13 $(cpp_silent) $(format_dependencies) $@ $(@D)/${NAME}${CONSTITUENTSUFFIX}.o ${FULLNAME} $(@D)/${NAME}${CONSTITUENTSUFFIX}.dep 14 endif 15 16 $(bin)$(binobj)${NAME}${CONSTITUENTSUFFIX}.o : ${FULLNAME} 17 else 3 18 $(bin)${CONSTITUENT}_dependencies.make : $(${NAME}_${FILESUFFIX}_dependencies) 4 19 5 20 $(bin)$(binobj)${NAME}${CONSTITUENTSUFFIX}.o : $(${NAME}_${FILESUFFIX}_dependencies) 21 endif 6 22 $(cpp_echo) ${FULLNAME} 7 $(cpp_silent) $(cppcomp) -o $ (@)$(use_pp_cppflags) $(${CONSTITUENT}_pp_cppflags) $(app_${CONSTITUENT}_pp_cppflags) $(${NAME}_pp_cppflags) $(use_cppflags) $(${CONSTITUENT}_cppflags) $(app_${CONSTITUENT}_cppflags) $(${NAME}_cppflags) $(${NAME}_${FILESUFFIX}_cppflags) ${ADDINCLUDE} ${FULLNAME}23 $(cpp_silent) $(cppcomp) -o $@ $(use_pp_cppflags) $(${CONSTITUENT}_pp_cppflags) $(app_${CONSTITUENT}_pp_cppflags) $(${NAME}_pp_cppflags) $(use_cppflags) $(${CONSTITUENT}_cppflags) $(app_${CONSTITUENT}_cppflags) $(${NAME}_cppflags) $(${NAME}_${FILESUFFIX}_cppflags) ${ADDINCLUDE} ${FULLNAME} 8 24 9 25 #-- end of cpp ------ -
CMT/HEAD/mgr/fragments/cpp_library
r469 r483 1 1 #-- start of cpp_library ----------------- 2 2 3 ifneq (${DEPENDENCIESOPTS},) 4 5 ifneq ($(MAKECMDGOALS),${CONSTITUENT}clean) 6 -include $(bin)$(binobj)${NAME}${CONSTITUENTSUFFIX}.d 7 8 $(bin)$(binobj)${NAME}${CONSTITUENTSUFFIX}.d : $(use_requirements) $(cmt_final_setup_${CONSTITUENT}) 9 10 $(bin)$(binobj)${NAME}${CONSTITUENTSUFFIX}.d : ${FULLNAME} 11 $(dep_echo) $@ 12 $(cpp_silent) $(cppcomp) ${DEPENDENCIESOPTS} -o $(@D)/${NAME}${CONSTITUENTSUFFIX}.dep $(use_pp_cppflags) $(${CONSTITUENT}_pp_cppflags) $(lib_${CONSTITUENT}_pp_cppflags) $(${NAME}_pp_cppflags) $(use_cppflags) $(${CONSTITUENT}_cppflags) $(lib_${CONSTITUENT}_cppflags) $(${NAME}_cppflags) $(${NAME}_${FILESUFFIX}_cppflags) ${ADDINCLUDE} ${FULLNAME} 13 $(cpp_silent) $(format_dependencies) $@ $(@D)/${NAME}${CONSTITUENTSUFFIX}.o ${FULLNAME} $(@D)/${NAME}${CONSTITUENTSUFFIX}.dep 14 endif 15 16 $(bin)$(binobj)${NAME}${CONSTITUENTSUFFIX}.o : ${FULLNAME} 17 else 3 18 $(bin)${CONSTITUENT}_dependencies.make : $(${NAME}_${FILESUFFIX}_dependencies) 4 19 5 20 $(bin)$(binobj)${NAME}${CONSTITUENTSUFFIX}.o : $(${NAME}_${FILESUFFIX}_dependencies) 21 endif 6 22 $(cpp_echo) ${FULLNAME} 7 $(cpp_silent) $(cppcomp) -o $ (@)$(use_pp_cppflags) $(${CONSTITUENT}_pp_cppflags) $(lib_${CONSTITUENT}_pp_cppflags) $(${NAME}_pp_cppflags) $(use_cppflags) $(${CONSTITUENT}_cppflags) $(lib_${CONSTITUENT}_cppflags) $(${NAME}_cppflags) $(${NAME}_${FILESUFFIX}_cppflags) ${ADDINCLUDE} ${FULLNAME}23 $(cpp_silent) $(cppcomp) -o $@ $(use_pp_cppflags) $(${CONSTITUENT}_pp_cppflags) $(lib_${CONSTITUENT}_pp_cppflags) $(${NAME}_pp_cppflags) $(use_cppflags) $(${CONSTITUENT}_cppflags) $(lib_${CONSTITUENT}_cppflags) $(${NAME}_cppflags) $(${NAME}_${FILESUFFIX}_cppflags) ${ADDINCLUDE} ${FULLNAME} 8 24 9 25 #-- end of cpp_library ------------------ -
CMT/HEAD/mgr/fragments/make_header
r441 r483 104 104 ifdef STRUCTURED_OUTPUT 105 105 binobj = ${CONSTITUENT}/ 106 ${CONSTITUENT}::107 @if test ! -d $(bin)$(binobj) ; then $(mkdir) -p $(bin)$(binobj) ; fi108 $(echo) "STRUCTURED_OUTPUT="$(bin)$(binobj)106 #${CONSTITUENT}:: 107 # @if test ! -d $(bin)$(binobj) ; then $(mkdir) -p $(bin)$(binobj) ; fi 108 # $(echo) "STRUCTURED_OUTPUT="$(bin)$(binobj) 109 109 endif 110 110 -
CMT/HEAD/mgr/fragments/nmake/c
r445 r483 1 1 #-- start of c ------ 2 2 3 $(bin)${CONSTITUENT}/${NAME}${CONSTITUENTSUFFIX}.obj : $(${NAME}_${FILESUFFIX}_dependencies) 3 !if "${DEPENDENCIESOPTS}" != "" 4 5 !if exists ($(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.d) 6 !include $(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.d 7 !endif 8 9 ${CONSTITUENT} :: $(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.d 10 11 $(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.d : $(use_requirements) $(cmt_final_setup_${CONSTITUENT}) 12 13 $(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.d : ${FULLNAME} 14 $(dep_echo) $@ 15 $(c_silent) if not exist $(bin)${CONSTITUENT} mkdir $(bin)${CONSTITUENT} 16 $(c_silent) $(ccomp) ${DEPENDENCIESOPTS} $(use_pp_cflags) $(${CONSTITUENT}_pp_cflags) $(app_${CONSTITUENT}_pp_cflags) $(${NAME}_pp_cflags) $(use_cflags) $(${CONSTITUENT}_cflags) $(app_${CONSTITUENT}_cflags) $(${NAME}_cflags) $(${NAME}_${FILESUFFIX}_cflags) ${ADDINCLUDE} /Tc${FULLNAME} 2>$(@D)\${NAME}${CONSTITUENTSUFFIX}.dep >nul 17 $(c_silent) $(format_dependencies) $@ $(@D)\${NAME}${CONSTITUENTSUFFIX}.obj ${FULLNAME} $(@D)\${NAME}${CONSTITUENTSUFFIX}.dep 18 19 $(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.obj : ${FULLNAME} 20 !else 21 $(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.obj : $(${NAME}_${FILESUFFIX}_dependencies) 22 !endif 4 23 $(c_echo) ${FULLNAME} 5 24 $(c_silent) if not exist $(bin)${CONSTITUENT} mkdir $(bin)${CONSTITUENT} 6 $(c_silent) $(ccomp) /Fo$ (bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.obj/Fd$(bin)${CONSTITUENT}\ $(use_pp_cflags) $(${CONSTITUENT}_pp_cflags) $(app_${CONSTITUENT}_pp_cflags) $(${NAME}_pp_cflags) $(use_cflags) $(${CONSTITUENT}_cflags) $(app_${CONSTITUENT}_cflags) $(${NAME}_cflags) $(${NAME}_${FILESUFFIX}_cflags) ${ADDINCLUDE} ${FULLNAME}25 $(c_silent) $(ccomp) /Fo$@ /Fd$(bin)${CONSTITUENT}\ $(use_pp_cflags) $(${CONSTITUENT}_pp_cflags) $(app_${CONSTITUENT}_pp_cflags) $(${NAME}_pp_cflags) $(use_cflags) $(${CONSTITUENT}_cflags) $(app_${CONSTITUENT}_cflags) $(${NAME}_cflags) $(${NAME}_${FILESUFFIX}_cflags) ${ADDINCLUDE} ${FULLNAME} 7 26 8 27 #-- end of c ------ -
CMT/HEAD/mgr/fragments/nmake/c_library
r445 r483 1 1 #-- start of c_library ------ 2 2 3 !if "${DEPENDENCIESOPTS}" != "" 4 5 !if exists ($(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.d) 6 !include $(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.d 7 !endif 8 9 ${CONSTITUENT} :: $(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.d 10 11 $(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.d : $(use_requirements) $(cmt_final_setup_${CONSTITUENT}) 12 13 $(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.d : ${FULLNAME} 14 $(dep_echo) $@ 15 $(c_silent) if not exist $(bin)${CONSTITUENT} mkdir $(bin)${CONSTITUENT} 16 $(c_silent) $(ccomp) ${DEPENDENCIESOPTS} $(use_pp_cflags) $(${CONSTITUENT}_pp_cflags) $(lib_${CONSTITUENT}_pp_cflags) $(${NAME}_pp_cflags) $(use_cflags) $(${CONSTITUENT}_cflags) $(lib_${CONSTITUENT}_cflags) $(${NAME}_cflags) $(${NAME}_${FILESUFFIX}_cflags) ${ADDINCLUDE} /Tc${FULLNAME} 2>$(@D)\${NAME}${CONSTITUENTSUFFIX}.dep >nul 17 $(c_silent) $(format_dependencies) $@ $(@D)\${NAME}${CONSTITUENTSUFFIX}.obj ${FULLNAME} $(@D)\${NAME}${CONSTITUENTSUFFIX}.dep 18 19 $(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.obj : ${FULLNAME} 20 !else 3 21 $(bin)${CONSTITUENT}/${NAME}${CONSTITUENTSUFFIX}.obj : $(${NAME}_${FILESUFFIX}_dependencies) 22 !endif 4 23 $(c_echo) ${FULLNAME} 5 24 $(c_silent) if not exist $(bin)${CONSTITUENT} mkdir $(bin)${CONSTITUENT} -
CMT/HEAD/mgr/fragments/nmake/cpp
r445 r483 1 1 #-- start of cpp ------ 2 2 3 $(bin)${CONSTITUENT}/${NAME}${CONSTITUENTSUFFIX}.obj : $(${NAME}_${FILESUFFIX}_dependencies) 3 !if "${DEPENDENCIESOPTS}" != "" 4 5 !if exists ($(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.d) 6 !include $(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.d 7 !endif 8 9 ${CONSTITUENT} :: $(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.d 10 11 $(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.d : $(use_requirements) $(cmt_final_setup_${CONSTITUENT}) 12 13 $(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.d : ${FULLNAME} 14 $(dep_echo) $@ 15 $(cpp_silent) if not exist $(bin)${CONSTITUENT} mkdir $(bin)${CONSTITUENT} 16 $(cpp_silent) $(cppcomp) ${DEPENDENCIESOPTS} $(use_pp_cppflags) $(${CONSTITUENT}_pp_cppflags) $(app_${CONSTITUENT}_pp_cppflags) $(${NAME}_pp_cppflags) $(use_cppflags) $(${CONSTITUENT}_cppflags) $(app_${CONSTITUENT}_cppflags) $(${NAME}_cppflags) $(${NAME}_${FILESUFFIX}_cppflags) ${ADDINCLUDE} /Tp${FULLNAME} 2>$(@D)\${NAME}${CONSTITUENTSUFFIX}.dep >nul 17 $(cpp_silent) $(format_dependencies) $@ $(@D)\${NAME}${CONSTITUENTSUFFIX}.obj ${FULLNAME} $(@D)\${NAME}${CONSTITUENTSUFFIX}.dep 18 19 $(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.obj : ${FULLNAME} 20 !else 21 $(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.obj : $(${NAME}_${FILESUFFIX}_dependencies) 22 !endif 4 23 $(cpp_echo) ${FULLNAME} 5 24 $(cpp_silent) if not exist $(bin)${CONSTITUENT} mkdir $(bin)${CONSTITUENT} 6 $(cpp_silent) $(cppcomp) /Fo$ (bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.obj/Fd$(bin)${CONSTITUENT}\ $(use_pp_cppflags) $(${CONSTITUENT}_pp_cppflags) $(app_${CONSTITUENT}_pp_cppflags) $(${NAME}_pp_cppflags) $(use_cppflags) $(${CONSTITUENT}_cppflags) $(app_${CONSTITUENT}_cppflags) $(${NAME}_cppflags) $(${NAME}_${FILESUFFIX}_cppflags) ${ADDINCLUDE} /Tp${FULLNAME}25 $(cpp_silent) $(cppcomp) /Fo$@ /Fd$(bin)${CONSTITUENT}\ $(use_pp_cppflags) $(${CONSTITUENT}_pp_cppflags) $(app_${CONSTITUENT}_pp_cppflags) $(${NAME}_pp_cppflags) $(use_cppflags) $(${CONSTITUENT}_cppflags) $(app_${CONSTITUENT}_cppflags) $(${NAME}_cppflags) $(${NAME}_${FILESUFFIX}_cppflags) ${ADDINCLUDE} /Tp${FULLNAME} 7 26 8 27 #-- end of cpp ------ -
CMT/HEAD/mgr/fragments/nmake/cpp_library
r445 r483 1 1 #-- start of cpp_library ------ 2 2 3 $(bin)${CONSTITUENT}/${NAME}${CONSTITUENTSUFFIX}.obj : $(${NAME}_${FILESUFFIX}_dependencies) 3 !if "${DEPENDENCIESOPTS}" != "" 4 5 !if exists ($(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.d) 6 !include $(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.d 7 !endif 8 9 ${CONSTITUENT} :: $(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.d 10 11 $(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.d : $(use_requirements) $(cmt_final_setup_${CONSTITUENT}) 12 13 $(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.d : ${FULLNAME} 14 $(dep_echo) $@ 15 $(cpp_silent) if not exist $(bin)${CONSTITUENT} mkdir $(bin)${CONSTITUENT} 16 $(cpp_silent) $(cppcomp) ${DEPENDENCIESOPTS} $(use_pp_cppflags) $(${CONSTITUENT}_pp_cppflags) $(lib_${CONSTITUENT}_pp_cppflags) $(${NAME}_pp_cppflags) $(use_cppflags) $(${CONSTITUENT}_cppflags) $(lib_${CONSTITUENT}_cppflags) $(${NAME}_cppflags) $(${NAME}_${FILESUFFIX}_cppflags) ${ADDINCLUDE} /Tp${FULLNAME} 2>$(@D)\${NAME}${CONSTITUENTSUFFIX}.dep >nul 17 $(cpp_silent) $(format_dependencies) $@ $(@D)\${NAME}${CONSTITUENTSUFFIX}.obj ${FULLNAME} $(@D)\${NAME}${CONSTITUENTSUFFIX}.dep 18 19 $(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.obj : ${FULLNAME} 20 !else 21 $(bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.obj : $(${NAME}_${FILESUFFIX}_dependencies) 22 !endif 4 23 $(cpp_echo) ${FULLNAME} 5 24 $(cpp_silent) if not exist $(bin)${CONSTITUENT} mkdir $(bin)${CONSTITUENT} 6 $(cpp_silent) $(cppcomp) /Fo$ (bin)${CONSTITUENT}\${NAME}${CONSTITUENTSUFFIX}.obj/Fd$(bin)${CONSTITUENT}\ $(use_pp_cppflags) $(${CONSTITUENT}_pp_cppflags) $(lib_${CONSTITUENT}_pp_cppflags) $(${NAME}_pp_cppflags) $(use_cppflags) $(${CONSTITUENT}_cppflags) $(lib_${CONSTITUENT}_cppflags) $(${NAME}_cppflags) $(${NAME}_${FILESUFFIX}_cppflags) ${ADDINCLUDE} /Tp${FULLNAME}25 $(cpp_silent) $(cppcomp) /Fo$@ /Fd$(bin)${CONSTITUENT}\ $(use_pp_cppflags) $(${CONSTITUENT}_pp_cppflags) $(lib_${CONSTITUENT}_pp_cppflags) $(${NAME}_pp_cppflags) $(use_cppflags) $(${CONSTITUENT}_cppflags) $(lib_${CONSTITUENT}_cppflags) $(${NAME}_cppflags) $(${NAME}_${FILESUFFIX}_cppflags) ${ADDINCLUDE} /Tp${FULLNAME} 7 26 8 27 #-- end of cpp_library ------ -
CMT/HEAD/mgr/requirements
r469 r483 181 181 VisualC "link.exe /nologo /machine:IX86 " 182 182 183 macro cdepflags "" \ 184 c_native_dependencies&Linux "-MM" \ 185 c_native_dependencies&Darwin "-MM" \ 186 c_native_dependencies&VisualC "/showIncludes /E" 183 187 184 188 # … … 266 270 alpha " /usr/lib/cmplrs/cxx/libcxx.a -lcxxstd -lexc -lm " \ 267 271 alphat " /usr/lib/cmplrs/cxx/libcxx.a -lcxxstd -lexc -lm " 272 273 macro cppdepflags "" \ 274 cpp_native_dependencies&Linux "-MM" \ 275 cpp_native_dependencies&Darwin "-MM" \ 276 cpp_native_dependencies&VisualC "/showIncludes /E" 268 277 269 278 # … … 420 429 macro build_dependencies "$(cmtexe) -tag=$(tags) build dependencies" 421 430 macro build_triggers "$(cmtexe) build triggers" 431 432 macro format_dependencies "" \ 433 Linux "${CMTROOT}/mgr/cmt_format_deps.sh" \ 434 Darwin "${CMTROOT}/mgr/cmt_format_deps.sh" \ 435 VisualC "%CMTROOT%\mgr\cmt_format_deps.bat /no_stamps" 422 436 423 437 macro implied_library_prefix "-l" \ … … 645 659 646 660 language fortran -suffix=f -suffix=F -preprocessor_command=$(ppcmd) -linker=$(flink) 647 language c -suffix=c -prototypes -linker=$(clink) 648 language c++ -suffix=C -suffix=cc -suffix=cxx -suffix=cpp -fragment=cpp -linker=$(cpplink) 661 language c -suffix=c -prototypes -linker=$(clink) -dependencies_options=$(cdepflags) 662 language c++ -suffix=C -suffix=cc -suffix=cxx -suffix=cpp -fragment=cpp -linker=$(cpplink) -dependencies_options=$(cppdepflags) 649 663 language java -suffix=java -linker=java 650 664 language yacc -suffix=y -prototypes -linker=$(clink) -
CMT/HEAD/source/cmt_generator.cxx
r474 r483 50 50 m_CONSTITUENT.set ("CONSTITUENT"); 51 51 m_LINKMACRO.set ("LINKMACRO"); 52 m_DEPENDENCIESOPTS.set ("DEPENDENCIESOPTS"); 52 53 m_DOCPATH.set ("DOCPATH"); 53 54 m_PACKAGEPATH.set ("PACKAGEPATH"); … … 72 73 m_SUFFIX.set ("SUFFIX"); 73 74 m_FILENAME.set ("FILENAME"); 74 m_LINKMACRO.set ("LINKMACRO");75 // m_LINKMACRO.set ("LINKMACRO"); 75 76 m_LINE.set ("LINE"); 76 77 m_ADDINCLUDE.set ("ADDINCLUDE"); … … 90 91 m_CONSTITUENT = ""; 91 92 m_LINKMACRO = ""; 93 m_DEPENDENCIESOPTS = ""; 92 94 m_DOCPATH = ""; 93 95 m_PACKAGEPATH = ""; -
CMT/HEAD/source/cmt_generator.h
r474 r483 103 103 Variable m_CONSTITUENT; 104 104 Variable m_LINKMACRO; 105 Variable m_DEPENDENCIESOPTS; 105 106 Variable m_DOCPATH; 106 107 Variable m_PACKAGEPATH; -
CMT/HEAD/source/cmt_generators.cxx
r474 r483 326 326 preproc = language.preprocessor_command; 327 327 fragment = (is_library) ? &(language.library) : &(language.application); 328 m_DEPENDENCIESOPTS = language.dependencies_options; 328 329 } 329 330 else … … 363 364 if (fragment != 0) 364 365 { 365 fragment->copy (m_output_file, constituent.variables, 10, 366 // fragment->copy (m_output_file, constituent.variables, 10, 367 fragment->copy (m_output_file, constituent.variables, 11, 366 368 &m_CONSTITUENT, 367 369 &m_CONSTITUENTSUFFIX, … … 373 375 &m_FILEPATH, 374 376 &m_FILESUFFIX, 375 &m_PACKAGE); 377 &m_PACKAGE, 378 &m_DEPENDENCIESOPTS); 376 379 } 377 380 else if (file.output () != "") … … 715 718 } 716 719 720 bool need_dependencies = false; 721 722 for (i = 0; i < m_source_files.size (); i++) 723 { 724 const SourceFile& file = m_source_files[i]; 725 Language& language = file.language (); 726 if (!language.native_dependencies) 727 { 728 need_dependencies = true; 729 break; 730 } 731 } 732 717 733 if (constituent.build_triggers) 718 734 { … … 725 741 else 726 742 { 743 if (need_dependencies) 744 { 727 745 dependencies_fragment.copy (m_output_file, 728 746 constituent.variables, 3, … … 730 748 &m_CONSTITUENTSUFFIX, 731 749 &m_LINE); 750 } 732 751 } 733 752 -
CMT/HEAD/source/cmt_language.cxx
r400 r483 79 79 80 80 language.setup_fragments (); 81 language.setup_native_dependencies (); 81 82 } 82 83 } … … 188 189 suffix.erase (0); 189 190 w.substr (21, suffix); 191 } 192 else if (w.substr (0, 22) == "-dependencies_options=") 193 { 194 w.substr (22, language.dependencies_options); 190 195 } 191 196 } … … 273 278 suffixes.clear (); 274 279 extra_output_suffixes.clear (); 280 native_dependencies = false; 281 dependencies_options = ""; 275 282 } 276 283 … … 322 329 } 323 330 331 if (dependencies_options != "") 332 { 333 cout << " -dependencies_options=" << dependencies_options; 334 } 335 324 336 cout << endl; 325 337 } … … 361 373 return (false); 362 374 } 375 376 /*----------------------------------------------------------*/ 377 void Language::setup_native_dependencies () 378 /*----------------------------------------------------------*/ 379 { 380 if (dependencies_options != "") 381 { 382 cmt_string opts (dependencies_options); 383 Symbol::expand (opts); 384 if (opts != "") 385 { 386 native_dependencies = true; 387 } 388 } 389 } -
CMT/HEAD/source/cmt_language.h
r11 r483 36 36 bool operator == (const Language& other) const; 37 37 bool operator != (const Language& other) const; 38 void setup_native_dependencies (); 38 39 39 40 cmt_string m_name; … … 45 46 CmtSystem::cmt_string_vector suffixes; 46 47 CmtSystem::cmt_string_vector extra_output_suffixes; 48 bool native_dependencies; 49 cmt_string dependencies_options; 47 50 48 51 FragmentHandle application; -
CMT/HEAD/src/Makefile.core
r446 r483 109 109 install_echo = $(echo) installing 110 110 install_silent = $(silent) 111 dep_echo = $(echo) generating dependencies 112 dep_silent = $(silent) 111 113 # 112 114 # End of Controlling the verbosity of Make … … 126 128 # if test ! -d $(bin) ; then $(mkdir) -p $(bin) ; fi 127 129 # 130 131 # explicit rule not to remake 132 #${CMTROOT}/src/Makefile.core : ; 133 134 # add to the list of valid suffixes 135 # so that nonterminal match-anything rules will not be considered 136 .SUFFIXES: .make .stamp .cxx -
CMT/HEAD/src/Makefile.header
r462 r483 164 164 # explicit rule not to remake 165 165 ${CMTROOT}/src/Makefile.header : ; 166 ${CMTROOT}/src/Makefile.core : ; -
CMT/HEAD/src/NMakefile.core
r446 r483 110 110 install_echo = $(echo) installing 111 111 install_silent = $(silent) 112 dep_echo = $(echo) generating dependencies 113 dep_silent = $(silent) 112 114 # 113 115 # End of Controlling the verbosity of Make … … 124 126 cmtexe = $(CMTROOT)\$(CMTBIN)\cmt.exe 125 127 126 128 # add to the list of valid suffixes 129 # so that nonterminal match-anything rules will not be considered 130 .SUFFIXES: .make .stamp
Note: See TracChangeset
for help on using the changeset viewer.