Changeset 315 in dev for trunk/abdev/BasicCompiler_Common/MakeExe.cpp
- Timestamp:
- Sep 5, 2007, 3:11:25 AM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/abdev/BasicCompiler_Common/MakeExe.cpp
r308 r315 137 137 // 静的リンクライブラリをロードする 138 138 ///////////////////////////////////////////////////////////////// 139 140 if( !compiler.IsCore() )141 139 { 142 // コアモジュールをロードする 143 extern BOOL bDebugCompile; 144 extern char szIncludeDir[MAX_PATH]; 145 146 const char *coreFileName = "core.lib"; 147 if( bDebugCompile ) 140 bool isSuccessfulLoadStaticLinkLibrary = true; 141 if( !compiler.IsCore() ) 148 142 { 149 coreFileName = "cored.lib"; 150 } 151 152 char coreFilePath[MAX_PATH]; 143 // コアモジュールをロードする 144 extern BOOL bDebugCompile; 145 extern char szIncludeDir[MAX_PATH]; 146 147 const char *coreFileName = "core.lib"; 148 if( bDebugCompile ) 149 { 150 coreFileName = "cored.lib"; 151 } 152 153 char coreFilePath[MAX_PATH]; 153 154 #ifdef _AMD64_ 154 sprintf( coreFilePath, "..\\lib\\x64\\%s", coreFileName );155 sprintf( coreFilePath, "..\\lib\\x64\\%s", coreFileName ); 155 156 #else 156 sprintf( coreFilePath, "..\\lib\\%s", coreFileName );157 sprintf( coreFilePath, "..\\lib\\%s", coreFileName ); 157 158 #endif 158 GetFullPath( coreFilePath, szIncludeDir ); 159 160 compiler.staticLibraries.push_back( new ObjectModule() ); 161 compiler.staticLibraries.back()->Read( coreFilePath ); 162 163 Jenga::Common::Path path( coreFilePath ); 164 CompileMessage( ((string)"\"" + path.GetFileName() + path.GetExt() + "\" を読み込みました。").c_str() ); 165 } 166 167 BOOST_FOREACH( const std::string &filePath, compiler.staticLibraryFilePaths ) 168 { 169 compiler.staticLibraries.push_back( new ObjectModule() ); 170 compiler.staticLibraries.back()->Read( filePath ); 171 172 Jenga::Common::Path path( filePath ); 173 CompileMessage( ((string)"\"" + path.GetFileName() + path.GetExt() + "\" を読み込みました。").c_str() ); 159 GetFullPath( coreFilePath, szIncludeDir ); 160 161 Jenga::Common::Path path( coreFilePath ); 162 if( path.IsExistFile() ) 163 { 164 compiler.staticLibraries.push_back( new ObjectModule() ); 165 if( compiler.staticLibraries.back()->Read( coreFilePath ) ) 166 { 167 CompileMessage( ((string)"\"" + path.GetFileName() + path.GetExt() + "\" を読み込みました。").c_str() ); 168 } 169 else 170 { 171 CompileMessage( ((string)"\"" + path.GetFileName() + path.GetExt() + "\" ファイルが壊れています。").c_str() ); 172 isSuccessfulLoadStaticLinkLibrary = false; 173 } 174 } 175 else 176 { 177 CompileMessage( ((string)"\"" + path.GetFileName() + path.GetExt() + "\" ファイルが存在しません。").c_str() ); 178 isSuccessfulLoadStaticLinkLibrary = false; 179 } 180 } 181 182 BOOST_FOREACH( const std::string &filePath, compiler.staticLibraryFilePaths ) 183 { 184 Jenga::Common::Path path( filePath ); 185 if( path.IsExistFile() ) 186 { 187 compiler.staticLibraries.push_back( new ObjectModule() ); 188 if( compiler.staticLibraries.back()->Read( filePath ) ) 189 { 190 CompileMessage( ((string)"\"" + path.GetFileName() + path.GetExt() + "\" を読み込みました。").c_str() ); 191 } 192 else 193 { 194 CompileMessage( ((string)"\"" + path.GetFileName() + path.GetExt() + "\" ファイルが壊れています。").c_str() ); 195 isSuccessfulLoadStaticLinkLibrary = false; 196 } 197 } 198 else 199 { 200 CompileMessage( ((string)"\"" + path.GetFileName() + path.GetExt() + "\" ファイルが存在しません。").c_str() ); 201 isSuccessfulLoadStaticLinkLibrary = false; 202 } 203 } 204 205 if( !isSuccessfulLoadStaticLinkLibrary ) 206 { 207 // 静的リンクライブラリのロードに失敗したとき 208 goto EndCompile; 209 } 174 210 } 175 211
Note:
See TracChangeset
for help on using the changeset viewer.