From 8896e371aa7fd74442129eb8d8464c857e69ddad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Herv=C3=A9=20Poussineau?= Date: Tue, 6 Nov 2007 12:36:16 +0000 Subject: [PATCH] Don't hardcode bootsector output name in livecd target Revert r30199 svn path=/trunk/; revision=30218 --- .../rbuild/backend/mingw/modulehandler.cpp | 23 +++++++++---------- reactos/tools/rbuild/module.cpp | 2 +- 2 files changed, 12 insertions(+), 13 deletions(-) diff --git a/reactos/tools/rbuild/backend/mingw/modulehandler.cpp b/reactos/tools/rbuild/backend/mingw/modulehandler.cpp index fea4533d7ca..a630b41e4e2 100644 --- a/reactos/tools/rbuild/backend/mingw/modulehandler.cpp +++ b/reactos/tools/rbuild/backend/mingw/modulehandler.cpp @@ -497,7 +497,10 @@ MingwModuleHandler::GetObjectFilename ( DirectoryLocation destination_directory; string newExtension; string extension = GetExtension ( *sourceFile ); - if ( extension == ".rc" || extension == ".RC" ) + + if ( module.type == BootSector ) + return new FileLocation ( *module.output ); + else if ( extension == ".rc" || extension == ".RC" ) newExtension = "_" + module.name + ".coff"; else if ( extension == ".spec" || extension == ".SPEC" ) newExtension = ".stubs.o"; @@ -3655,21 +3658,17 @@ MingwLiveIsoModuleHandler::GenerateLiveIsoModuleTarget () string livecdDirectory = module.name; FileLocation livecd ( OutputDirectory, livecdDirectory, "" ); - string bootloader; string IsoName; + const Module* bootModule; + bootModule = module.project.LocateModule ( module.name == "livecdregtest" + ? "isobtrt" + : "isoboot" ); + const FileLocation *isoboot = bootModule->output; if (module.name == "livecdregtest") - { - bootloader = "isobtrt_isobtrt.o"; IsoName = "ReactOS-LiveCD-RegTest.iso"; - } else - { - bootloader = "isoboot_isoboot.o"; IsoName = "ReactOS-LiveCD.iso"; - } - - FileLocation isoboot ( OutputDirectory, "boot" + sSep + "freeldr" + sSep + "bootsect", bootloader ); string reactosDirectory = "reactos"; string livecdReactosNoFixup = livecdDirectory + sSep + reactosDirectory; @@ -3683,7 +3682,7 @@ MingwLiveIsoModuleHandler::GenerateLiveIsoModuleTarget () fprintf ( fMakefile, "%s: all %s %s $(MKHIVE_TARGET) $(CDMAKE_TARGET)\n", module.name.c_str (), - backend->GetFullName ( isoboot) .c_str (), + backend->GetFullName ( *isoboot) .c_str (), backend->GetFullPath ( livecdReactos ).c_str () ); OutputModuleCopyCommands ( livecdDirectory, reactosDirectory ); @@ -3695,7 +3694,7 @@ MingwLiveIsoModuleHandler::GenerateLiveIsoModuleTarget () fprintf ( fMakefile, "\t$(ECHO_CDMAKE)\n" ); fprintf ( fMakefile, "\t$(Q)$(CDMAKE_TARGET) -v -m -j -b %s %s REACTOS %s\n", - backend->GetFullName( isoboot ).c_str (), + backend->GetFullName( *isoboot ).c_str (), backend->GetFullPath ( livecd ).c_str (), IsoName.c_str() ); fprintf ( fMakefile, diff --git a/reactos/tools/rbuild/module.cpp b/reactos/tools/rbuild/module.cpp index 34305d1d114..dd49f7c7d78 100644 --- a/reactos/tools/rbuild/module.cpp +++ b/reactos/tools/rbuild/module.cpp @@ -991,7 +991,7 @@ Module::GetDefaultModuleExtension () const case BootLoader: return ".sys"; case BootSector: - return "_" + this->name + ".o"; + return ".o"; case Iso: case LiveIso: case IsoRegTest: