stx_libview2.st
author Claus Gittinger <cg@exept.de>
Mon, 06 May 2013 16:39:41 +0200
changeset 3131 cc2f8452d1b8
parent 3106 77e6e44d3c04
child 3136 12809c743dfd
permissions -rw-r--r--
automatic checkIn

"
 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:libview2' }"

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

!stx_libview2 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_libview2.
    This library contains additional graphics-interfacing components and infrastructure.
"
!

extensionsVersion_SVN
    ^ 'Id:'
! !

!stx_libview2 class methodsFor:'description'!

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

    ^ #(
	#'stx:goodies/webServer'    "HTTPServer - referenced by ApplicationModel>>initializeWebServiceDevice "
	#'exept:httpPortal'    "HTTPPortalService - referenced by ApplicationModel class>>startAsWebService:onPort: "
	#'stx:libwidg'    "Label - referenced by ActiveHelpView>>contents: "
	#'stx:libwidg2'    "LabelAndIcon - referenced by MenuItem>>labelImage: "
	#'stx:libtool'    "AboutBox - referenced by ToolApplicationModel>>xxopenAboutThisApplication "
	#'stx:libtool2'    "ImageEditor - referenced by ResourceSpecEditor>>doEditImage "
	#'stx:libcompat'    "TextAttributes - referenced by WindowBuilder>>resolveFont: "
	#'stx:libhtml'    "HTMLDocumentView - referenced by ApplicationModel>>openDocumentationFile: "
    )
!

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)
     However, often too much is found, and you may want to explicitely
     exclude individual packages in the #excludedFromPreRequisites method."

    ^ #(
	#'stx:libbasic'    "String - superclass of MIMETypes::MIMEType "
	#'stx:libview'    "PopUpView - superclass of PopUpBanner "
    )
!

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."

    ^ #(
	#'stx:libbasic2'    "TextStream - referenced by ApplicationModel>>warn:withArguments: "
	#'stx:libui'    "SpecCollection - referenced by UIBuilder>>add: "
    )
! !

!stx_libview2 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 LIBVIEW2_BASE
LIB_BASE=$(LIBVIEW2_BASE)
'
!

additionalDefinitions_bc_dot_mak
    ^ '
LIBJPEG_DIR=$(TOP)\support\libjpeg-6a

!!if defined(USEMINGW32) || defined(USEMINGW64)
LIBJPEG=$(LIBJPEG_DIR)\$(OBJDIR)\libjpeg.a
!!else
LIBJPEG=$(LIBJPEG_DIR)\$(OBJDIR)\libjpeg.lib
!!endif

CLOCAL_INCL=-I"$(LIBJPEG_DIR)"
'

    "Created: / 22-08-2006 / 23:58:05 / cg"
!

additionalLinkLibraries_bc_dot_mak
    ^ '$(LIBJPEG)'
!

additionalLinkLibraries_make_dot_proto
    ^ '$(JPEGLIB_LD_ARG)'
!

additionalRules_bc_dot_mak
    ^ '
$(LIBJPEG):
	cd $(LIBJPEG_DIR)
	$(MAKE_BAT)
	cd ..\..\libview2

$(OUTDIR)JPEGReader.$(O):: $(LIBJPEG_DIR)\jconfig.h

$(LIBJPEG_DIR)\jconfig.h: $(LIBJPEG)
'

    "Created: / 22-08-2006 / 23:58:29 / cg"
!

additionalRules_make_dot_proto
    ^ '

libjpeg: $(LIBJPEG_DIR)/Makefile
	cd $(LIBJPEG_DIR); $(MAKE) $(MAKE_JPEGLIB_ARG)

#
# prelink JPEGReader.o with libjpeg
#
JPEGReader_prelinked: $(LIBJPEG) $(LIBJPEG_DIR)/libjpeg.a
	@$(MAKE) JPEGReader.$(O) \
		CC="$(LIBJPEG_CC)" \
		OPT="$(LIBJPEG_OPT)" \
		LOCALDEFS="-I$(LIBJPEG_DIR)" \
		LIBNAME="$(LIBNAME)" \
		STCOPT="$(STCOPT)" \
		STCLOCALOPT="$(STCLOCALOPT)" \
		CCLOCALOPT="$(CCLOCALOPT)" \
		LINKOBJRULE="$(LINKOBJRULE)"
	@if [ "$(NO_PRELINK_LIBJPEG)" = "" ]; then \
	    echo; \
	    echo "prelinking JPEGReader with libjpeg ..."; \
	    echo; \
	    echo ld $(LD_REL_FLAG) -o JPEGReader.$(O) __JPEGReader.$(O) $(LIBJPEG); \
	    mv JPEGReader.$(O) __JPEGReader.$(O) && \
	    ld $(LD_REL_FLAG) -o JPEGReader.$(O) __JPEGReader.$(O) $(LIBJPEG) && \
	    rm -f __JPEGReader.$(O); \
	    echo; \
	fi

$(LIBJPEG_DIR)/libjpeg.a: $(LIBJPEG_DIR)/.libs/libjpeg.a
	cp $(LIBJPEG_DIR)/.libs/libjpeg.a $(LIBJPEG)

