--- a/ApplicationDefinition.st Tue Jan 17 11:18:09 2017 +0000
+++ b/ApplicationDefinition.st Wed Jan 18 10:01:45 2017 +0000
@@ -1,3 +1,5 @@
+"{ Encoding: utf8 }"
+
"
COPYRIGHT (c) 2006 by eXept Software AG
All Rights Reserved
@@ -1583,11 +1585,11 @@
generateSubProjectLibs_bc_dot_mak
^ String streamContents:[:s |
- self subProjects do:[:projectID |
+ (self effectiveSubProjects:#win32) do:[:projectID |
|libPath libobjPath|
libPath := self pathToPackage:projectID withSeparator:'\'.
- libobjPath := libPath , '\', (self libraryNameFor:projectID).
+ libobjPath := libPath , '\$(OBJDIR)\', (self libraryNameFor:projectID).
s space; nextPutAll:libobjPath; nextPutLine:'.dll \'.
].
s cr.
@@ -1600,11 +1602,12 @@
"Created: / 09-08-2006 / 11:24:39 / fm"
"Modified: / 14-09-2006 / 18:46:09 / cg"
+ "Modified: / 17-01-2017 / 21:26:08 / stefan"
!
generateSubProjectLibs_make_dot_proto
^ String streamContents:[:s |
- self effectiveSubProjects do:[:projectID |
+ (self effectiveSubProjects:#unix) do:[:projectID |
|libPath libobjPath|
libPath := self pathToPackage:projectID withSeparator:'/'.
@@ -1617,11 +1620,13 @@
"
exept_expecco_application generateSubProjectLibs_make_dot_proto
"
+
+ "Modified: / 17-01-2017 / 16:16:38 / stefan"
!
generateSubProjectLines_bc_dot_mak
^ String streamContents:[:s |
- self effectiveSubProjects do:[:projectID |
+ (self effectiveSubProjects:#win32) do:[:projectID |
|mappings newObjectLine|
mappings := self subProjectLine_bc_dot_mak_mappings: projectID.
@@ -1633,17 +1638,19 @@
]
"
+ exept_expecco_application generateSubProjectLines_bc_dot_mak
bosch_dapasx_application generateSubProjectLines_bc_dot_mak
cg_newCompiler_driver_stc generateSubProjectLines_bc_dot_mak
"
"Created: / 09-08-2006 / 11:24:39 / fm"
"Modified: / 14-09-2006 / 18:46:09 / cg"
+ "Modified (comment): / 17-01-2017 / 17:01:38 / stefan"
!
generateSubProjectLines_make_dot_proto
^ String streamContents:[:s |
- self effectiveSubProjects do:[:projectID |
+ (self effectiveSubProjects:#unix) do:[:projectID |
|mappings newObjectLine|
mappings := self subProjectLine_make_dot_proto_mappings: projectID.
@@ -1661,11 +1668,12 @@
"Created: / 09-08-2006 / 11:24:39 / fm"
"Modified: / 14-09-2006 / 18:46:09 / cg"
+ "Modified: / 17-01-2017 / 16:17:16 / stefan"
!
generateSubProjectLines_modules_dot_stx
^ String streamContents:[:s |
- self effectiveSubProjects do:[:projectID |
+ (self effectiveSubProjects:#win32) do:[:projectID |
(self shouldBeLoadedInitially:projectID) ifFalse:[
s nextPut:$*.
].
@@ -1679,6 +1687,7 @@
"
"Modified: / 17-08-2006 / 17:22:37 / cg"
+ "Modified: / 17-01-2017 / 16:17:36 / stefan"
! !
!ApplicationDefinition class methodsFor:'file templates'!
@@ -1793,6 +1802,8 @@
REQUIRED_LIBS=librun.dll %(REQUIRED_LIBS)
REQUIRED_FILES=$(RT_DLL) $(X11_DLL) $(XEXT_DLL) symbols.stc $(REQUIRED_LIBS)
+SUBPROJECT_LIBS=%(SUBPROJECT_LIBS)
+
REQUIRED_SUPPORT_DIRS=%(REQUIRED_SUPPORT_DIRS)
target: %(BUILD_TARGET) postBuildCleanup
@@ -1801,7 +1812,7 @@
ALL:: prereq ALL_NP
# all, but no prereqs
-ALL_NP:: exe $(REQUIRED_SUPPORT_DIRS) postBuildCleanup
+ALL_NP:: exe $(REQUIRED_SUPPORT_DIRS) postBuildCleanup subProjects
exe: newBuildDate $(REQUIRED_LIBS) noConsoleApp consoleApp registerApplication
@@ -1833,6 +1844,9 @@
prereq:
$(MAKE) -N -f bc.mak $(USE_ARG) FORCE=FORCE_BUILD $(REQUIRED_LIBS)
+subProjects:
+ $(MAKE) -N -f bc.mak $(USE_ARG) FORCE=FORCE_BUILD $(SUBPROJECT_LIBS)
+
FORCE_BUILD:
@rem Dummy target to force a build
@@ -2017,6 +2031,7 @@
"Modified: / 02-06-2015 / 17:40:03 / gg"
"Modified: / 26-01-2016 / 14:23:35 / jv"
"Modified: / 03-03-2016 / 21:15:43 / cg"
+ "Modified: / 17-01-2017 / 17:18:24 / stefan"
!
bc_dot_mak_app_source_rules
@@ -3096,7 +3111,7 @@
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "Publisher" "${PRODUCT_PUBLISHER}"
SectionEnd
-LangString appOpen ${LANG_GERMAN} "Mit %(PRODUCT_NAME) ffnen"
+LangString appOpen ${LANG_GERMAN} "Mit %(PRODUCT_NAME) öffnen"
LangString appOpen ${LANG_ENGLISH} "Open with %(PRODUCT_NAME)"
LangString DESC_Section1 ${LANG_ENGLISH} "Program components of %(PRODUCT_NAME)"
@@ -3130,7 +3145,7 @@
Function un.onInit
!!insertmacro MUI_UNGETLANGUAGE
- MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "Mchten Sie %(PRODUCT_NAME) und alle seine Komponenten deinstallieren?" IDYES +2
+ MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "Möchten Sie %(PRODUCT_NAME) und alle seine Komponenten deinstallieren?" IDYES +2
Abort
FunctionEnd
--- a/Object.st Tue Jan 17 11:18:09 2017 +0000
+++ b/Object.st Wed Jan 18 10:01:45 2017 +0000
@@ -257,7 +257,6 @@
"Modified: / 4.8.1999 / 08:54:06 / stefan"
! !
-
!Object class methodsFor:'Compatibility-ST80'!
rootError
@@ -496,7 +495,6 @@
InfoPrinting := aBoolean
! !
-
!Object class methodsFor:'queries'!
isAbstract
@@ -519,10 +517,6 @@
! !
-
-
-
-
!Object methodsFor:'Compatibility-Dolphin'!
stbFixup: anSTBInFiler at: newObjectIndex
@@ -694,8 +688,6 @@
"
! !
-
-
!Object methodsFor:'accessing'!
_at:index
@@ -1792,8 +1784,6 @@
"
! !
-
-
!Object methodsFor:'attributes access'!
objectAttributeAt:attributeKey
@@ -1921,8 +1911,6 @@
! !
-
-
!Object methodsFor:'change & update'!
broadcast:aSelectorSymbol
@@ -2103,7 +2091,6 @@
^ aBlock ensure:[ self addDependent:someone ]
! !
-
!Object methodsFor:'comparing'!
= anObject
@@ -8200,7 +8187,6 @@
^ self
! !
-
!Object methodsFor:'secure message sending'!
?:selector
@@ -8806,7 +8792,6 @@
"
! !
-
!Object methodsFor:'synchronized evaluation'!
freeSynchronizationSemaphore
@@ -10028,6 +10013,13 @@
^ false
!
+isSocket
+ "return true, if the receiver is some kind of socket;
+ false returned here - the method is only redefined in Socket."
+
+ ^ false
+!
+
isSocketAddress
^ false
!
@@ -10601,9 +10593,6 @@
^ aVisitor visitObject:self with:aParameter
! !
-
-
-
!Object class methodsFor:'documentation'!
version
--- a/ProjectDefinition.st Tue Jan 17 11:18:09 2017 +0000
+++ b/ProjectDefinition.st Wed Jan 18 10:01:45 2017 +0000
@@ -1,3 +1,5 @@
+"{ Encoding: utf8 }"
+
"
COPYRIGHT (c) 2006 by eXept Software AG
All Rights Reserved
@@ -1636,17 +1638,43 @@
!
effectiveSubProjects
- "get the subProjects, that are not excluded"
+ "get the subProjects for the current OS platform, that are not excluded"
+
+ ^ self effectiveSubProjects:OperatingSystem platformName
+
+ "Modified: / 17-01-2017 / 16:31:42 / stefan"
+!
+
+effectiveSubProjects:osSymbol
+ "get the subProjects, that are not excluded.
+ osSymbol can be #win32 or #unix (for now)."
|subProjects|
- subProjects := self subProjects asNewOrderedSet.
- subProjects
- addAll:self includedInSubProjects;
- removeAllFoundIn:self excludedFromSubProjects;
- remove:self package ifAbsent:[].
+ subProjects := (self subProjects, self includedInSubProjects) collect:[:eachLine|
+ eachLine isString ifTrue:[
+ eachLine
+ ] ifFalse:[eachLine second = osSymbol ifTrue:[
+ eachLine first.
+ ] ifFalse:[
+ nil.
+ ]].
+ ] as:OrderedSet.
+
+ subProjects remove:self package ifAbsent:[].
+ subProjects remove:nil ifAbsent:[].
+
+ self excludedFromSubProjects do:[:eachLine|
+ eachLine isString ifTrue:[
+ subProjects remove:eachLine ifAbsent:[].
+ ] ifFalse:[eachLine second = osSymbol ifTrue:[
+ subProjects remove:eachLine first ifAbsent:[].
+ ]].
+ ].
^ subProjects
+
+ "Created: / 17-01-2017 / 16:16:03 / stefan"
!
excludedFromPreRequisites_code
@@ -2277,18 +2305,19 @@
def := self definitionClassForPackage:packageId
] on:PackageLoadError do:[:ex| def := nil].
].
- ^ def isNil
- ifTrue:[
- "Still no project definition - maybe it does not exist?"
- Transcript showCR:'Warning: no definition class for package: ', packageId.
- ((self searchForPreRequisites:packageId)
- fold:[:d1 :d2| d1 addAll:d2; yourself]) keys
- ]
- ifFalse:[ def effectivePreRequisites ]
+ ^ def isNil ifTrue:[
+ "Still no project definition - maybe it does not exist?"
+ Transcript showCR:'Warning: no definition class for package: ', packageId.
+ ((self searchForPreRequisites:packageId)
+ fold:[:d1 :d2| d1 addAll:d2; yourself]) keys
+ ] ifFalse:[
+ def effectivePreRequisites
+ ]
"Created: / 24-02-2011 / 22:47:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
"Modified: / 18-11-2011 / 14:52:43 / cg"
"Modified (format): / 19-11-2011 / 11:25:36 / cg"
+ "Modified: / 17-01-2017 / 16:55:39 / stefan"
!
referencedPreRequisites
@@ -4940,7 +4969,7 @@
"for xxxmake.bat files"
^ String streamContents:[:s |
- self effectiveSubProjects do:[:packageID |
+ (self effectiveSubProjects:#win32) do:[:packageID |
|pkgLabel skipLabel joinLabel|
pkgLabel := (packageID copyReplaceAll:$: with:$_) copyReplaceAll:$/ with:$_.
@@ -4967,6 +4996,7 @@
"Created: / 14-09-2006 / 18:40:09 / cg"
"Modified: / 27-09-2011 / 19:36:12 / cg"
"Modified: / 12-09-2015 / 12:33:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 17-01-2017 / 16:32:45 / stefan"
!
subProjectMingwmakeCalls
@@ -8150,7 +8180,7 @@
emptyOrNonProjects notEmpty ifTrue:[
(Dialog
- confirm:('The following projects are non-existent, empty or without description:\\ '
+ confirm:('The following subprojects are non-existent, empty or without description:\\ '
, ((emptyOrNonProjects
asSortedCollection
collect:[:p | p allBold])
@@ -8243,6 +8273,7 @@
"
"Modified: / 06-03-2012 / 11:31:37 / cg"
+ "Modified: / 17-01-2017 / 16:33:56 / stefan"
!
validateOrderOfClasses