stx_libbasic.st
author Claus Gittinger <cg@exept.de>
Wed, 05 Mar 2014 02:03:06 +0100
changeset 16205 199ef8998ad8
parent 16143 5a557c70b976
child 16364 b6561c7643d5
permissions -rw-r--r--
class: stx_libbasic changed: #classNamesAndAttributes

"
 COPYRIGHT (c) 2006 by eXept Software AG
	      All Rights Reserved

 This software is furnished under a license and may be used
 only in accordance with the terms of that license and with the
 inclusion of the above copyright notice.   This software may not
 be provided or otherwise made available to, or used by, any
 other person.  No title to or ownership of the software is
 hereby transferred.
"
"{ Package: 'stx:libbasic' }"

LibraryDefinition subclass:#stx_libbasic
	instanceVariableNames:''
	classVariableNames:''
	poolDictionaries:''
	category:'* Projects & Packages *'
!

!stx_libbasic class methodsFor:'documentation'!

copyright
"
 COPYRIGHT (c) 2006 by eXept Software AG
	      All Rights Reserved

 This software is furnished under a license and may be used
 only in accordance with the terms of that license and with the
 inclusion of the above copyright notice.   This software may not
 be provided or otherwise made available to, or used by, any
 other person.  No title to or ownership of the software is
 hereby transferred.
"
!

documentation
"
    Build- and package information for creation of the st/x standard library: stx_libbasic
    This library contains basic (nonGUI) classes.
"
! !

!stx_libbasic class methodsFor:'description'!

excludedFromPreRequisites
    "list all packages which should be ignored in the automatic
     preRequisites scan. See #preRequisites for more."

    ^ #(
        #'exept:ctypes'    "CType - referenced by ExternalLibraryFunction>>ffiTypeSymbolForType: "
        #'exept:expecco'    "Expecco::ExpeccoXMLDecoder - referenced by ClassDescription>>iconInBrowserForVariableNamed: "
        #'exept:libcrypt'    "HashRandom - referenced by HashStream class>>random "
        #'stx:goodies'    "LockedFileStream - referenced by ClassDescription>>changesStream "
        #'stx:goodies/simpleServices'    "STXScriptingServer - referenced by StandaloneStartup class>>handleScriptingOptionsFromArguments: "
        #'stx:goodies/sunit'    "TestRunner - referenced by UserPreferences>>testRunnerClass "
        #'stx:goodies/xml/stx'    "XMLCoder - referenced by ClassDescription>>fileOutXMLString:on: "
        #'stx:goodies/xml/vw'    "XML::XMLParser - referenced by PeekableStream>>fileInXMLNotifying:passChunk: "
        #'stx:libbasic2'    "List - referenced by Collection>>asList "
        #'stx:libbasic3'    "ClassOrganizer - referenced by ClassDescription>>organization "
        #'stx:libboss'    "BinaryObjectStorage - referenced by PeekableStream>>fileInBinary "
        #'stx:libcomp'    "Parser - referenced by CharacterArray>>isValidSmalltalkIdentifier "
        #'stx:libcompat'    "Dolphin::ClassCategoriesReader - referenced by ClassDescription>>categoriesForClass "
        #'stx:libhtml'    "URL - referenced by CharacterArray>>asURL "
        #'stx:libtool'    "Tools::ToDoListBrowser - referenced by ClassBuilder>>checkInstvarRedefsWith:subclassOf:old:name: "
        #'stx:libview'    "Image - referenced by UserPreferences class>>saveSettings:in: "
        #'stx:libview2'    "ApplicationModel - referenced by ApplicationDefinition class>>startupClassName_code "
        #'stx:libwidg'    "Button - referenced by UserPreferences class>>saveSettings:in: "
        #'stx:libwidg2'    "ProgressNotification - referenced by UserNotification class>>notify:progress: "
    )
!

mandatoryPreRequisites
    "list all required mandatory packages.
     Packages are mandatory, if they contain superclasses of the package's classes
     or classes which are extended by this package.
     This list can be maintained manually or (better) generated and
     updated by scanning the superclass hierarchies
     (the browser has a menu function for that)"

    ^ #(
    )
