Changeset 608 in dev
- Timestamp:
- May 16, 2008, 9:40:59 PM (17 years ago)
- Location:
- trunk/ab5.0/abdev
- Files:
-
- 1 added
- 12 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/ab5.0/abdev/BasicCompiler_Common/BasicCompiler.cpp
r527 r608 639 639 lstrcat(tempOutputFileName,temporary); 640 640 lstrcat(tempOutputFileName,temp2); 641 if( compiler.IsS taticLibrary() )641 if( compiler.IsSll() ) 642 642 { 643 643 if( program.IsDebugRun() || compiler.IsDebug() ) -
trunk/ab5.0/abdev/BasicCompiler_Common/Subroutine.cpp
r603 r608 397 397 } 398 398 399 if( !compiler.IsS taticLibrary() )399 if( !compiler.IsSll() ) 400 400 { 401 401 //_System_TypeBase_InitializeUserTypesは最後のほうでコンパイル -
trunk/ab5.0/abdev/BasicCompiler_Common/include/Compiler.h
r537 r608 3 3 class Compiler 4 4 { 5 public:6 // ターゲット7 enum TargetModuleType8 {9 Exe,10 Dll,11 StaticLibrary,12 };13 14 private:15 5 // ビルド成功のフラグ 16 6 bool isBuildSuccessful; … … 20 10 21 11 // モジュール タイプ 22 TargetModuleType targetModuleType;12 ActiveBasic::Common::TargetModuleType::EnumType targetModuleType; 23 13 24 14 // デバッグ ビルドかどうか … … 44 34 : isBuildSuccessful( false ) 45 35 , pObjectModule( new ObjectModule ) 46 , targetModuleType( Exe )36 , targetModuleType( ActiveBasic::Common::TargetModuleType::Exe ) 47 37 , isDebug( false ) 48 38 , isUnicode( false ) … … 124 114 bool IsExe() const 125 115 { 126 if( targetModuleType == Exe )116 if( targetModuleType == ActiveBasic::Common::TargetModuleType::Exe ) 127 117 { 128 118 return true; … … 132 122 bool IsDll() const 133 123 { 134 if( targetModuleType == Dll )124 if( targetModuleType == ActiveBasic::Common::TargetModuleType::Dll ) 135 125 { 136 126 return true; … … 138 128 return false; 139 129 } 140 bool IsStaticLibrary() const 141 { 142 if( targetModuleType == StaticLibrary ) 130 131 // スタティック リンク ライブラリをビルドする? 132 bool IsSll() const 133 { 134 if( targetModuleType == ActiveBasic::Common::TargetModuleType::Sll ) 143 135 { 144 136 return true; … … 146 138 return false; 147 139 } 148 void SetTargetModuleType( TargetModuleType targetModuleType ) 140 141 void SetTargetModuleType( ActiveBasic::Common::TargetModuleType::EnumType targetModuleType ) 149 142 { 150 143 this->targetModuleType = targetModuleType; -
trunk/ab5.0/abdev/BasicCompiler_Common/src/Program.cpp
r519 r608 92 92 { 93 93 // DLLとしてビルド 94 compiler.SetTargetModuleType( Compiler::Dll );94 compiler.SetTargetModuleType( ActiveBasic::Common::TargetModuleType::Dll ); 95 95 } 96 96 else if( cmdLine.GetCommand() == "static_library" ) 97 97 { 98 98 // 静的リンクライブラリとしてビルド 99 compiler.SetTargetModuleType( Compiler::StaticLibrary);99 compiler.SetTargetModuleType( ActiveBasic::Common::TargetModuleType::Sll ); 100 100 } 101 101 else if( cmdLine.GetCommand() == "unicode" ) … … 118 118 // '/' があった場合は '\\' に置換 119 119 Jenga::Common::StringReplace( includeDir, "/", "\\" ); 120 } 121 else if( cmdLine.GetCommand() == "?" || cmdLine.GetCommand() == "help" ) 122 { 123 std::cout << "TODO: ActiveBasic command line help." << std::endl; 120 124 } 121 125 else -
trunk/ab5.0/abdev/ab_common/include/Environment.h
r517 r608 10 10 X86, 11 11 X64, 12 }; 13 }; 14 15 // ターゲット 16 struct TargetModuleType 17 { 18 enum EnumType 19 { 20 Exe = 0, 21 Dll, 22 Sll, 12 23 }; 13 24 }; -
trunk/ab5.0/abdev/abdev/Common.h
r601 r608 589 589 #define MT_EXE 0 //EXEモジュールタイプ 590 590 #define MT_DLL 1 //DLLモジュールタイプ 591 #define MT_SLL 2 //SLLモジュールタイプ 591 592 #define PJ_OP_SOURCE_MASK 0x00FFFFFF 592 593 #define PJ_OP_MMSYSTEM 0x00000001 -
trunk/ab5.0/abdev/abdev/DialogBoxes.cpp
r475 r608 64 64 #define TEXT_DIRECTX "DirectXに対応したアプリケーションを作成します。2Dまたは3Dの描画を高速に行うことができ、ゲームアプリケーションなどの開発に最適です。" 65 65 #define TEXT_DLL "ダイナミック リンク ライブラリ(DLL)を作成します。" 66 #define TEXT_SLL "静的 リンク ライブラリ(lib)を作成します。" 66 67 #else 67 68 //英語 … … 164 165 else if(NewProjectInfo.dwTypeID==IDC_DLL){ 165 166 lstrcpy(buffer+i,"ダイナミック リンク ライブラリ(DLL)を作成します。\r\n\r\n"); 167 i+=lstrlen(buffer+i); 168 lstrcpy(buffer+i,"--- 以下のファイルが生成されます ---\r\n"); 169 i+=lstrlen(buffer+i); 170 sprintf(buffer+i,"%s.pj … プロジェクト ファイル\r\n",NewProjectInfo.name); 171 i+=lstrlen(buffer+i); 172 sprintf(buffer+i,"%s.idx … インデックス ファイル\r\n",NewProjectInfo.name); 173 i+=lstrlen(buffer+i); 174 sprintf(buffer+i,"%s.ab … メイン ソースコード ファイル\r\n",NewProjectInfo.name); 175 i+=lstrlen(buffer+i); 176 sprintf(buffer+i,"%s.wrk … 作業状況の管理用\r\n",NewProjectInfo.name); 177 } 178 else if(NewProjectInfo.dwTypeID==IDC_SLL){ 179 lstrcpy(buffer+i,"静的 リンク ライブラリ(lib)を作成します。\r\n\r\n"); 166 180 i+=lstrlen(buffer+i); 167 181 lstrcpy(buffer+i,"--- 以下のファイルが生成されます ---\r\n"); … … 426 440 427 441 SetDlgItemText(hwnd,IDC_HELPTEXT_OFBASE,TEXT_DLL); 442 EnableWindow(GetDlgItem(hwnd,IDC_SHOWHELLOWORLD),0); 443 return 1; 444 case IDC_SLL: 445 AppImage_ShowOrHide(hwnd,LOWORD(wParam)); 446 447 SetDlgItemText(hwnd,IDC_HELPTEXT_OFBASE,TEXT_SLL); 428 448 EnableWindow(GetDlgItem(hwnd,IDC_SHOWHELLOWORLD),0); 429 449 return 1; … … 468 488 else if(SendDlgItemMessage(hwnd,IDC_DLL,BM_GETCHECK,0,0)) 469 489 NewProjectInfo.dwTypeID=IDC_DLL; 490 else if(SendDlgItemMessage(hwnd,IDC_SLL,BM_GETCHECK,0,0)) 491 NewProjectInfo.dwTypeID=IDC_SLL; 470 492 471 493 //"Hello World!"を表示するか -
trunk/ab5.0/abdev/abdev/ProjectControl.cpp
r477 r608 748 748 ////////////////////////////////////// 749 749 750 // 出力先拡張子 751 const std::string outputFileExt 752 = ( NewProjectInfo.dwTypeID == IDC_DLL ) ? ".dll" 753 : ( NewProjectInfo.dwTypeID == IDC_SLL ) ? ".lib" 754 : ".exe"; 755 750 756 //先頭の注釈 751 757 lstrcpy(buffer,"\' ActiveBasic Project file.\r\n\r\n"); … … 757 763 758 764 //モジュールタイプ(EXEならば0、DLLならば1) 759 if(NewProjectInfo.dwTypeID==IDC_DLL) lstrcpy(buffer+i,"#MODULETYPE=1\r\n\r\n"); 760 else lstrcpy(buffer+i,"#MODULETYPE=0\r\n\r\n"); 765 ActiveBasic::Common::TargetModuleType::EnumType moduleType 766 = ( NewProjectInfo.dwTypeID == IDC_DLL ) ? ActiveBasic::Common::TargetModuleType::Dll 767 : ( NewProjectInfo.dwTypeID == IDC_SLL ) ? ActiveBasic::Common::TargetModuleType::Sll 768 : ActiveBasic::Common::TargetModuleType::Exe; 769 lstrcpy(buffer+i,( (std::string)"#MODULETYPE=" + Jenga::Common::ToString( static_cast<int>(moduleType) ) + "\r\n\r\n" ).c_str()); 761 770 i+=lstrlen(buffer+i); 762 771 … … 780 789 781 790 //出力先(Release) 782 if(NewProjectInfo.dwTypeID==IDC_DLL) 783 sprintf(buffer+i,"#OUTPUT_RELEASE=.\\%s.dll\r\n\r\n",NewProjectInfo.name); 784 else sprintf(buffer+i,"#OUTPUT_RELEASE=.\\%s.exe\r\n\r\n",NewProjectInfo.name); 791 sprintf(buffer+i,"#OUTPUT_RELEASE=.\\%s%s\r\n\r\n",NewProjectInfo.name, outputFileExt.c_str()); 785 792 i+=lstrlen(buffer+i); 786 793 787 794 //出力先(Debug) 788 if(NewProjectInfo.dwTypeID==IDC_DLL) 789 sprintf(buffer+i,"#OUTPUT_DEBUG=.\\%s.dll\r\n\r\n",NewProjectInfo.name); 790 else sprintf(buffer+i,"#OUTPUT_DEBUG=.\\%s_debug.exe\r\n\r\n",NewProjectInfo.name); 795 sprintf(buffer+i,"#OUTPUT_DEBUG=.\\%s_debug%s\r\n\r\n",NewProjectInfo.name, outputFileExt.c_str()); 791 796 i+=lstrlen(buffer+i); 792 797 … … 948 953 i+=lstrlen(buffer+i); 949 954 } 955 else if( NewProjectInfo.dwTypeID == IDC_SLL ) 956 { 957 buffer[0] = 0; 958 } 950 959 951 960 //保存 … … 958 967 else{ 959 968 sprintf(temporary,"%s%s.ab",dir,NewProjectInfo.name); 960 if(!WriteBuffer(temporary,buffer, i)) return;969 if(!WriteBuffer(temporary,buffer,lstrlen(buffer))) return; 961 970 } 962 971 -
trunk/ab5.0/abdev/abdev/abdev.vcproj
r494 r608 2748 2748 <File 2749 2749 RelativePath=".\include\Program.h" 2750 > 2751 </File> 2752 <File 2753 RelativePath=".\include\ProjectManager.h" 2750 2754 > 2751 2755 </File> -
trunk/ab5.0/abdev/abdev/src/MainFrame.cpp
r535 r608 958 958 sprintf(temporary,"\"%s\" \"%s\" /run /wnd:%08x",temp2,temp3,m_hWnd); 959 959 960 // DLLオプション960 // DLLオプション 961 961 if(ProjectInfo.dwModuleType==MT_DLL) lstrcat(temporary," /dll"); 962 963 // SLLオプション 964 if( ProjectInfo.dwModuleType == MT_SLL ) lstrcat( temporary, " /static_library" ); 962 965 963 966 //Unicodeオプション -
trunk/ab5.0/abdev/abdev/stdafx.h
r519 r608 54 54 #include <MainFrame.h> 55 55 #include <Program.h> 56 #include <ProjectManager.h> -
trunk/ab5.0/abdev/compiler_x86/MakePeHdr.cpp
r605 r608 439 439 compiler.codeGenerator.op_call( pSub_System_GlobalArea ); 440 440 441 if( !compiler.IsS taticLibrary() )441 if( !compiler.IsSll() ) 442 442 { 443 443 /////////////////////////////////////// … … 506 506 507 507 508 if( compiler.IsS taticLibrary() )508 if( compiler.IsSll() ) 509 509 { 510 510 // 静的リンクライブラリ
Note:
See TracChangeset
for help on using the changeset viewer.