Launcher.st
changeset 1909 48e4c47b8cc7
parent 1908 a26d18691237
child 1910 ff7233dcd313
equal deleted inserted replaced
1908:a26d18691237 1909:48e4c47b8cc7
  2806      catchMethodRedefs catchClassRedefs keepSourceOptions keepSource  
  2806      catchMethodRedefs catchClassRedefs keepSourceOptions keepSource  
  2807      constantFoldingOptions constantFolding justInTimeCompilation 
  2807      constantFoldingOptions constantFolding justInTimeCompilation 
  2808      warnEnabler check component oldIndent t supportsJustInTimeCompilation y
  2808      warnEnabler check component oldIndent t supportsJustInTimeCompilation y
  2809      y2 fullDebugSupport yMax
  2809      y2 fullDebugSupport yMax
  2810      compileLazy loadBinaries canLoadBinaries strings idx thisIsADemoVersion
  2810      compileLazy loadBinaries canLoadBinaries strings idx thisIsADemoVersion
  2811      resources|
  2811      resources stcSetupButt|
  2812 
  2812 
  2813     resources := requestor class classResources.
  2813     resources := requestor class classResources.
  2814 
  2814 
  2815     canLoadBinaries := ObjectFileLoader notNil and:[ObjectFileLoader canLoadObjectFiles].
  2815     canLoadBinaries := ObjectFileLoader notNil and:[ObjectFileLoader canLoadObjectFiles].
  2816     loadBinaries := Smalltalk loadBinaries asValue.
  2816     loadBinaries := Smalltalk loadBinaries asValue.
  2958         compilationList := box addPopUpList:(resources string:'stc compilation to machine code') on:stcCompilation.
  2958         compilationList := box addPopUpList:(resources string:'stc compilation to machine code') on:stcCompilation.
  2959 
  2959 
  2960         thisIsADemoVersion ifFalse:[
  2960         thisIsADemoVersion ifFalse:[
  2961             stcCompilation selectionIndex:( stcCompilationOptions indexOf:(Compiler stcCompilation) ifAbsent:2).
  2961             stcCompilation selectionIndex:( stcCompilationOptions indexOf:(Compiler stcCompilation) ifAbsent:2).
  2962 
  2962 
  2963             component := box 
  2963             stcSetupButt := box addComponent:(Button label:(resources string:'stc compilation parameters...') 
  2964                             addLabelledInputField:(resources string:'stc command:')
  2964                        action:[|manager|
  2965                             adjust:#right
  2965 
  2966                             on:stc 
  2966                                self stcCompilerSettingsFor:requestor.
  2967                             tabable:true
  2967                               ]).
  2968                             separateAtX:0.3.
  2968 
  2969             component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
  2969 "/            component := box 
  2970             component preferredExtent:(100 @ component preferredExtent y).
  2970 "/                            addLabelledInputField:(resources string:'stc command:')
  2971             canLoadBinaries ifFalse:[component disable].
  2971 "/                            adjust:#right
  2972 
  2972 "/                            on:stc 
  2973             component := box 
  2973 "/                            tabable:true
  2974                             addLabelledInputField:(resources string:'stc options:')
  2974 "/                            separateAtX:0.3.
  2975                             adjust:#right
  2975 "/            component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
  2976                             on:stcOptions 
  2976 "/            component preferredExtent:(100 @ component preferredExtent y).
  2977                             tabable:true
  2977 "/            canLoadBinaries ifFalse:[component disable].
  2978                             separateAtX:0.3.
  2978 "/
  2979             component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
  2979 "/            component := box 
  2980             component preferredExtent:(250 @ component preferredExtent y).
  2980 "/                            addLabelledInputField:(resources string:'stc options:')
  2981             canLoadBinaries ifFalse:[component disable].
  2981 "/                            adjust:#right
  2982 
  2982 "/                            on:stcOptions 
  2983             component := box 
  2983 "/                            tabable:true
  2984                             addLabelledInputField:(resources string:'include directories:')
  2984 "/                            separateAtX:0.3.
  2985                             adjust:#right
  2985 "/            component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
  2986                             on:stcIncludes 
  2986 "/            component preferredExtent:(250 @ component preferredExtent y).
  2987                             tabable:true
  2987 "/            canLoadBinaries ifFalse:[component disable].
  2988                             separateAtX:0.3.
  2988 "/
  2989             component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
  2989 "/            component := box 
  2990             component preferredExtent:(250 @ component preferredExtent y).
  2990 "/                            addLabelledInputField:(resources string:'include directories:')
  2991             canLoadBinaries ifFalse:[component disable].
  2991 "/                            adjust:#right
  2992 
  2992 "/                            on:stcIncludes 
  2993 "/        box addVerticalSpace.
  2993 "/                            tabable:true
  2994 
  2994 "/                            separateAtX:0.3.
  2995             component := box 
  2995 "/            component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
  2996                             addLabelledInputField:(resources string:'defines:')
  2996 "/            component preferredExtent:(250 @ component preferredExtent y).
  2997                             adjust:#right
  2997 "/            canLoadBinaries ifFalse:[component disable].
  2998                             on:stcDefines 
  2998 "/
  2999                             tabable:true
  2999 "/            component := box 
  3000                             separateAtX:0.3.
  3000 "/                            addLabelledInputField:(resources string:'defines:')
  3001             component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
  3001 "/                            adjust:#right
  3002             component preferredExtent:(250 @ component preferredExtent y).
  3002 "/                            on:stcDefines 
  3003             canLoadBinaries ifFalse:[component disable].
  3003 "/                            tabable:true
  3004 
  3004 "/                            separateAtX:0.3.
  3005 "/        box addVerticalSpace.
  3005 "/            component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
  3006 
  3006 "/            component preferredExtent:(250 @ component preferredExtent y).
  3007 "/        box addVerticalSpace.
  3007 "/            canLoadBinaries ifFalse:[component disable].
  3008 
  3008 "/
  3009             component := box 
  3009 "/            component := box 
  3010                             addLabelledInputField:(resources string:'cc command:')
  3010 "/                            addLabelledInputField:(resources string:'cc command:')
  3011                             adjust:#right
  3011 "/                            adjust:#right
  3012                             on:cc 
  3012 "/                            on:cc 
  3013                             tabable:true
  3013 "/                            tabable:true
  3014                             separateAtX:0.3.
  3014 "/                            separateAtX:0.3.
  3015             component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
  3015 "/            component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
  3016             component preferredExtent:(150 @ component preferredExtent y).
  3016 "/            component preferredExtent:(150 @ component preferredExtent y).
  3017             canLoadBinaries ifFalse:[component disable].
  3017 "/            canLoadBinaries ifFalse:[component disable].
  3018 
  3018 "/
  3019             component := box 
  3019 "/            component := box 
  3020                             addLabelledInputField:(resources string:'cc options:')
  3020 "/                            addLabelledInputField:(resources string:'cc options:')
  3021                             adjust:#right
  3021 "/                            adjust:#right
  3022                             on:ccOptions 
  3022 "/                            on:ccOptions 
  3023                             tabable:true
  3023 "/                            tabable:true
  3024                             separateAtX:0.3.
  3024 "/                            separateAtX:0.3.
  3025             component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
  3025 "/            component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
  3026             component preferredExtent:(250 @ component preferredExtent y).
  3026 "/            component preferredExtent:(250 @ component preferredExtent y).
  3027             canLoadBinaries ifFalse:[component disable].
  3027 "/            canLoadBinaries ifFalse:[component disable].
  3028 
  3028 "/
  3029             stcLibraries notNil ifTrue:[
  3029 "/            stcLibraries notNil ifTrue:[
  3030 "/            box addVerticalSpace.
  3030 "/
  3031 
  3031 "/                component := box 
  3032                 component := box 
  3032 "/                                addLabelledInputField:(resources string:'C-libraries:')
  3033                                 addLabelledInputField:(resources string:'C-libraries:')
  3033 "/                                adjust:#right
  3034                                 adjust:#right
  3034 "/                                on:stcLibraries 
  3035                                 on:stcLibraries 
  3035 "/                                tabable:true
  3036                                 tabable:true
  3036 "/                                separateAtX:0.3.
  3037                                 separateAtX:0.3.
  3037 "/                component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
  3038                 component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
  3038 "/                component preferredExtent:(250 @ component preferredExtent y).
  3039                 component preferredExtent:(250 @ component preferredExtent y).
  3039 "/                canLoadBinaries ifFalse:[component disable].
  3040                 canLoadBinaries ifFalse:[component disable].
  3040 "/            ].
  3041             ].
  3041 "/
  3042 
  3042 "/            stcLibraryPath notNil ifTrue:[
  3043             stcLibraryPath notNil ifTrue:[
  3043 "/                component := box 
  3044 "/            box addVerticalSpace.
  3044 "/                                addLabelledInputField:(resources string:'stc libPath:')
  3045 
  3045 "/                                adjust:#right
  3046                 component := box 
  3046 "/                                on:stcLibraryPath 
  3047                                 addLabelledInputField:(resources string:'stc libPath:')
  3047 "/                                tabable:true
  3048                                 adjust:#right
  3048 "/                                separateAtX:0.3.
  3049                                 on:stcLibraryPath 
  3049 "/                component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
  3050                                 tabable:true
  3050 "/                component preferredExtent:(250 @ component preferredExtent y).
  3051                                 separateAtX:0.3.
  3051 "/                canLoadBinaries ifFalse:[component disable].
  3052                 component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
  3052 "/            ].
  3053                 component preferredExtent:(250 @ component preferredExtent y).
  3053 
  3054                 canLoadBinaries ifFalse:[component disable].
       
  3055             ].
       
  3056         ].
  3054         ].
  3057 
  3055 
  3058 "/        box addVerticalSpace.
       
  3059         box addHorizontalLine.
  3056         box addHorizontalLine.
  3060 
  3057 
  3061         "/ if there is no compiler around,
  3058         "/ if there is no compiler around,
  3062         "/ change to compile nothing, and disable the checkBoxes
  3059         "/ change to compile nothing, and disable the checkBoxes
  3063         Compiler canCreateMachineCode ifFalse:[
  3060         Compiler canCreateMachineCode ifFalse:[
  3193     ].
  3190     ].
  3194     box destroy
  3191     box destroy
  3195 
  3192 
  3196     "Modified: / 10.9.1995 / 19:19:18 / claus"
  3193     "Modified: / 10.9.1995 / 19:19:18 / claus"
  3197     "Modified: / 9.9.1996 / 22:42:47 / stefan"
  3194     "Modified: / 9.9.1996 / 22:42:47 / stefan"
  3198     "Modified: / 31.7.1998 / 01:33:38 / cg"
  3195     "Modified: / 2.10.1998 / 18:57:34 / cg"
  3199 !
  3196 !
  3200 
  3197 
  3201 displaySettingsFor:requestor
  3198 displaySettingsFor:requestor
  3202     "open a dialog on display related settings"
  3199     "open a dialog on display related settings"
  3203 
  3200 
  4840     "Created: / 17.1.1997 / 17:39:33 / cg"
  4837     "Created: / 17.1.1997 / 17:39:33 / cg"
  4841     "Modified: / 16.4.1998 / 17:18:47 / ca"
  4838     "Modified: / 16.4.1998 / 17:18:47 / ca"
  4842     "Modified: / 3.8.1998 / 21:23:44 / cg"
  4839     "Modified: / 3.8.1998 / 21:23:44 / cg"
  4843 !
  4840 !
  4844 
  4841 
       
  4842 stcCompilerSettingsFor:requestor
       
  4843     "open an extra dialog on stc-compiler related settings"
       
  4844 
       
  4845     |box      
       
  4846      stcCompilationOptions stcIncludes stcDefines stcOptions
       
  4847      stcLibraries stcLibraryPath cc stc ccOptions   
       
  4848      linkCommand linkArgs
       
  4849      component t y y2 yMax
       
  4850      canLoadBinaries strings idx thisIsADemoVersion
       
  4851      resources|
       
  4852 
       
  4853     resources := requestor class classResources.
       
  4854 
       
  4855     canLoadBinaries := ObjectFileLoader notNil and:[ObjectFileLoader canLoadObjectFiles].
       
  4856 
       
  4857     stcIncludes := Compiler stcCompilationIncludes asValue.
       
  4858     stcDefines := Compiler stcCompilationDefines asValue.
       
  4859     stcOptions := Compiler stcCompilationOptions asValue.
       
  4860     ccOptions := Compiler ccCompilationOptions asValue.
       
  4861 
       
  4862     cc := Compiler ccPath asValue.
       
  4863     stc := Compiler stcPath asValue.
       
  4864     linkCommand := ObjectFileLoader linkCommand asValue.
       
  4865     linkArgs := ObjectFileLoader linkArgs asValue.
       
  4866 
       
  4867     ObjectFileLoader notNil ifTrue:[
       
  4868         (t := ObjectFileLoader searchedLibraries) notNil ifTrue:[
       
  4869             stcLibraries := (String fromStringCollection:t separatedBy:' ') asValue.
       
  4870         ].
       
  4871         (t := ObjectFileLoader libPath) notNil ifTrue:[
       
  4872             stcLibraryPath := t asValue.
       
  4873         ]
       
  4874     ].
       
  4875 
       
  4876     box := DialogBox new.
       
  4877     box label:(resources string:'STC Compilation settings').
       
  4878 
       
  4879     ObjectFileLoader notNil ifTrue:[
       
  4880         thisIsADemoVersion ifFalse:[
       
  4881 
       
  4882             component := box 
       
  4883                             addLabelledInputField:(resources string:'stc command:')
       
  4884                             adjust:#right
       
  4885                             on:stc 
       
  4886                             tabable:true
       
  4887                             separateAtX:0.3.
       
  4888             component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
       
  4889             component preferredExtent:(100 @ component preferredExtent y).
       
  4890             canLoadBinaries ifFalse:[component disable].
       
  4891 
       
  4892             component := box 
       
  4893                             addLabelledInputField:(resources string:'stc options:')
       
  4894                             adjust:#right
       
  4895                             on:stcOptions 
       
  4896                             tabable:true
       
  4897                             separateAtX:0.3.
       
  4898             component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
       
  4899             component preferredExtent:(250 @ component preferredExtent y).
       
  4900             canLoadBinaries ifFalse:[component disable].
       
  4901 
       
  4902             component := box 
       
  4903                             addLabelledInputField:(resources string:'cc command:')
       
  4904                             adjust:#right
       
  4905                             on:cc 
       
  4906                             tabable:true
       
  4907                             separateAtX:0.3.
       
  4908             component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
       
  4909             component preferredExtent:(150 @ component preferredExtent y).
       
  4910             canLoadBinaries ifFalse:[component disable].
       
  4911 
       
  4912             component := box 
       
  4913                             addLabelledInputField:(resources string:'cc options:')
       
  4914                             adjust:#right
       
  4915                             on:ccOptions 
       
  4916                             tabable:true
       
  4917                             separateAtX:0.3.
       
  4918             component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
       
  4919             component preferredExtent:(250 @ component preferredExtent y).
       
  4920             canLoadBinaries ifFalse:[component disable].
       
  4921 
       
  4922             component := box 
       
  4923                             addLabelledInputField:(resources string:'include directories:')
       
  4924                             adjust:#right
       
  4925                             on:stcIncludes 
       
  4926                             tabable:true
       
  4927                             separateAtX:0.3.
       
  4928             component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
       
  4929             component preferredExtent:(250 @ component preferredExtent y).
       
  4930             canLoadBinaries ifFalse:[component disable].
       
  4931 
       
  4932 "/        box addVerticalSpace.
       
  4933 
       
  4934             component := box 
       
  4935                             addLabelledInputField:(resources string:'defines:')
       
  4936                             adjust:#right
       
  4937                             on:stcDefines 
       
  4938                             tabable:true
       
  4939                             separateAtX:0.3.
       
  4940             component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
       
  4941             component preferredExtent:(250 @ component preferredExtent y).
       
  4942             canLoadBinaries ifFalse:[component disable].
       
  4943 
       
  4944 "/        box addVerticalSpace.
       
  4945 
       
  4946 "/        box addVerticalSpace.
       
  4947 
       
  4948             component := box 
       
  4949                             addLabelledInputField:(resources string:'link command:')
       
  4950                             adjust:#right
       
  4951                             on:linkCommand 
       
  4952                             tabable:true
       
  4953                             separateAtX:0.3.
       
  4954             component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
       
  4955             component preferredExtent:(250 @ component preferredExtent y).
       
  4956             canLoadBinaries ifFalse:[component disable].
       
  4957 
       
  4958             component := box 
       
  4959                             addLabelledInputField:(resources string:'link args:')
       
  4960                             adjust:#right
       
  4961                             on:linkArgs 
       
  4962                             tabable:true
       
  4963                             separateAtX:0.3.
       
  4964             component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
       
  4965             component preferredExtent:(250 @ component preferredExtent y).
       
  4966             canLoadBinaries ifFalse:[component disable].
       
  4967 
       
  4968             stcLibraries notNil ifTrue:[
       
  4969 "/            box addVerticalSpace.
       
  4970 
       
  4971                 component := box 
       
  4972                                 addLabelledInputField:(resources string:'C-libraries:')
       
  4973                                 adjust:#right
       
  4974                                 on:stcLibraries 
       
  4975                                 tabable:true
       
  4976                                 separateAtX:0.3.
       
  4977                 component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
       
  4978                 component preferredExtent:(250 @ component preferredExtent y).
       
  4979                 canLoadBinaries ifFalse:[component disable].
       
  4980             ].
       
  4981 
       
  4982             stcLibraryPath notNil ifTrue:[
       
  4983 "/            box addVerticalSpace.
       
  4984 
       
  4985                 component := box 
       
  4986                                 addLabelledInputField:(resources string:'stc libPath:')
       
  4987                                 adjust:#right
       
  4988                                 on:stcLibraryPath 
       
  4989                                 tabable:true
       
  4990                                 separateAtX:0.3.
       
  4991                 component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
       
  4992                 component preferredExtent:(250 @ component preferredExtent y).
       
  4993                 canLoadBinaries ifFalse:[component disable].
       
  4994             ].
       
  4995         ].
       
  4996     ].
       
  4997 
       
  4998     box 
       
  4999         addHelpButtonFor:'Launcher/compilerSettings.html';
       
  5000         addAbortButton; 
       
  5001         addOkButton.
       
  5002 
       
  5003     box open.
       
  5004 
       
  5005     box accepted ifTrue:[
       
  5006         thisIsADemoVersion  ifFalse:[
       
  5007             Compiler stcCompilationIncludes:stcIncludes value.
       
  5008             Compiler stcCompilationDefines:stcDefines value.
       
  5009             Compiler stcCompilationOptions:stcOptions value.
       
  5010             Compiler ccCompilationOptions:ccOptions value.
       
  5011             Compiler ccPath:cc value.
       
  5012             stc value ~= Compiler stcPath ifTrue:[
       
  5013                 Compiler stcPath:stc value
       
  5014             ].
       
  5015             ObjectFileLoader linkCommand:linkCommand value.
       
  5016             ObjectFileLoader linkArgs:linkArgs value.
       
  5017         ].
       
  5018 
       
  5019         ObjectFileLoader notNil ifTrue:[
       
  5020             stcLibraries notNil ifTrue:[
       
  5021                 ObjectFileLoader searchedLibraries:(stcLibraries value asCollectionOfWords).
       
  5022             ].
       
  5023             stcLibraryPath notNil ifTrue:[
       
  5024                 ObjectFileLoader libPath:(stcLibraryPath value).
       
  5025             ]
       
  5026         ].
       
  5027     ].
       
  5028     box destroy
       
  5029 
       
  5030     "Modified: / 10.9.1995 / 19:19:18 / claus"
       
  5031     "Modified: / 9.9.1996 / 22:42:47 / stefan"
       
  5032     "Created: / 2.10.1998 / 16:27:49 / cg"
       
  5033     "Modified: / 2.10.1998 / 16:39:43 / cg"
       
  5034 !
       
  5035 
  4845 viewStyleSettingsFor:requestor 
  5036 viewStyleSettingsFor:requestor 
  4846     "open a dialog on viewStyle related settings"
  5037     "open a dialog on viewStyle related settings"
  4847 
  5038 
  4848     | resourceDir dir box 
  5039     | resourceDir dir box 
  4849      list listView scrView infoLabel infoForwarder newStyle
  5040      list listView scrView infoLabel infoForwarder newStyle
  5664 ! !
  5855 ! !
  5665 
  5856 
  5666 !Launcher class methodsFor:'documentation'!
  5857 !Launcher class methodsFor:'documentation'!
  5667 
  5858 
  5668 version
  5859 version
  5669     ^ '$Header: /cvs/stx/stx/libtool/Launcher.st,v 1.376 1998-10-02 10:56:52 cg Exp $'
  5860     ^ '$Header: /cvs/stx/stx/libtool/Launcher.st,v 1.377 1998-10-02 17:41:03 cg Exp $'
  5670 ! !
  5861 ! !