ConfigurableFeatures.st
author Claus Gittinger <cg@exept.de>
Fri, 18 Apr 2014 21:15:52 +0200
changeset 16376 f96538a5ea67
parent 14242 45d070e53b95
child 16627 bdf2205fd15c
child 18011 deb0c3355881
permissions -rw-r--r--
class: PeekableStream comment/format in: #nextMatching:thenMatching:
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
13641
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"{ Package: 'stx:libbasic' }"
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
Object subclass:#ConfigurableFeatures
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
	instanceVariableNames:''
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
	classVariableNames:'LoadedFeatures'
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
	poolDictionaries:''
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
	category:'System-Support'
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
!
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
!ConfigurableFeatures class methodsFor:'documentation'!
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
documentation
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
"
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
    being tired of finding '(Smalltalk at:someClass) notNil' all over the place,
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    15
    start to concentrate feature queries to this single class, which might get more
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
    feature methods via extensions.
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    17
    Thus, to correctly ask for a feature being present, use:
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
        ConfigurableFeature includesFeature:featureName
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
    or
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
        ConfigurableFeature knownFeatures
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
    to ask for a list of features.
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
    Caveat: just started; more will be moved to this place as time goes by
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
"
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
! !
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
!ConfigurableFeatures class methodsFor:'queries'!
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
allFeatures
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
    "a list of features which are present in that smalltalk configuration"
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
    ^ self knownFeatures select:[:each | self includesFeature:each]
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
    "
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
     ConfigurableFeatures allFeatures 
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
    "
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
    "Created: / 07-09-2011 / 10:50:31 / cg"
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
!
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
includesFeature:featureName
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
    |querySelector|
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
    querySelector := ('has',featureName asUppercaseFirst) asSymbol.
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
    ^ self perform:querySelector ifNotUnderstood:false.
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
    "
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    48
     ConfigurableFeatures includesFeature:#SubversionSupport
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
    "
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
    "Created: / 07-09-2011 / 10:49:08 / cg"
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
!
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
knownFeatures
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
    "a list of known features; some of them might not be present in that smalltalk configuration"
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
    ^ self class methodDictionary keys
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
        collect:[:each | 
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    59
            (each startsWith:'has') ifTrue:[
13948
5c482fe46e20 changed: #knownFeatures
Claus Gittinger <cg@exept.de>
parents: 13944
diff changeset
    60
                (each endsWith:':') ifFalse:[
5c482fe46e20 changed: #knownFeatures
Claus Gittinger <cg@exept.de>
parents: 13944
diff changeset
    61
                    each copyFrom:4
5c482fe46e20 changed: #knownFeatures
Claus Gittinger <cg@exept.de>
parents: 13944
diff changeset
    62
                ]
13641
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    63
            ] ifFalse:[
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
                nil
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
            ].
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
        ]
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
        thenSelect:[:nm | nm notNil]
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
    "
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
     ConfigurableFeatures allFeatures
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    71
    "
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    72
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    73
    "Created: / 07-09-2011 / 10:51:26 / cg"
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    74
! !
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    76
!ConfigurableFeatures class methodsFor:'queries-features'!
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    77
13888
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
    78
