Changeset 486 for CMT/HEAD


Ignore:
Timestamp:
Dec 17, 2008, 12:33:52 PM (15 years ago)
Author:
rybkin
Message:

See C.L. 381

Location:
CMT/HEAD
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • CMT/HEAD/ChangeLog

    r485 r486  
     12008-12-17    <rybkin@lal.in2p3.fr> 381
     2       
     3        * source/cmt_language.h: In class Language, replace the members
     4        dependencies_options, native_dependencies with m_dependencies_options,
     5        m_native_dependencies and make them private, introduce member functions
     6        to retrieve the values and to setup m_native_dependencies member on demand
     7        for the language(s) that is/are actually used (rather than for all known)
     8        * source/cmt_language.cxx: Implement the introduced functions
     9        dependencies_options and native_dependencies
     10        * source/cmt_generators.cxx: Make use of Language::dependencies_options ()
     11        and Language::native_dependencies () functions
     12        * source/cmt_generator.cxx: In function CmtGenerator::fill_names_outputs,
     13        replace parts of the sources paths (m_LINE) with standard macros, if
     14        possible
     15        * mgr/fragments/document_header: Improve diagnostic messages by using the
     16        standard macros
     17       
    1182008-12-15    <rybkin@lal.in2p3.fr> 380
    219       
  • CMT/HEAD/mgr/fragments/document_header

    r11 r486  
    44
    55${CONSTITUENT} :: ${OBJS}
    6         @/bin/echo "------> ${CONSTITUENT} ok"
     6        $(echo) "${CONSTITUENT} ok"
    77
    88#-- end of document_header ------
  • CMT/HEAD/source/cmt_generator.cxx

    r483 r486  
    353353        }
    354354    }
     355
     356  filter_path (m_LINE.value);
    355357}
    356358
  • CMT/HEAD/source/cmt_generators.cxx

    r483 r486  
    326326      preproc = language.preprocessor_command;
    327327      fragment = (is_library) ? &(language.library) : &(language.application);
    328       m_DEPENDENCIESOPTS = language.dependencies_options;
     328      m_DEPENDENCIESOPTS = language.dependencies_options ();
    329329    }
    330330  else
     
    358358
    359359  filter_path (m_FULLNAME.value);
    360   //  filter_path (m_LINE.value);
    361360
    362361  CmtSystem::get_suffix (name, m_FILESUFFIX.value);
     
    724723      const SourceFile& file = m_source_files[i];
    725724      Language& language = file.language ();
    726       if (!language.native_dependencies)
     725      if (language == Language::null () || !language.native_dependencies ())
    727726        {
    728727          need_dependencies = true;
  • CMT/HEAD/source/cmt_language.cxx

    r483 r486  
    7979
    8080      language.setup_fragments ();
    81       language.setup_native_dependencies ();
    8281    }
    8382}
     
    192191      else if (w.substr (0, 22) == "-dependencies_options=")
    193192        {
    194           w.substr (22, language.dependencies_options);
     193          w.substr (22, language.m_dependencies_options);
    195194        }
    196195    }
     
    278277  suffixes.clear ();
    279278  extra_output_suffixes.clear ();
    280   native_dependencies = false;
    281   dependencies_options = "";
     279  m_native_dependencies = false;
     280  m_dependencies_options = "none";
     281  m_native_dependencies_set = false;
    282282}
    283283
     
    329329    }
    330330
    331   if (dependencies_options != "")
    332     {
    333       cout << " -dependencies_options=" << dependencies_options;
     331  if (m_dependencies_options != "none")
     332    {
     333      cout << " -dependencies_options=" << m_dependencies_options;
    334334    }
    335335
     
    375375
    376376/*----------------------------------------------------------*/
     377bool Language::native_dependencies ()
     378  /*----------------------------------------------------------*/
     379{
     380  setup_native_dependencies ();
     381  return m_native_dependencies;
     382}
     383
     384/*----------------------------------------------------------*/
     385const cmt_string& Language::dependencies_options () const
     386  /*----------------------------------------------------------*/
     387{
     388  static cmt_string null_string;
     389
     390  return m_dependencies_options == "none" ? null_string : m_dependencies_options;
     391}
     392
     393/*----------------------------------------------------------*/
    377394void Language::setup_native_dependencies ()
    378395  /*----------------------------------------------------------*/
    379396{
    380   if (dependencies_options != "")
    381     {
    382       cmt_string opts (dependencies_options);
     397  if (m_native_dependencies_set) return;
     398  m_native_dependencies_set = true;
     399
     400  if (m_dependencies_options != "none")
     401    {
     402      cmt_string opts (m_dependencies_options);
    383403      Symbol::expand (opts);
    384404      if (opts != "")
    385405        {
    386           native_dependencies = true;
     406          m_native_dependencies = true;
    387407        }
    388     }
    389 }
     408      else
     409        {
     410          m_native_dependencies = false;
     411        }
     412    }
     413  else
     414    {
     415      m_native_dependencies = false;
     416    }
     417
     418  return;
     419}
  • CMT/HEAD/source/cmt_language.h

    r483 r486  
    3636  bool operator == (const Language& other) const;
    3737  bool operator != (const Language& other) const;
    38   void setup_native_dependencies ();
     38  bool native_dependencies ();
     39  const cmt_string& dependencies_options () const;
    3940
    4041  cmt_string m_name;
     
    4647  CmtSystem::cmt_string_vector suffixes;
    4748  CmtSystem::cmt_string_vector extra_output_suffixes;
    48   bool native_dependencies;
    49   cmt_string dependencies_options;
    5049
    5150  FragmentHandle application;
    5251  FragmentHandle library;
     52
     53private:
     54  void setup_native_dependencies ();
     55
     56  bool m_native_dependencies;
     57  cmt_string m_dependencies_options;
     58  bool m_native_dependencies_set;
    5359};
    5460
Note: See TracChangeset for help on using the changeset viewer.