Changeset 294 in dev for trunk/abdev/BasicCompiler_Common
- Timestamp:
- Aug 22, 2007, 11:23:28 PM (17 years ago)
- Location:
- trunk/abdev/BasicCompiler_Common
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/abdev/BasicCompiler_Common/BasicCompiler.cpp
r279 r294 778 778 } 779 779 780 //インクルードディレクトリが指定されなかったとき 781 if(szIncludeDir[0]=='\0'){ 782 lstrcpy(szIncludeDir,".\\Include\\"); 783 } 784 785 //インクルードディレクトリを絶対パスに変更 786 GetFullPath(szIncludeDir,(Jenga::Common::Environment::GetAppDir()+"\\").c_str()); 780 { 781 // カレントディレクトリを取得 782 char currentDirPath[MAX_PATH]; 783 GetCurrentDirectory( MAX_PATH, currentDirPath ); 784 if( currentDirPath[lstrlen(currentDirPath)-1] != '\\' ) 785 { 786 lstrcat( currentDirPath, "\\" ); 787 } 788 789 // インクルードディレクトリが指定されなかったとき 790 if(szIncludeDir[0]=='\0'){ 791 lstrcpy(szIncludeDir,".\\Include\\"); 792 793 // インクルードディレクトリを絶対パスに変更 794 GetFullPath(szIncludeDir,(Jenga::Common::Environment::GetAppDir()+"\\").c_str()); 795 } 796 else 797 { 798 // インクルードディレクトリを絶対パスに変更 799 GetFullPath(szIncludeDir,currentDirPath); 800 } 801 802 // ソースファイル名を絶対パスに変換 803 GetFullPath(SourceFileName,currentDirPath); 804 805 // 出力ファイル名を絶対パスに変換 806 GetFullPath(OutputFileName,currentDirPath); 807 } 787 808 788 809 if( compiler.IsDll() ){ -
trunk/abdev/BasicCompiler_Common/Intermediate_Step1.cpp
r287 r294 1 1 #include "stdafx.h" 2 3 #include <jenga/include/common/Path.h>4 2 5 3 #include <jenga/include/smoothie/Smoothie.h> … … 256 254 compiler.staticLibraryFilePaths.push_back( temporary ); 257 255 258 compiler.staticLibraries.push_back( new ObjectModule() ); 259 260 Jenga::Common::Path path( temporary ); 261 CompileMessage( ((string)"\"" + path.GetFileName() + path.GetExt() + "\" を読み込みました。").c_str() ); 262 compiler.staticLibraries.back()->Read( temporary ); 256 for(;;i2++){ 257 if(basbuf[i2]=='\n'||basbuf[i2]=='\0') break; 258 } 259 SlideString(basbuf+i2,i-i2); 260 } 261 else if( lstrcmpi( temporary, "_core" ) == 0 ) 262 { 263 // #_core 264 // コアモジュール 265 compiler.SetCoreMark( true ); 263 266 264 267 for(;;i2++){ -
trunk/abdev/BasicCompiler_Common/MakeExe.cpp
r280 r294 2 2 3 3 #include <jenga/include/smoothie/Smoothie.h> 4 #include <jenga/include/common/Path.h> 4 5 5 6 #include <Compiler.h> … … 130 131 131 132 StepCompileProgress(); 133 134 135 ///////////////////////////////////////////////////////////////// 136 // 静的リンクライブラリをロードする 137 ///////////////////////////////////////////////////////////////// 138 139 if( !compiler.IsCore() ) 140 { 141 // コアモジュールをロードする 142 extern BOOL bDebugCompile; 143 extern char szIncludeDir[MAX_PATH]; 144 145 const char *coreFileName = "core.lib"; 146 if( bDebugCompile ) 147 { 148 coreFileName = "cored.lib"; 149 } 150 151 char coreFilePath[MAX_PATH]; 152 sprintf( coreFilePath, "..\\lib\\%s", coreFileName ); 153 GetFullPath( coreFilePath, szIncludeDir ); 154 155 compiler.staticLibraries.push_back( new ObjectModule() ); 156 compiler.staticLibraries.back()->Read( coreFilePath ); 157 } 158 159 BOOST_FOREACH( const std::string &filePath, compiler.staticLibraryFilePaths ) 160 { 161 compiler.staticLibraries.push_back( new ObjectModule() ); 162 compiler.staticLibraries.back()->Read( filePath ); 163 164 Jenga::Common::Path path( filePath ); 165 CompileMessage( ((string)"\"" + path.GetFileName() + path.GetExt() + "\" を読み込みました。").c_str() ); 166 } 132 167 133 168 -
trunk/abdev/BasicCompiler_Common/include/Compiler.h
r279 r294 24 24 , pNowObjectModule( pObjectModule ) 25 25 , targetModuleType( Exe ) 26 , isCore( false ) 26 27 { 27 28 } … … 110 111 111 112 113 // コアモジュールかどうか 114 bool isCore; 115 void SetCoreMark( bool isCore ) 116 { 117 this->isCore = isCore; 118 } 119 bool IsCore() const 120 { 121 return isCore; 122 } 123 124 112 125 static bool StringToType( const std::string &typeName, Type &type ); 113 126 static const std::string TypeToString( const Type &type ); -
trunk/abdev/BasicCompiler_Common/src/Source.cpp
r290 r294 815 815 816 816 // basic.sbpをインクルード 817 const char *headCode = "#include <basic.sbp>\n";818 //const char *headCode = "\n";817 //const char *headCode = "#include <basic.sbp>\n"; 818 const char *headCode = ""; 819 819 Realloc( length + lstrlen(headCode) ); 820 820 Text::SlideString( buffer, lstrlen(headCode) );
Note:
See TracChangeset
for help on using the changeset viewer.