<?xml version="1.0"?>
<!DOCTYPE project SYSTEM "tools/rbuild/project.dtd">
--<project name="ReactOS" makefile="makefile-amd64.auto" xmlns:xi="http://www.w3.org/2001/XInclude">
++<project name="ReactOS" makefile="makefile-amd64.auto" xmlns:xi="http://www.w3.org/2001/XInclude" allowwarnings="true">
<xi:include href="config-amd64.rbuild">
<xi:fallback>
<xi:include href="config-amd64.template.rbuild" />
<compilerflag>-ftracer</compilerflag>
<compilerflag>-momit-leaf-frame-pointer</compilerflag>
</if>
++ <compilerflag>-fms-extensions</compilerflag>
<compilerflag>-mpreferred-stack-boundary=4</compilerflag>
<compilerflag compiler="midl">-m64 --win64</compilerflag>
<!-- compilerflag compiler="cc,cxx">-gstabs+</compilerflag -->
<!-- compilerflag compiler="as">-gstabs+</compilerflag -->
<compilerflag>-U_X86_</compilerflag>
<compilerflag>-Wno-format</compilerflag>
++ <compilerflag>-fno-leading-underscore</compilerflag>
</group>
<group linkerset="ld">
<linkerflag>-section-alignment=0x1000</linkerflag>
<linkerflag>--unique=.eh_frame</linkerflag>
<linkerflag>-static</linkerflag>
++ <linkerflag>-fno-leading-underscore</linkerflag>
++ <linkerflag>--exclude-all-symbols</linkerflag>
</group>
<if property="USERMODE" value="1">
case MicrosoftLink: return "mslink";
default: assert ( false );
}
- return "";
}
+
+ void
+ Project::GenerateInstallerFileList()
+ {
+ std::map<std::string, Module*> Result;
+ std::map<std::string, Module*>::iterator i;
+ std::string buffer = "";
+
+ printf ( "Generating reactos.dff..." );
+ std::string path = Environment::GetIntermediatePath();
+ path += sSep + "reactos.dff";
+ FILE* f = fopen(path.c_str(), "wb");
+
+ buffer = "; Main ReactOS package\r\n"
+ ".Set DiskLabelTemplate=\"ReactOS\" ; Label of disk\r\n"
+ ".Set CabinetNameTemplate=\"reactos.cab\" ; reactos.cab\r\n"
+ ".Set InfFileName=\"reactos.inf\" ; reactos.inf\r\n"
+ ".InfBegin\r\n"
+ "[Version]\r\n"
+ "Signature = \"$ReactOS$\"\r\n"
+ "[Directories]\r\n"
+ "1 = system32\r\n"
+ "2 = system32\\drivers\r\n"
+ "3 = Fonts\r\n"
+ "4 =\r\n"
+ "5 = system32\\drivers\\etc\r\n"
+ "6 = inf\r\n"
+ "7 = bin\r\n"
+ "8 = media\r\n"
+ ".InfEnd\r\n"
+ "; Contents of disk\r\n"
+ ".InfBegin\r\n"
+ "[SourceFiles]\r\n"
+ ".InfEnd\r\n";
+ fprintf(f,buffer.c_str());
+ for(i = modules.begin(); i != modules.end(); ++i)
+ {
+ buffer = "";
+ if(i->second->install)
+ {
+ buffer = i->second->output->relative_path + sSep;
+ buffer += i->second->output->name;
+ if(i->second->installbase == "system32")
+ buffer += "\t1";
+ if(i->second->installbase == "system32/drivers")
+ buffer += "\t2";
+ else if(i->second->installbase == "fonts")
+ buffer += "\t3";
+ else if(i->second->installbase == "")
+ buffer += "\t4";
+ else if(i->second->installbase == "system32/drivers/etc")
+ buffer += "\t5";
+ else if(i->second->installbase == "inf")
+ buffer += "\t6";
+ else if(i->second->installbase == "bin")
+ buffer += "\t7";
+ else if(i->second->installbase == "media")
+ buffer += "\t8";
+
+ fprintf(f, "%s\r\n",buffer.c_str());
+ }
+ }
+
+ for(size_t j = 0; j< installfiles.size(); j++)
+ {
+ buffer = "";
+ buffer = installfiles[j]->source->relative_path + sSep;
+ buffer += installfiles[j]->target->name;
+ if(installfiles[j]->installbase == "system32")
+ buffer += "\t1";
+ if(installfiles[j]->installbase == "system32/drivers")
+ buffer += "\t2";
+ else if(installfiles[j]->installbase == "fonts")
+ buffer += "\t3";
+ else if(installfiles[j]->installbase == "")
+ buffer += "\t4";
+ else if(installfiles[j]->installbase == "system32/drivers/etc")
+ buffer += "\t5";
+ else if(installfiles[j]->installbase == "inf")
+ buffer += "\t6";
+ else if(installfiles[j]->installbase == "bin")
+ buffer += "\t7";
+ else if(installfiles[j]->installbase == "media")
+ buffer += "\t8";
+
+
+ fprintf(f,"%s\r\n",buffer.c_str());
+ }
+
+ printf ( "done\n" );
+
+ }