$(LIBJPEG_DIR)/.libs/libjpeg.a: $(LIBJPEG_DIR)/Makefile $(LIBJPEG_DIR)/*.c $(LIBJPEG_DIR)/*.h
	@-echo
	@-echo "making libjpeg support library ..."
	@-echo
	cd $(LIBJPEG_DIR) \
	    && $(MAKE) all CC="$(LIBJPEG_CC)" OPT="$(LIBJPEG_OPT)" CFLAGS="$(LIBJPEG_OPT) $(CCCONFOPT)"
	@-echo

$(LIBJPEG_DIR)/Makefile:
	@-echo
	@-echo "configure libjpeg support library ..."
	@-echo
	cd $(LIBJPEG_DIR) && ./configure CC="$(LIBJPEG_CC)" OPT="$(LIBJPEG_OPT)" CFLAGS="$(LIBJPEG_OPT) $(CCCONFOPT)"'

    "Created: / 22-08-2006 / 23:58:51 / cg"
!

additionalTargets_bc_dot_mak
    "additional targets to be added to the nt.mak file."

    ^ '$(LIBJPEG)'

    "Created: / 23-08-2006 / 00:01:19 / cg"
!

additionalTargets_make_dot_proto
    "additional targets to be added to the make.proto file."

    ^ '$(JPEGLIB_MAKE_TARGET) $(JPEGREADER_PRELINKED)'

    "Created: / 22-08-2006 / 23:54:37 / cg"
!

stcOptimizationOptions
    ^ '+optspace2 -warnNonStandard'

    "Created: / 23-08-2006 / 11:27:11 / cg"
! !

!stx_libview2 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"
        (AVIReader autoload)
        ActiveHelpView
        (ApplicationController autoload)
        ApplicationSubView
        ApplicationWindow
        (BlitImageReader autoload)
        (BorderedWrapper autoload)
        (BoundedWrapper autoload)
        ColorValue
        (CompositePart autoload)
        (CompositeTransform autoload)
        (ConvertedValue autoload)
        (DependentPart autoload)
        DisplayObject
        (DisplayTransform autoload)
        DragAndDropManager
        DragHandler
        DrawAdaptor
        DropContext
        DropObject
        DropSource
        DropTarget
        EventListener
        ExternalTopView
        (FLIReader autoload)
        (FaceReader autoload)
        (FillingWrapper autoload)
        GIFReader
        (GeometricWrapper autoload)
        (HersheyFont autoload)
        Icon
        ImageFrame
        ImageSequence
        InputView
        (Insets autoload)
        (IrisRGBReader autoload)
        JPEGReader
        KeyboardProcessor
        Layout
        (LayoutWrapper autoload)
        MIMETypeIconLibrary
        MIMETypes
        (MatrixTransform2x3 autoload)
        Model
        Menu
        MenuItem
        MultiImage
        (PBMReader autoload)
        (PCXReader autoload)
        (PICTReader autoload)
        PNGReader
        (PluggableView autoload)
        PopUpBanner
        PrintConverter
        PrinterContext
        PropertyListDictionary
        (RIFFReader autoload)
        ResourceRetriever
        (ST80FormReader autoload)
        (ScreenLock autoload)
        StandardSystemController
        (StrokingOrFillingWrapper autoload)
        (StrokingWrapper autoload)
        (SunRasterReader autoload)
        TIFFReader
        (TargaReader autoload)
        (TranslatingWrapper autoload)
        TransparentBox
        (ViewForwardingController autoload)
        VisualRegion
        (WinPrinterContext win32)
        (WinPrinterStream win32)
        WindowBuilder
        WindowsIconReader
        (Wrapper autoload)
        XBMReader
        XPMReader
        (XWDReader autoload)
        #'stx_libview2'
        ActiveHelp
        ApplicationModel
        LayoutOrigin
        Plug
        UIBuilder
        ValueModel
        VisualComponent
        AlignmentOrigin
        BlockValue
        FlyByHelp
        IndirectValue
        LayoutFrame
        PluggableAdaptor
        ProtocolAdaptor
        SimpleDialog
        ToolApplicationModel
        ValueHolder
        VisualPart
        AspectAdaptor
        BooleanBlockValue
        BooleanValueHolder
        BufferedValueHolder
        DictionaryAdaptor
        RangeAdaptor
        ResourceSpecEditor
        TriggerValue
        TypeConverter
        ValueHolderWithWeakDependents
        AspectAdaptorWithDefault
        MacOSXIconReader
    )
!

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."

    ^ #(
	CharacterArray asMimeType
    )
! !

!stx_libview2 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 Additional Graphic Interfacing'
!

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

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

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

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

    ^ 'Smalltalk/X'
! !

!stx_libview2 class methodsFor:'documentation'!

version
    ^ '$Header: /cvs/stx/stx/libview2/stx_libview2.st,v 1.68 2013-05-06 14:39:41 cg Exp $'
!

version_CVS
    ^ '$Header: /cvs/stx/stx/libview2/stx_libview2.st,v 1.68 2013-05-06 14:39:41 cg Exp $'
! !