Don't add underscore prefix to amd64 symbols
[reactos.git] / reactos / tools / rbuild / backend / backend.cpp
index dbe975f..61d467e 100644 (file)
@@ -11,9 +11,9 @@
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
  *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 #include "../pch.h"
 
@@ -79,3 +79,48 @@ Backend::Backend ( Project& project,
 Backend::~Backend()
 {
 }
+
+string
+Backend::GetFullPath ( const FileLocation& file ) const
+{
+       string directory;
+       switch ( file.directory )
+       {
+               case SourceDirectory:
+                       directory = "";
+                       break;
+               case IntermediateDirectory:
+                       directory = Environment::GetIntermediatePath ();
+                       break;
+               case OutputDirectory:
+                       directory = Environment::GetOutputPath ();
+                       break;
+               case InstallDirectory:
+                       directory = Environment::GetInstallPath ();
+                       break;
+               default:
+                       throw InvalidOperationException ( __FILE__,
+                                                         __LINE__,
+                                                         "Invalid directory %d.",
+                                                         file.directory );
+       }
+
+       if ( file.relative_path.length () > 0 )
+       {
+               if ( directory.length () > 0 )
+                       directory += sSep;
+               directory += file.relative_path;
+       }
+       return directory;
+}
+
+string
+Backend::GetFullName ( const FileLocation& file ) const
+{
+       string directory = GetFullPath ( file );
+
+       if ( directory.length () > 0 )
+               directory += sSep;
+
+       return directory + file.name;
+}