stx_goodies_metacello.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Wed, 19 Sep 2012 01:38:26 +0000
changeset 20 8caf2f257260
parent 11 d354ac2af7ec
permissions -rw-r--r--
- fixes for package support
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
9e312de5f694 - Initial commit
jv
parents:
diff changeset
     1
"{ Package: 'stx:goodies/metacello' }"
9e312de5f694 - Initial commit
jv
parents:
diff changeset
     2
9e312de5f694 - Initial commit
jv
parents:
diff changeset
     3
LibraryDefinition subclass:#stx_goodies_metacello
9e312de5f694 - Initial commit
jv
parents:
diff changeset
     4
	instanceVariableNames:''
9e312de5f694 - Initial commit
jv
parents:
diff changeset
     5
	classVariableNames:''
9e312de5f694 - Initial commit
jv
parents:
diff changeset
     6
	poolDictionaries:''
9e312de5f694 - Initial commit
jv
parents:
diff changeset
     7
	category:'* Projects & Packages *'
9e312de5f694 - Initial commit
jv
parents:
diff changeset
     8
!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
     9
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    10
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    11
!stx_goodies_metacello class methodsFor:'description'!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    12
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    13
excludedFromPreRequisites
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    14
    "list all packages which should be ignored in the automatic
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    15
     preRequisites scan. See #preRequisites for more."
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    16
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    17
    ^ #(
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    18
    )
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    19
!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    20
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    21
preRequisites
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    22
    "list all required packages.
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    23
     This list can be maintained manually or (better) generated and
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    24
     updated by scanning the superclass hierarchies and looking for
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    25
     global variable accesses. (the browser has a menu function for that)
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    26
     Howevery, often too much is found, and you may want to explicitely
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    27
     exclude individual packages in the #excludedFromPrerequisites method."
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    28
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    29
    ^ #(
11
d354ac2af7ec Metacello package refactoring - phase 2~
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 8
diff changeset
    30
        #'stx:goodies/metacello/base'
d354ac2af7ec Metacello package refactoring - phase 2~
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 8
diff changeset
    31
        #'stx:goodies/metacello/core'
d354ac2af7ec Metacello package refactoring - phase 2~
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 8
diff changeset
    32
        #'stx:goodies/metacello/stx'
1
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    33
        #'stx:libbasic'    "ProjectDefinition - superclass of stx_goodies_metacello "
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    34
    )
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    35
! !
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    36
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    37
!stx_goodies_metacello class methodsFor:'description - contents'!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    38
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    39
classNamesAndAttributes
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    40
    "lists the classes which are to be included in the project.
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    41
     Each entry in the list may be: a single class-name (symbol),
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    42
     or an array-literal consisting of class name and attributes.
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    43
     Attributes are: #autoload or #<os> where os is one of win32, unix,..."
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    44
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    45
    ^ #(
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    46
        "<className> or (<className> attributes...) in load order"
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    47
        #'stx_goodies_metacello'
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    48
    )
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    49
!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    50
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    51
extensionMethodNames
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    52
    "lists the extension methods which are to be included in the project.
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    53
     Entries are 2-element array literals, consisting of class-name and selector."
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    54
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    55
    ^ #(
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    56
    )
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    57
! !
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    58
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    59
!stx_goodies_metacello class methodsFor:'description - project information'!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    60
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    61
applicationIconFileName
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    62
    "Return the name (without suffix) of an icon-file (the app's icon); will be included in the rc-resource file"
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    63
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    64
    ^ nil
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    65
    "/ ^ self applicationName
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    66
!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    67
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    68
companyName
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    69
    "Return a companyname which will appear in <lib>.rc"
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    70
11
d354ac2af7ec Metacello package refactoring - phase 2~
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 8
diff changeset
    71
    ^ 'Dale Henrichs & Jan Vrany'
d354ac2af7ec Metacello package refactoring - phase 2~
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 8
diff changeset
    72
d354ac2af7ec Metacello package refactoring - phase 2~
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 8
diff changeset
    73
    "Modified: / 10-09-2012 / 22:14:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    74
!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    75
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    76
description
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    77
    "Return a description string which will appear in vc.def / bc.def"
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    78
11
d354ac2af7ec Metacello package refactoring - phase 2~
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 8
diff changeset
    79
    ^ 'Metacello -- a Smalltalk project configuration management tool'
d354ac2af7ec Metacello package refactoring - phase 2~
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 8
diff changeset
    80
d354ac2af7ec Metacello package refactoring - phase 2~
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 8
diff changeset
    81
    "Modified: / 10-09-2012 / 22:15:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    82
!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    83
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    84
legalCopyright
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    85
    "Return a copyright string which will appear in <lib>.rc"
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    86
11
d354ac2af7ec Metacello package refactoring - phase 2~
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 8
diff changeset
    87
    ^ 'Copyright Dale Henrichs 2008-2012\nCopyright Jan Vrany 2012 (port & Smalltalk/X specific code)'
d354ac2af7ec Metacello package refactoring - phase 2~
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 8
diff changeset
    88
d354ac2af7ec Metacello package refactoring - phase 2~
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 8
diff changeset
    89
    "Modified: / 10-09-2012 / 22:16:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    90
!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    91
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    92
productInstallDirBaseName
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    93
    "Returns a default installDir which will appear in <app>.nsi.
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    94
     This is usually not the one you want to keep"
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    95
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    96
    ^ (self package asCollectionOfSubstringsSeparatedByAny:':/') last
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    97
!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    98
9e312de5f694 - Initial commit
jv
parents:
diff changeset
    99
productName
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   100
    "Return a product name which will appear in <lib>.rc"
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   101
11
d354ac2af7ec Metacello package refactoring - phase 2~
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 8
diff changeset
   102
    ^ 'Metacello'
d354ac2af7ec Metacello package refactoring - phase 2~
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 8
diff changeset
   103
d354ac2af7ec Metacello package refactoring - phase 2~
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 8
diff changeset
   104
    "Modified: / 10-09-2012 / 22:16:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   105
! !
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   106
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   107
!stx_goodies_metacello class methodsFor:'description - svn'!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   108
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   109
svnRepositoryUrlString
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   110
    "Return a SVN repository URL of myself.
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   111
     (Generated since 2011-04-08)
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   112
     Do not make the string shorter!!!!!! We have to use fixed-length keyword!!!!!!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   113
    "        
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   114
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   115
    ^ '$URL::                                                                                                                        $'
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   116
!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   117
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   118
svnRevisionNr
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   119
    "Return a SVN revision number of myself.
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   120
     This number is updated after a commit"
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   121
8
e046a5b3427f - Fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2
diff changeset
   122
    ^ "$SVN-Revision:"'6               '"$"
1
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   123
! !
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   124
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   125
!stx_goodies_metacello class methodsFor:'documentation'!
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   126
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   127
version_SVN
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   128
    ^ '$Id::                                                                                                                        $'
9e312de5f694 - Initial commit
jv
parents:
diff changeset
   129
! !