ROS_BUILDNOSTRIP environment variable to control building of
non-symbol-stripped executable output files
Modified: branches/xmlbuildsystem/reactos/Makefile
Modified:
branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/modulehandler
.cpp
Modified:
branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/modulehandler
.h
_____
Modified: branches/xmlbuildsystem/reactos/Makefile
--- branches/xmlbuildsystem/reactos/Makefile 2005-04-23 18:17:11 UTC
(rev 14787)
+++ branches/xmlbuildsystem/reactos/Makefile 2005-04-23 18:41:02 UTC
(rev 14788)
@@ -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.
_____
Modified:
branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/modulehandler
.cpp
---
branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/modulehandler
.cpp 2005-04-23 18:17:11 UTC (rev 14787)
+++
branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/modulehandler
.cpp 2005-04-23 18:41:02 UTC (rev 14788)
@@ -1147,6 +1147,32 @@
}
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 @@
GenerateBuildMapCode ();
+ GenerateBuildNonSymbolStrippedCode ();
+
fprintf ( fMakefile,
"\t$(ECHO_RSYM)\n" );
fprintf ( fMakefile,
_____
Modified:
branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/modulehandler
.h
---
branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/modulehandler
.h 2005-04-23 18:17:11 UTC (rev 14787)
+++
branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/modulehandler
.h 2005-04-23 18:41:02 UTC (rev 14788)
@@ -169,6 +169,7 @@
std::string GetDefinitionFilename () const;
static std::string RemoveVariables ( std::string path);
void GenerateBuildMapCode ();
+ void GenerateBuildNonSymbolStrippedCode ();
public:
const Module& module;
string_list clean_files;