rc.d/75-dev-setup.rc
author Jan Vrany <jan.vrany@fit.cvut.cz>
Tue, 14 Jan 2020 22:47:55 +0000
branchjv
changeset 1625 2425cb5d073e
parent 1435 9a1f18933e40
permissions -rw-r--r--
Add support out-of-tree builds. This commit adds a support for out-of-tree builds, i.e, object files, executables and so on are writen to `$(OUTDIR)` (which defaults to `build/<BUILD_TARGET>` directory. This allows building Smalltalk/X from single source tree for multiple targets.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1435
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"Show local sources"
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
Class tryLocalSourceFirst: true.
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
!
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
"Activate history manager"
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
Smalltalk addStartBlock:[HistoryManager activate]
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
!
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
"Add SmalltalkXProjects to package path"
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
| projectsDir |
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
projectsDir := Filename homeDirectory  / 'SmalltalkXProjects'.
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
projectsDir exists ifFalse:[
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
    Filename homeDirectory isWritable ifTrue:[
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
    	projectsDir makeDirectory. 
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
    ].
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
].
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
projectsDir isDirectory ifTrue:[
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
	Smalltalk packagePath: (Smalltalk packagePath asOrderedCollection addFirst: projectsDir pathName; yourself)
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
].
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
!
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
"Set up CVS & Mercurial Source Code Managers"
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
| setupCVS setupHG |
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33
setupCVS := OperatingSystem canExecuteCommand: 'cvs'.
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
setupHG  := OperatingSystem canExecuteCommand: 'hg'.
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    35
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    36
setupCVS ifTrue:[
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
	SourceCodeManager := CVSSourceCodeManager. 
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
	CVSSourceCodeManager
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
		shownInBrowserMenus: true;
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
		repositoryInfoPerModule:
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
			(Dictionary new 
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
				add: 'stx' -> ':pserver:cvs@cvs.smalltalk-x.de:/cvs/stx';
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    43
				yourself).
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
].
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
setupHG ifTrue:[
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
	HGSourceCodeManager
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
		shownInBrowserMenus: true.
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
].
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    50
9a1f18933e40 Merged code from jv-branch's 'distutils' package
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    51
UserPreferences default sourceCodeManagementMenyLayout: #inline.