h_win32.rc
author ca
Thu, 08 Jan 2004 10:33:18 +0100
changeset 578 dfa929970bef
parent 577 d574370a1da5
child 609 f0f51d4a0066
permissions -rw-r--r--
bugfix: do not overwrite compiler settings after restart from image

"*
 * $Header$
 *
 * MIMEType: application/x-smalltalk-source
 *
 * ST/X startup configuration file - for win95, win98 and winNT OS.
 *
 * DONT add site specific things here - use your own h_xxx.rc file instead
 * where xxx stands for your hostname(s)
 *"

"/ look in registry for LibDir ...
|k rel curr|

rel := Smalltalk versionString.
k := Win32OperatingSystem::RegistryEntry key:('HKEY_LOCAL_MACHINE\Software\eXept\Smalltalk/X\',rel).
k isNil ifTrue:[
    k := Win32OperatingSystem::RegistryEntry key:'HKEY_LOCAL_MACHINE\Software\eXept\Smalltalk/X'.
    k notNil ifTrue:[
	curr := k valueNamed:'CurrentVersion'.
	curr isString ifTrue:[
	    k close.
	    k := Win32OperatingSystem::RegistryEntry key:('HKEY_LOCAL_MACHINE\Software\eXept\Smalltalk/X\',curr).
	]
    ]
].
k notNil ifTrue:[
    libDir := k valueNamed:'LibDir'.
    (libDir notNil and:[libDir asFilename exists]) ifTrue:[
	Smalltalk systemPath addFirst:libDir.
	Smalltalk flushPathCaches
    ].
    k close.
].
!

|incl libs|

"/Smalltalk systemPath addFirst:'..\..\libbasic'.
"/Smalltalk systemPath addFirst:'..\..\libbasic2'.
"/Smalltalk systemPath addFirst:'..\..\libbasic3'.
"/Smalltalk systemPath addFirst:'..\..\libcomp'.
"/Smalltalk systemPath addFirst:'..\..\libview'.
"/Smalltalk systemPath addFirst:'..\..\libview2'.
"/Smalltalk systemPath addFirst:'..\..\libwidg'.
"/Smalltalk systemPath addFirst:'..\..\libwidg2'.
"/Smalltalk systemPath addFirst:'..\..\libwidg3'.
"/Smalltalk systemPath addFirst:'..\..\libtool'.
"/Smalltalk systemPath addFirst:'..\..\libtool2'.
"/Smalltalk systemPath addFirst:'..\..\libui'.
"/Smalltalk systemPath addFirst:'..\..\libhtml'.
"/Smalltalk systemPath addFirst:'..\..\libopengl'.

Smalltalk wasStartedFromImage ifFalse:[
    "/
    "/ right now, stx can only be used with a 
    "/ borland C-compiler.
    "/

    "/ msc
    "/ Compiler ccPath:'cl'.
    "/ Compiler ccCompilationOptions:'/O1'.

    "/ borland
    Compiler ccPath:'bcc32'.
    Compiler ccCompilationOptions:''.

    incl := #(
	    '-I..\..\include'
	    '-I..\..\libopengl'
	    ).

    libs := #(
	    '-L..\..\libbc'
	    ).

    'C:\Programme\exept\SmalltalkX\include' asFilename exists
    ifTrue:[
	incl := incl , #( '-IC:\Programme\exept\SmalltalkX\include' ).
	libs := libs , #( '-LC:\Programme\exept\SmalltalkX\lib' )    .
    ].
    'D:\STX\PROJECTS\smalltalk\include' asFilename exists
    ifTrue:[
	incl := incl , #( '-ID:\STX\PROJECTS\smalltalk\include' )    .
	libs := libs , #( '-LD:\STX\PROJECTS\smalltalk\lib' )        .
    ].
    'C:\Programme\borland\cbuilder3\include' asFilename exists
    ifTrue:[
	incl := incl , #( '-IC:\Programme\borland\cbuilder3\include' ).
	libs := libs , #( '-LC:\Programme\borland\cbuilder3\lib' )    .
    ].
    'C:\Programme\borland\cbuilder4\include' asFilename exists
    ifTrue:[
	incl := incl , #( '-IC:\Programme\borland\cbuilder4\include' ).
	libs := libs , #( '-LC:\Programme\borland\cbuilder4\lib' )    .
    ].
    'C:\Programme\borland\bcc55\include' asFilename exists
    ifTrue:[
	incl := incl , #( '-IC:\Programme\borland\bcc55\include' )    .
	libs := libs , #( '-LC:\Programme\borland\bcc55\lib' )        .
    ].
    'C:\borland\bcc55\include' asFilename exists
    ifTrue:[
	incl := incl , #( '-IC:\borland\bcc55\include' )              .
	libs := libs , #( '-LC:\borland\bcc55\lib' )                  .
    ].

    incl := incl asStringWith:Character space.
    libs := libs asStringWith:Character space.

    Compiler stcCompilationIncludes: incl.
    Compiler stcCompilationDefines: ''.
    Compiler stcCompilationOptions: '+optinline +inlineNew'.
    Compiler ccCompilationOptions: ''.

    ObjectFileLoader linkArgs: (libs , ' -r -c -ap -Tpd -Gi -w-dup').
    ObjectFileLoader linkCommand: 'ilink32'.
].

!