!

referencedPreRequisites
    "list all packages containing classes referenced by the packages's members.
     This list can be maintained manually or (better) generated and
     updated by looking for global variable accesses
     (the browser has a menu function for that)
     However, often too much is found, and you may want to explicitely
     exclude individual packages in the #excludedFromPreRequisites method."

    ^ #(
    )
!

subProjects
    "list packages which are known as subprojects.
     The generated makefile will enter those and make there as well.
     However: they are not forced to be loaded when a package is loaded;
     for those, redefine requiredPrerequisites"

    ^ #(
    )
! !

!stx_libbasic class methodsFor:'description - compilation'!

additionalBaseAddressDefinition_bc_dot_mak
    "this is an optional definition, which (if present) may speed up the dll-loading a little
     on win32 systems."

    ^ '
# see stdHeader_bc for LIBBASIC_BASE
LIB_BASE=$(LIBBASIC_BASE)
'
!

localIncludes
    ^ '-I$(TOP)/librun $(FFI_INCLUDE)'

    "Created: / 06-09-2006 / 18:18:06 / cg"
!

stcOptimizationOptions
    ^ '+optinline +optinline2'

    "Created: / 23-08-2006 / 11:06:17 / cg"
! !

!stx_libbasic class methodsFor:'description - contents'!

