mirror of
https://github.com/ApfelTeeSaft/reactos.git
synced 2026-09-02 04:13:34 +00:00
ROS_BUILDNOSTRIP environment variable to control building of non-symbol-stripped executable output files
svn path=/branches/xmlbuildsystem/; revision=14788
This commit is contained in:
@@ -39,6 +39,14 @@
|
||||
# without source code) or no (to not build any map files). The variable
|
||||
# defaults to no.
|
||||
#
|
||||
# ROS_BUILDNOSTRIP
|
||||
# This variable controls if non-symbol-stripped versions are to be built
|
||||
# of executable output files. Non-symbol-stripped executable output files
|
||||
# have .nostrip added to the filename just before the extension. The value
|
||||
# can be either yes (to build non-symbol-stripped versions of executable
|
||||
# output files) or no (to not build non-symbol-stripped versions of
|
||||
# executable output files). The variable defaults to no.
|
||||
#
|
||||
# ROS_RBUILDFLAGS
|
||||
# Pass parameters to rbuild.
|
||||
|
||||
|
||||
@@ -1146,6 +1146,32 @@ MingwModuleHandler::GenerateBuildMapCode ()
|
||||
"endif\n" );
|
||||
}
|
||||
|
||||
void
|
||||
MingwModuleHandler::GenerateBuildNonSymbolStrippedCode ()
|
||||
{
|
||||
fprintf ( fMakefile,
|
||||
"ifeq ($(ROS_BUILDNOSTRIP),yes)\n" );
|
||||
|
||||
string filename = module.GetPath ();
|
||||
string outputFilename = PassThruCacheDirectory (
|
||||
filename,
|
||||
backend->outputDirectory );
|
||||
string nostripFilename = PassThruCacheDirectory (
|
||||
GetBasename ( filename ) + ".nostrip" + GetExtension ( filename ),
|
||||
backend->outputDirectory );
|
||||
CLEAN_FILE ( nostripFilename );
|
||||
|
||||
fprintf ( fMakefile,
|
||||
"\t$(ECHO_CP)\n" );
|
||||
fprintf ( fMakefile,
|
||||
"\t${cp} %s %s 1>$(NUL)\n",
|
||||
outputFilename.c_str (),
|
||||
nostripFilename.c_str () );
|
||||
|
||||
fprintf ( fMakefile,
|
||||
"endif\n" );
|
||||
}
|
||||
|
||||
void
|
||||
MergeStringVector ( const vector<string>& input,
|
||||
vector<string>& output )
|
||||
@@ -1289,6 +1315,8 @@ MingwModuleHandler::GenerateLinkerCommand (
|
||||
|
||||
GenerateBuildMapCode ();
|
||||
|
||||
GenerateBuildNonSymbolStrippedCode ();
|
||||
|
||||
fprintf ( fMakefile,
|
||||
"\t$(ECHO_RSYM)\n" );
|
||||
fprintf ( fMakefile,
|
||||
|
||||
@@ -169,6 +169,7 @@ private:
|
||||
std::string GetDefinitionFilename () const;
|
||||
static std::string RemoveVariables ( std::string path);
|
||||
void GenerateBuildMapCode ();
|
||||
void GenerateBuildNonSymbolStrippedCode ();
|
||||
public:
|
||||
const Module& module;
|
||||
string_list clean_files;
|
||||
|
||||
Reference in New Issue
Block a user