hasCVSSupport
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
    79
    "/ use Smalltalk-at to trick the dependency/prerequisite generator
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
    80
    ^ (Smalltalk at: #'CVSSourceCodeManager' ifAbsent:nil) notNil
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
    81
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
    82
    "
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
    83
     ConfigurableFeatures hasCVSSupport
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
    84
    "
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
    85
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
    86
    "Created: / 03-01-2012 / 15:36:54 / cg"
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
    87
!
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
    88
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
    89
hasCVSSupportEnabled
13944
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
    90
    ^ self hasSCMSupportEnabledFor:#'CVSSourceCodeManager'
13888
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
    91
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
    92
    "Created: / 03-01-2012 / 15:42:16 / cg"
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
    93
!
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
    94
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
    95
hasDataBaseSourceCodeManagerSupport
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
    96
    "/ use Smalltalk-at to trick the dependency/prerequisite generator
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
    97
    ^ (Smalltalk at: #'DataBaseSourceCodeManager' ifAbsent:nil) notNil
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
    98
13887
Claus Gittinger <cg@exept.de>
parents: 13874
diff changeset
    99
    "
Claus Gittinger <cg@exept.de>
parents: 13874
diff changeset
   100
     ConfigurableFeatures hasDataBaseSourceCodeManagerSupport
Claus Gittinger <cg@exept.de>
parents: 13874
diff changeset
   101
    "
Claus Gittinger <cg@exept.de>
parents: 13874
diff changeset
   102
Claus Gittinger <cg@exept.de>
parents: 13874
diff changeset
   103
    "Created: / 03-01-2012 / 15:36:03 / cg"
Claus Gittinger <cg@exept.de>
parents: 13874
diff changeset
   104
!
Claus Gittinger <cg@exept.de>
parents: 13874
diff changeset
   105
Claus Gittinger <cg@exept.de>
parents: 13874
diff changeset
   106
hasDataBaseSourceCodeManagerSupportEnabled
13944
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   107
    ^ self hasSCMSupportEnabledFor:#'DataBaseSourceCodeManager'
13887
Claus Gittinger <cg@exept.de>
parents: 13874
diff changeset
   108
Claus Gittinger <cg@exept.de>
parents: 13874
diff changeset
   109
    "Created: / 03-01-2012 / 15:36:12 / cg"
Claus Gittinger <cg@exept.de>
parents: 13874
diff changeset
   110
!
Claus Gittinger <cg@exept.de>
parents: 13874
diff changeset
   111
14104
2c06d704086a added: #hasExternalLookupSupport
vrany
parents: 14059
diff changeset
   112
hasExternalLookupSupport
2c06d704086a added: #hasExternalLookupSupport
vrany
parents: 14059
diff changeset
   113
    "Return true, if the VM is compiled with external lookup MOP"
2c06d704086a added: #hasExternalLookupSupport
vrany
parents: 14059
diff changeset
   114
%{
2c06d704086a added: #hasExternalLookupSupport
vrany
parents: 14059
diff changeset
   115
#ifdef SUPPORT_EXTERNAL_LOOKUP
2c06d704086a added: #hasExternalLookupSupport
vrany
parents: 14059
diff changeset
   116
    RETURN ( true );
2c06d704086a added: #hasExternalLookupSupport
vrany
parents: 14059
diff changeset
   117
#endif
2c06d704086a added: #hasExternalLookupSupport
vrany
parents: 14059
diff changeset
   118
%}.
2c06d704086a added: #hasExternalLookupSupport
vrany
parents: 14059
diff changeset
   119
    ^false
2c06d704086a added: #hasExternalLookupSupport
vrany
parents: 14059
diff changeset
   120
2c06d704086a added: #hasExternalLookupSupport
vrany
parents: 14059
diff changeset
   121
    "
2c06d704086a added: #hasExternalLookupSupport
vrany
parents: 14059
diff changeset
   122
        ConfigurableFeatures hasExternalLookupSupport
2c06d704086a added: #hasExternalLookupSupport
vrany
parents: 14059
diff changeset
   123
        ConfigurableFeatures includesFeature:#ExternalLookupSupport
2c06d704086a added: #hasExternalLookupSupport
vrany
parents: 14059
diff changeset
   124
    "
2c06d704086a added: #hasExternalLookupSupport
vrany
parents: 14059
diff changeset
   125
2c06d704086a added: #hasExternalLookupSupport
vrany
parents: 14059
diff changeset
   126
    "Created: / 16-04-2012 / 20:00:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2c06d704086a added: #hasExternalLookupSupport
vrany
parents: 14059
diff changeset
   127
!
2c06d704086a added: #hasExternalLookupSupport
vrany
parents: 14059
diff changeset
   128
13874
Claus Gittinger <cg@exept.de>
parents: 13641
diff changeset
   129
hasFileBasedSourceCodeManagerSupport
13888
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   130
    "/ use Smalltalk-at to trick the dependency/prerequisite generator
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   131
    ^ (Smalltalk at: #'FileBasedSourceCodeManager' ifAbsent:nil) notNil
13874
Claus Gittinger <cg@exept.de>
parents: 13641
diff changeset
   132
Claus Gittinger <cg@exept.de>
parents: 13641
diff changeset
   133
    "
Claus Gittinger <cg@exept.de>
parents: 13641
diff changeset
   134
     ConfigurableFeatures hasFileBasedSourceCodeManagerSupport
Claus Gittinger <cg@exept.de>
parents: 13641
diff changeset
   135
    "
Claus Gittinger <cg@exept.de>
parents: 13641
diff changeset
   136
Claus Gittinger <cg@exept.de>
parents: 13641
diff changeset
   137
    "Created: / 21-12-2011 / 17:07:21 / cg"
Claus Gittinger <cg@exept.de>
parents: 13641
diff changeset
   138
!
Claus Gittinger <cg@exept.de>
parents: 13641
diff changeset
   139
Claus Gittinger <cg@exept.de>
parents: 13641
diff changeset
   140
hasFileBasedSourceCodeManagerSupportEnabled
13944
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   141
    ^ self hasSCMSupportEnabledFor:#'FileBasedSourceCodeManager'
13874
Claus Gittinger <cg@exept.de>
parents: 13641
diff changeset
   142
Claus Gittinger <cg@exept.de>
parents: 13641
diff changeset
   143
    "Created: / 21-12-2011 / 17:07:08 / cg"
Claus Gittinger <cg@exept.de>
parents: 13641
diff changeset
   144
!
Claus Gittinger <cg@exept.de>
parents: 13641
diff changeset
   145
14242
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   146
hasGitSupport
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   147
    "/ use Smalltalk-at to trick the dependency/prerequisite generator
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   148
    ^ (Smalltalk at: #'GitSourceCodeManager' ifAbsent:nil) notNil
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   149
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   150
    "
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   151
     ConfigurableFeatures hasGitSupport
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   152
    "
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   153
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   154
    "Created: / 23-07-2012 / 13:37:09 / cg"
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   155
!
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   156
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   157
hasGitSupportEnabled
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   158
    ^ self hasSCMSupportEnabledFor:#'GitSourceCodeManager'
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   159
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   160
    "
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   161
     self hasGitSupportEnabled
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   162
    "
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   163
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   164
    "Created: / 23-07-2012 / 13:37:17 / cg"
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   165
!
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   166
13944
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   167
hasMercurialSupport
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   168
    "/ use Smalltalk-at to trick the dependency/prerequisite generator
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   169
    ^ (Smalltalk at: #'MercurialSourceCodeManager' ifAbsent:nil) notNil
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   170
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   171
    "
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   172
     ConfigurableFeatures hasMercurialSupport
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   173
    "
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   174
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   175
    "Created: / 18-01-2012 / 10:58:07 / cg"
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   176
!
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   177
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   178
hasMercurialSupportEnabled
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   179
    ^ self hasSCMSupportEnabledFor:#'MercurialSourceCodeManager'
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   180
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   181
    "
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   182
     self hasMercurialSupportEnabled
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   183
    "
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   184
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   185
    "Created: / 18-01-2012 / 10:58:12 / cg"
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   186
!
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   187
13888
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   188
hasMonticelloSupport
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   189
    "/ use Smalltalk-at to trick the dependency/prerequisite generator
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   190
    ^ (Smalltalk at: #'MonticelloSourceCodeManager' ifAbsent:nil) notNil
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   191
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   192
    "
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   193
     ConfigurableFeatures hasMonticelloSupport
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   194
    "
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   195
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   196
    "Created: / 03-01-2012 / 15:44:32 / cg"
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   197
!
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   198
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   199
hasMonticelloSupportEnabled
13944
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   200
    ^ self hasSCMSupportEnabledFor:#'MonticelloSourceCodeManager'
13888
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   201
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   202
    "Created: / 03-01-2012 / 15:44:39 / cg"
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   203
!
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   204
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   205
hasPerforceSupport
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   206
    "/ use Smalltalk-at to trick the dependency/prerequisite generator
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   207
    ^ (Smalltalk at: #'PerforceSourceCodeManager' ifAbsent:nil) notNil
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   208
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   209
    "
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   210
     ConfigurableFeatures hasPerforceSupport
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   211
    "
13641
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   212
13888
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   213
    "Created: / 03-01-2012 / 15:43:42 / cg"
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   214
!
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   215
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   216
hasPerforceSupportEnabled
13944
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   217
    ^ self hasSCMSupportEnabledFor:#'PerforceSourceCodeManager'
13888
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   218
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   219
    "Created: / 03-01-2012 / 15:43:28 / cg"
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   220
!
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   221
13944
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   222
hasSCMSupportEnabledFor:aSourceCodeManagerClassName
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   223
    |scm|
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   224
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   225
    "/ use Smalltalk-at to trick the dependency/prerequisite generator
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   226
    scm := Smalltalk at:aSourceCodeManagerClassName ifAbsent:nil.
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   227
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   228
    ^ scm notNil
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   229
        and:[ scm isLoaded 
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   230
        and:[ scm shownInBrowserMenus ]]
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   231
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   232
    "Created: / 18-01-2012 / 10:55:58 / cg"
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   233
!
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   234
13888
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   235
hasSubversionSupport
ee32d4db57f5 added:7 methods
Claus Gittinger <cg@exept.de>
parents: 13887
diff changeset
   236
    "/ use Smalltalk-at to trick the dependency/prerequisite generator
14059
9afc79d37c0c changed: #hasSubversionSupport (stc compilation fix)
vrany
parents: 13948
diff changeset
   237
    ^ (Smalltalk at: #'SVNSourceCodeManager' ifAbsent:nil) notNil
13641
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   238
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   239
    "
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   240
     ConfigurableFeatures hasSubversionSupport
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   241
    "
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   242
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   243
    "Created: / 07-09-2011 / 10:40:40 / cg"
14059
9afc79d37c0c changed: #hasSubversionSupport (stc compilation fix)
vrany
parents: 13948
diff changeset
   244
    "Modified: / 13-03-2012 / 17:19:13 / Jan Vrany <jan.vrany.fit.cvut.cz>"
13641
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   245
!
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   246
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   247
hasSubversionSupportEnabled
13944
Claus Gittinger <cg@exept.de>
parents: 13888
diff changeset
   248
    ^ self hasSCMSupportEnabledFor:#'SVNSourceCodeManager'
13641
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   249
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   250
    "Created: / 07-09-2011 / 10:41:33 / cg"
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   251
! !
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   252
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   253
!ConfigurableFeatures class methodsFor:'documentation'!
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   254
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   255
version
14242
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   256
    ^ '$Header: /cvs/stx/stx/libbasic/ConfigurableFeatures.st,v 1.9 2012-07-23 11:37:32 cg Exp $'
13641
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   257
!
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   258
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   259
version_CVS
14242
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   260
    ^ '$Header: /cvs/stx/stx/libbasic/ConfigurableFeatures.st,v 1.9 2012-07-23 11:37:32 cg Exp $'
13641
2fe2dd2ca2d3 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   261
! !