#include <cmt_generators.h>
Inheritance diagram for MakeSetupGenerator:
Public Member Functions | |
MakeSetupGenerator () | |
void | build (const cmt_string &package) |
Private Member Functions | |
void | reset () |
Private Attributes | |
FragmentHandle | make_setup_header_fragment |
FragmentHandle | make_setup_fragment |
|
Definition at line 2253 of file cmt_generators.cxx. References make_setup_fragment, make_setup_header_fragment, and FragmentHandle::set().
02254 { 02255 make_setup_header_fragment.set ("make_setup_header"); 02256 make_setup_fragment.set ("make_setup"); 02257 } |
|
Definition at line 2267 of file cmt_generators.cxx. References Cmt::build_nmake(), cmt_string::c_str(), cmt_style, CmtGenerator::commit(), Constituent::constituents(), Constituent::ConstituentVector, FragmentHandle::copy(), Use::discarded, Symbol::expand(), CmtSystem::file_separator(), Use::get_full_path(), Use::get_ordered_uses(), make_setup_fragment, make_setup_header_fragment, mgr_style, Use::prefix, Use::real_path, reset(), cmt_vector< T >::size(), Use::style, and Use::UsePtrVector. Referenced by Generator::build_make_setup().
02268 { 02269 reset (); 02270 02271 m_PACKAGE = package; 02272 02273 cmt_string file_name = "setup."; 02274 02275 if (Cmt::build_nmake ()) 02276 { 02277 file_name += "nmake"; 02278 } 02279 else 02280 { 02281 file_name += "make"; 02282 } 02283 02284 cmt_string new_file_name = file_name; 02285 new_file_name += "new"; 02286 02287 m_output_file = fopen (new_file_name, "wb"); 02288 02289 if (m_output_file != NULL) 02290 { 02291 int number; 02292 02293 const Use::UsePtrVector& uses = Use::get_ordered_uses (); 02294 02295 const Constituent::ConstituentVector& constituents = 02296 Constituent::constituents (); 02297 02298 cmt_string temp; 02299 02300 make_setup_header_fragment.copy (m_output_file, 1, &m_PACKAGE); 02301 02302 for (number = 0; number < uses.size (); number++) 02303 { 02304 const Use* use = uses[number]; 02305 02306 if (use->discarded) continue; 02307 02308 if (use->real_path != "") 02309 { 02310 temp = use->prefix; 02311 temp += "ROOT = "; 02312 temp += use->get_full_path (); 02313 02314 fprintf (m_output_file, "%s\n", temp.c_str()); 02315 } 02316 } 02317 02318 temp = "use_requirements = "; 02319 temp += "requirements "; 02320 02321 for (number = 0; number < uses.size (); number++) 02322 { 02323 const Use* use = uses[number]; 02324 02325 if (use->discarded) continue; 02326 02327 if (use->real_path != "") 02328 { 02329 temp += "$("; 02330 temp += use->prefix; 02331 temp += "ROOT)"; 02332 temp += CmtSystem::file_separator (); 02333 switch (use->style) 02334 { 02335 case cmt_style: 02336 temp += "cmt"; 02337 break; 02338 case mgr_style: 02339 temp += "mgr"; 02340 break; 02341 } 02342 temp += CmtSystem::file_separator (); 02343 temp += "requirements "; 02344 } 02345 } 02346 02347 fprintf (m_output_file, "%s\n", temp.c_str()); 02348 02349 temp = "constituents = $(constituents)"; 02350 Symbol::expand (temp); 02351 02352 fprintf (m_output_file, "%s\n", temp.c_str()); 02353 02354 make_setup_fragment.copy (m_output_file, 1, &m_PACKAGE); 02355 02356 fclose (m_output_file); 02357 02358 //--- Complete the operation -------------- 02359 02360 commit (new_file_name); 02361 } 02362 02363 /* 02364 for option in $* 02365 do 02366 case ${option} in 02367 args-tag=*) 02368 tag=${option} 02369 tag=`echo "${tag}" | sed -e 's/args.tag=//'` 02370 ;; 02371 -tag=*) 02372 tag=args${option} 02373 tag=`echo "${tag}" | sed -e 's/args.tag=//'` 02374 ;; 02375 esac 02376 done 02377 02378 if test "${tag}" = "" ; then 02379 tag=${CMTCONFIG} 02380 fi 02381 02382 build_shell_setup_files ${tag} 02383 02384 now=`date` 02385 02386 */ 02387 } |
|
Reimplemented from CmtGenerator. Definition at line 2259 of file cmt_generators.cxx. References make_setup_fragment, make_setup_header_fragment, FragmentHandle::reset(), and CmtGenerator::reset(). Referenced by build().
02260 { 02261 CmtGenerator::reset (); 02262 02263 make_setup_header_fragment.reset (); 02264 make_setup_fragment.reset (); 02265 } |
|
Definition at line 190 of file cmt_generators.h. Referenced by build(), MakeSetupGenerator(), and reset(). |
|
Definition at line 189 of file cmt_generators.h. Referenced by build(), MakeSetupGenerator(), and reset(). |