"ifneq ($(ROS_GENERATE_RSYM),no)\n" );
fprintf ( fMakefile,
"\t$(ECHO_RSYM)\n" );
- // FIXME! workaround until rsym can extract line numbers from DWARF
- fprintf ( fMakefile,
- "\t$(Q)${objcopy} -R .debug_abbrev -R .debug_aranges -R .debug_frame -R .debug_info -R .debug_line -R .debug_pubnames -R .debug_macinfo -R .debug_str -R .debug_loc -R .debug_pubtypes -R .debug_ranges -R .debug_static_func -R .debug_static_vars -R .debug_types -R .debug_weaknames $@\n\n" );
fprintf ( fMakefile,
"\t$(Q)$(RSYM_TARGET) $@ $@\n\n" );
fprintf ( fMakefile,
linkerflags );
}
+ if ( IsStaticLibrary ( module ) && module.isStartupLib )
+ {
+ fprintf ( fMakefile,
+ "%s += -Wno-main\n\n",
+ cflagsMacro.c_str () );
+ fprintf ( fMakefile,
+ "%s += -Wno-main\n\n",
+ cxxflagsMacro.c_str () );
+ }
+
fprintf ( fMakefile, "\n\n" );
// future references to the macros will be to get their values
name = e.GetAttribute ( "property", true );
assert( name );
const Property *property = project.LookupProperty( name->value );
- const string *PropertyValue;
- const string EmptyString;
-
- if (property)
- {
- PropertyValue = &property->value;
- }
- else
+ if ( !property )
{
- // Property does not exist, treat it as being empty
- PropertyValue = &EmptyString;
+ // Property not found
+ throw InvalidOperationException ( __FILE__,
+ __LINE__,
+ "Test on unknown property '%s' at %s",
+ name->value.c_str (), e.location.c_str () );
}
const XMLAttribute* value;
assert( value );
bool negate = ( e.name == "ifnot" );
- bool equality = ( *PropertyValue == value->value );
+ bool equality = ( property->value == value->value );
if ( equality == negate )
{
// Failed, skip this element
name = e.GetAttribute ( "property", true );
assert( name );
const Property *property = LookupProperty( name->value );
- const string *PropertyValue;
- const string EmptyString;
-
- if (property)
- {
- PropertyValue = &property->value;
- }
- else
+ if ( !property )
{
- // Property does not exist, treat it as being empty
- PropertyValue = &EmptyString;
+ // Property not found
+ throw InvalidOperationException ( __FILE__,
+ __LINE__,
+ "Test on unknown property '%s' at %s",
+ name->value.c_str (), e.location.c_str () );
}
const XMLAttribute* value;
assert( value );
bool negate = ( e.name == "ifnot" );
- bool equality = ( *PropertyValue == value->value );
+ bool equality = ( property->value == value->value );
if ( equality == negate )
{
// Failed, skip this element