classNamesAndAttributes
    "lists the classes which are to be included in the project.
     Each entry in the list may be: a single class-name (symbol),
     or an array-literal consisting of class name and attributes.
     Attributes are: #autoload or #<os> where os is one of win32, unix,..."

    ^ #(
        "<className> or (<className> attributes...) in load order"
        Autoload
        Object
        ProtoObject
        AbstractOperatingSystem
        AbstractSourceFileReader
        Annotation
        Behavior
        Boolean
        CharacterEncoder
        ClassBuilder
        ClassCategoryReader
        CmdLineOption
        CmdLineParser
        Collection
        ConfigurableFeatures
        Context
        Continuation
        Delay
        ExecutableFunction
        ExternalAddress
        ExternalLibrary
        Filename
        GenericException
        Geometric
        InlineObject
        InterestConverter
        Link
        Lookup
        Magnitude
        Message
        MiniDebugger
        MiniInspector
        MiniLogger
        NameSpace
        OSErrorHolder
        OSProcess
        ObjectMemory
        PackageId
        PolymorphicInlineCache
        ProcessorScheduler
        ProgrammingLanguage
        Project
        ProjectDefinition
        ReadEvalPrintLoop
        RecursionLock
        Registry
        Semaphore
        SharedPool
        Signal
        Smalltalk
        StandaloneStartup
        Stream
        SystemChangeNotifier
        UndefinedObject
        UserMessage
        Visitor
        AbstractTime
        ApplicationDefinition
        ArithmeticValue
        AspectVisitor
        AutoDeletedFilename
        Bag
        BlockContext
        BuiltinLookup
        CachingRegistry
        Character
        #'CharacterEncoderImplementations::ISO10646_1'
        #'CharacterEncoderImplementations::SingleByteEncoder'
        #'CharacterEncoderImplementations::TwoByteEncoder'
        CompiledCode
        ControlInterrupt
        Date
        Exception
        ExternalFunction
        False
        HandleRegistry
        HashStream
        InlineObjectPrototype
        KeyedCollection
        LibraryDefinition
        LookupKey
        MessageSend
        NamespaceAwareLookup
        NoHandlerError
        Notification
        OSHandle
        PeekableStream
        Process
        QuerySignal
        Rectangle
        SequenceableCollection
        Set
        SmalltalkChunkFileSourceReader
        SmalltalkLanguage
        True
        UnixFilename
        WeakInterestConverter
        ArrayedCollection
        Association
        Block
        CascadingNotification
        #'CharacterEncoderImplementations::ASCII'
        #'CharacterEncoderImplementations::CP437'
        #'CharacterEncoderImplementations::EBCDIC'
        #'CharacterEncoderImplementations::ISO10646_to_UTF16BE'
        #'CharacterEncoderImplementations::ISO10646_to_UTF8'
        #'CharacterEncoderImplementations::ISO8859_1'
        #'CharacterEncoderImplementations::ISO8859_10'
        #'CharacterEncoderImplementations::ISO8859_11'
        #'CharacterEncoderImplementations::ISO8859_13'
        #'CharacterEncoderImplementations::ISO8859_14'
        #'CharacterEncoderImplementations::ISO8859_15'
        #'CharacterEncoderImplementations::ISO8859_16'
        #'CharacterEncoderImplementations::ISO8859_2'
        #'CharacterEncoderImplementations::ISO8859_3'
        #'CharacterEncoderImplementations::ISO8859_4'
        #'CharacterEncoderImplementations::ISO8859_5'
        #'CharacterEncoderImplementations::ISO8859_6'
        #'CharacterEncoderImplementations::ISO8859_7'
        #'CharacterEncoderImplementations::ISO8859_8'
        #'CharacterEncoderImplementations::KOI8_R'
        #'CharacterEncoderImplementations::MS_Ansi'
        #'CharacterEncoderImplementations::MS_Arabic'
        #'CharacterEncoderImplementations::MS_Baltic'
        #'CharacterEncoderImplementations::MS_Cyrillic'
        #'CharacterEncoderImplementations::MS_EastEuropean'
        #'CharacterEncoderImplementations::MS_Greek'
        #'CharacterEncoderImplementations::MS_Hebrew'
        #'CharacterEncoderImplementations::MS_Symbol'
        #'CharacterEncoderImplementations::MS_Turkish'
        ClassDescription
        Complex
        ControlRequest
        Dictionary
        EncodedStream
        EndOfStreamNotification
        Error
        ExternalFunctionCallback
        ExternalLibraryFunction
        HaltInterrupt
        IdentitySet
        LinkedList
        MD5Stream
        Method
        MethodDictionary
        NaiveRomanNumberFormatNotification
        Number
        OSFileHandle
        ObjectCoder
        OrderedCollection
        OrderedSet
        Point
        PositionableStream
        ProceedingNotification
        Query
        ReadOnlySequenceableCollection
        RecursiveStoreError
        SHA1Stream
        Time
        TimeoutNotification
        Timestamp
        UserConfirmation
        UserInterrupt
        UserNotification
        YesToAllConfirmation
        #'stx_libbasic'
        AbortAllOperationRequest
        AbortAllOperationWantedQuery
        AbstractSourceFileWriter
        ActivityNotification
        Array
        BreakPointInterrupt
        #'CharacterEncoderImplementations::ISO10646_to_UTF16LE'
        #'CharacterEncoderImplementations::ISO10646_to_XMLUTF8'
        #'CharacterEncoderImplementations::ISO8859_9'
        #'CharacterEncoderImplementations::KOI8_U'
        CheapBlock
        ClassBuildError
        CmdLineOptionError
        ElementBoundsError
        FileDirectory
        Fraction
        GetOpt
        IdentityDictionary
        InlineObjectClassDescription
        Integer
        Interval
        IsDebuggingQuery
        LimitedPrecisionReal
        MeasurementValue
        MetaNumber
        Metaclass
        MethodWithBreakpoints
        OrderedDictionary
        OsError
        PluginSupport
        ProceedableError
        QueryWithoutDefault
        ReadStream
        RecursionError
        RecursiveExceptionError
        RestartProcessRequest
        SameForAllNotification
        SemaphoreSet
        SignalSet
        SnapshotError
        SortedCollection
        StringCollection
        TerminateProcessRequest
        UninterpretedBytes
        (UnixFileDescriptorHandle unix)
        (UnixFileHandle unix)
        (UnixOperatingSystem unix)
        UserInformation
        UtcTimestamp
        VMInternalError
        VarArgBlock
        Warning
        WeakArray
        WeakIdentitySet
        WeakValueDictionary
        WriteStream
        AbortOperationRequest
        AbstractNumberVector
        AllocationFailure
        AmbiguousMessage
        ArithmeticError
        AssertionFailedError
        AutoloadMetaclass
        ByteArray
        CharacterArray
        CharacterWriteStream
        Class
        ContextError
        ConversionError
        DeepCopyError
        ExceptionHandlerSet
        ExecutionError
        ExternalBytes
        FixedPoint
        Float
        ImmutableArray
        Infinity
        InvalidPatchError
        LargeInteger
        LongFloat
        MessageNotUnderstood
        NoModificationError
        NotFoundError
        OSSignalInterrupt
        (OSXOperatingSystem unix)
        OsIllegalOperation
        OsInaccessibleError
        OsInvalidArgumentsError
        OsNeedRetryError
        OsNoResourcesError
        OsNotification
        OsTransferFaultError
        PackageLoadError
        PrivateMetaclass
        ProceedError
        ReadWriteStream
        ShortFloat
        SignalError
        SmallInteger
        SmalltalkChunkFileSourceWriter
        SomeNumber
        StreamError
        SubclassResponsibilityError
        TimeoutError
        UnimplementedFunctionalityError
        UserPreferences
        VarArgCheapBlock
        WeakIdentityDictionary
        WeakValueIdentityDictionary
        ArgumentError
        CannotResumeError
        CannotReturnError
        CharacterEncoderError
        DateConversionError
        DomainError
        DoubleArray
        EndOfStreamError
        ExternalStream
        ExternalStructure
        FloatArray
        ImmutableByteArray
        IncompleteNextCountError
        IndexNotFoundError
        InvalidCodeError
        InvalidModeError
        InvalidOperationError
        InvalidTypeError
        KeyNotFoundError
        MallocFailure
        MethodNotAppropriateError
        NonBooleanReceiverError
        NumberConversionError
        OpenError
        PackageNotFoundError
        PositionError
        PositionOutOfBoundsError
        PrimitiveFailure
        RangeError
        ReadError
        StreamIOError
        StreamNotOpenError
        String
        TimeConversionError
        TwoByteString
        UnorderedNumbersError
        UnprotectedExternalBytes
        WeakDependencyDictionary
        WriteError
        WrongProceedabilityError
        AbstractClassInstantiationError
        BadLiteralsError
        DecodingError
        EncodingError
        FileDoesNotExistException
        FileStream
        ImmutableString
        InvalidByteCodeError
        InvalidInstructionError
        InvalidReadError
        InvalidWriteError
        NoByteCodeError
        NonIntegerIndexError
        NonPositionableExternalStream
        NumberFormatError
        OverflowError
        SubscriptOutOfBoundsError
        Symbol
        UnderflowError
        Unicode16String
        WrongNumberOfArgumentsError
        ZeroDivide
        CharacterRangeError
        DirectoryStream
        InvalidEncodingError
        PipeStream
        RomanNumberFormatError
        (OpenVMSFileHandle vms)
        (OpenVMSFilename vms)
        (OpenVMSOperatingSystem vms)
        (PCFilename win32)
        (Win32Constants win32)
        (Win32FILEHandle win32)
        (Win32Handle win32)
        (Win32OperatingSystem win32)
        (Win32Process win32)
        (AbstractDesktop autoload)
        (BadRomanNumberFormatError autoload)
        (#'CharacterEncoderImplementations::BIG5' autoload)
        (#'CharacterEncoderImplementations::CNS11643' autoload)
        (#'CharacterEncoderImplementations::GB2313_1980' autoload)
        (#'CharacterEncoderImplementations::HANGUL' autoload)
        (#'CharacterEncoderImplementations::ISO10646_to_JavaText' autoload)
        (#'CharacterEncoderImplementations::ISO10646_to_SGML' autoload)
        (#'CharacterEncoderImplementations::JIS0201' autoload)
        (#'CharacterEncoderImplementations::JIS0208' autoload)
        (#'CharacterEncoderImplementations::JIS0208_to_EUC' autoload)
        (#'CharacterEncoderImplementations::JIS0208_to_JIS7' autoload)
        (#'CharacterEncoderImplementations::JIS0208_to_SJIS' autoload)
        (#'CharacterEncoderImplementations::JIS0212' autoload)
        (#'CharacterEncoderImplementations::JOHAB' autoload)
        (#'CharacterEncoderImplementations::KOI7' autoload)
        (#'CharacterEncoderImplementations::KSC5601' autoload)
        (#'CharacterEncoderImplementations::MAC_Arabic' autoload)
        (#'CharacterEncoderImplementations::MAC_CentralEuropean' autoload)
        (#'CharacterEncoderImplementations::MAC_Croatian' autoload)
        (#'CharacterEncoderImplementations::MAC_Cyrillic' autoload)
        (#'CharacterEncoderImplementations::MAC_Dingbats' autoload)
        (#'CharacterEncoderImplementations::MAC_Farsi' autoload)
        (#'CharacterEncoderImplementations::MAC_Greek' autoload)
        (#'CharacterEncoderImplementations::MAC_Hebrew' autoload)
        (#'CharacterEncoderImplementations::MAC_Iceland' autoload)
        (#'CharacterEncoderImplementations::MAC_Japanese' autoload)
        (#'CharacterEncoderImplementations::MAC_Korean' autoload)
        (#'CharacterEncoderImplementations::MAC_Roman' autoload)
        (#'CharacterEncoderImplementations::MAC_Romanian' autoload)
        (#'CharacterEncoderImplementations::MAC_Symbol' autoload)
        (#'CharacterEncoderImplementations::MAC_Thai' autoload)
        (#'CharacterEncoderImplementations::MAC_Turkish' autoload)
        (#'CharacterEncoderImplementations::NEXT' autoload)
        (CmdLineParserTest autoload)
        (GNOMEDesktop autoload)
        (ImaginaryResultError autoload)
        (LargeFloat autoload)
        (MacFilename macos autoload)
        (MappedExternalBytes autoload)
        (NotANumber autoload)
        (QualifiedName autoload)
        (SmalltalkDesktop autoload)
        (SystemNotification autoload)
        (TextCollectorStream autoload)
        (UnboundedExternalStream autoload)
        (UnixDesktop autoload)
        (WindowsDesktop autoload)
        (XDGDesktop autoload)
    )
!

extensionMethodNames
    "lists the extension methods which are to be included in the project.
     Entries are 2-element array literals, consisting of class-name and selector."

    ^ #(
    )
! !

!stx_libbasic class methodsFor:'description - project information'!

applicationIconFileName
    "Return the name (without suffix) of an icon-file (the app's icon); will be included in the rc-resource file"

    ^ nil
    "/ ^ self applicationName
!

companyName
    "Return a companyname which will appear in <lib>.rc"

    ^ 'eXept Software AG'
!

description
    "Return a description string which will appear in nt.def / bc.def"

    ^ 'Smalltalk/X Basic Classes'
!

legalCopyright
    "Return a copyright string which will appear in <lib>.rc"

    ^ 'Copyright Claus Gittinger 1988-2012\nCopyright eXept Software AG 1998-2013'

    "Modified: / 18-07-2012 / 19:10:19 / cg"
!

productName
    "Return a product name which will appear in <lib>.rc"

    ^ 'Smalltalk/X'
! !

!stx_libbasic class methodsFor:'description - svn'!

svnRevisionNr
    "Return a SVN revision number of myself.
     This number is updated after a commit"

    ^ "$SVN-Revision:"'exported'"$"
! !

!stx_libbasic class methodsFor:'documentation'!

version
    ^ '$Header: /cvs/stx/stx/libbasic/stx_libbasic.st,v 1.125 2014-03-05 01:03:06 cg Exp $'
!

version_CVS
    ^ '$Header: /cvs/stx/stx/libbasic/stx_libbasic.st,v 1.125 2014-03-05 01:03:06 cg Exp $'
!

version_SVN
    ^ '$ Id: stx_libbasic.st 10648 2011-06-23 15:55:10Z vranyj1  $'
! !