Moved libjpeg build configuration to stx:libview2 jv
authorJan Vrany <jan.vrany@fit.cvut.cz>
Sat, 30 Sep 2017 22:41:09 +0100
branchjv
changeset 4020 d801dbd5cf3b
parent 3969 8933c34d61e7
child 4075 15f43beff36a
Moved libjpeg build configuration to stx:libview2 ...to let the stx:libview2 to control what an how libjpeg is built and linked. This moves the definitions closer to the code and makes it in sync Windows makefiles.
Make.proto
Make.spec
Model.st
abbrev.stc
bc.mak
stx_libview2.st
stx_libview2WINrc.rc
--- a/Make.proto	Sun Feb 05 00:18:48 2017 +0000
+++ b/Make.proto	Sat Sep 30 22:41:09 2017 +0100
@@ -34,7 +34,7 @@
 # add the path(es) here:,
 # ********** OPTIONAL: MODIFY the next lines ***
 # LOCALINCLUDES=-Ifoo -Ibar
-LOCALINCLUDES=$(JPEG_INCLUDE) -I$(INCLUDE_TOP)/stx/libbasic -I$(INCLUDE_TOP)/stx/libbasic2 -I$(INCLUDE_TOP)/stx/libui -I$(INCLUDE_TOP)/stx/libview
+LOCALINCLUDES=-I$(LIBJPEG_DIR)/$(LIBJPEG_TARGET) -I$(LIBJPEG_DIR) -I$(INCLUDE_TOP)/stx/libbasic -I$(INCLUDE_TOP)/stx/libbasic2 -I$(INCLUDE_TOP)/stx/libui -I$(INCLUDE_TOP)/stx/libview
 
 
 # if you need any additional defines for embedded C code,
@@ -49,7 +49,7 @@
 
 # ********** OPTIONAL: MODIFY the next line ***
 # additional C-libraries that should be pre-linked with the class-objects
-LD_OBJ_LIBS=$(JPEGLIB_LD_ARG)
+LD_OBJ_LIBS=$(LIBJPEG)
 LOCAL_SHARED_LIBS=
 
 
@@ -60,58 +60,43 @@
 OBJS= $(COMMON_OBJS) $(UNIX_OBJS)
 
 
+# LIBJPEG_DIR=$(TOP)/support/libjpeg-6a
+LIBJPEG_DIR=$(TOP)/support/libjpeg-9
 
-all:: preMake classLibRule postMake
-
-pre_objs:: $(JPEGLIB_MAKE_TARGET) $(JPEGREADER_PRELINKED) 
+# Following is a hack for Smalltalk/X jv-branch 6.x.x builds
+# that DO NOT use GNU target triplets as BUILD_TARGET.
+# So, normalize here:
+ifeq ($(BUILD_TARGET), linux-i386)
+LIBJPEG_TARGET = i686-pc-linux-gnu
+else
+ifeq ($(BUILD_TARGET), linux-x86_64)
+LIBJPEG_TARGET = x86_64-pc-linux-gnu
+else
+LIBJPEG_TARGET = $(BUILD_TARGET)
+endif
+endif
+LIBJPEG=$(LIBJPEG_DIR)/$(LIBJPEG_TARGET)/.libs/libjpeg.a
 
 
 
-libjpeg: $(LIBJPEG_DIR)/Makefile
-	cd $(LIBJPEG_DIR); $(MAKE) $(MAKE_JPEGLIB_ARG)
+all:: preMake classLibRule postMake
+
+pre_objs:: $(LIBJPEG)
+
+
+$(LIBJPEG): $(LIBJPEG_DIR)/$(LIBJPEG_TARGET)/config.status
+	$(MAKE) -C $(LIBJPEG_DIR)/$(LIBJPEG_TARGET)
 
-#
-# prelink JPEGReader.o with libjpeg
-#
-JPEGReader_prelinked: $(LIBJPEG)
-	@$(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 $(CLASSLIB_LD) $(LD_REL_FLAG) -o JPEGReader.$(O) __JPEGReader.$(O) $(LIBJPEG); \
-	    mv JPEGReader.$(O) __JPEGReader.$(O) && \
-	    $(CLASSLIB_LD) $(LD_REL_FLAG) -o JPEGReader.$(O) __JPEGReader.$(O) $(LIBJPEG) && \
-	    rm -f __JPEGReader.$(O); \
-	    echo; \
-	fi
+$(LIBJPEG_DIR)/$(LIBJPEG_TARGET)/config.status:
+	mkdir -p $(LIBJPEG_DIR)/$(LIBJPEG_TARGET)
+	cd $(LIBJPEG_DIR)/$(LIBJPEG_TARGET) && CC="$(CC) $(CCCONFOPT)" ../configure --build=$(LIBJPEG_TARGET)
 
-$(LIBJPEG_DIR)/libjpeg.a: $(LIBJPEG_MAKE_LIB)
-	cp $(LIBJPEG_MAKE_LIB)/.libs/libjpeg.a $(LIBJPEG)
+clobber::
+	rm -rf $(LIBJPEG_DIR)/$(LIBJPEG_TARGET)
 
-#the following is needed for linux; LIBJPEG_MAKE_LIB is expanded to: $(LIBJPEG_DIR)/.libs/libjpeg.a
-#do not replace taget below by LIBJPEG_MAKE_LIB, because it may be empty for other systems (osx)
-$(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
+clean::
+	if [ -f $(LIBJPEG_DIR)/$(LIBJPEG_TARGET)/Makefile ]; then make -C $(LIBJPEG_DIR)/$(LIBJPEG_TARGET) clean; fi
 
-$(LIBJPEG_DIR)/Makefile:
-	@-echo
-	@-echo "configure libjpeg support library ..."
-	@-echo
-	cd $(LIBJPEG_DIR) && ./configure CC="$(LIBJPEG_CC)" OPT="$(LIBJPEG_OPT)" CFLAGS="$(LIBJPEG_OPT) $(CCCONFOPT)"
 
 
 
--- a/Make.spec	Sun Feb 05 00:18:48 2017 +0000
+++ b/Make.spec	Sat Sep 30 22:41:09 2017 +0100
@@ -50,10 +50,6 @@
 # STCWARNINGS=-warnEOLComments
 STCWARNINGS=-warnNonStandard -warnUnused
 
-WIN32_CLASSES= \
-	WinPrinterStream \
-	WinPrinterContext \
-
 COMMON_CLASSES= \
 	ActiveHelpView \
 	ApplicationSubView \
@@ -133,92 +129,96 @@
 	ValueHolderWithWeakDependents \
 	AspectAdaptorWithDefault \
 
+WIN32_CLASSES= \
+	WinPrinterStream \
+	WinPrinterContext \
+
 
 
 
-WIN32_OBJS= \
-    $(OUTDIR_SLASH)WinPrinterStream.$(O) \
-    $(OUTDIR_SLASH)WinPrinterContext.$(O) \
+COMMON_OBJS= \
+    $(OUTDIR)ActiveHelpView.$(O) \
+    $(OUTDIR)ApplicationSubView.$(O) \
+    $(OUTDIR)ApplicationWindow.$(O) \
+    $(OUTDIR)ColorValue.$(O) \
+    $(OUTDIR)DisplayObject.$(O) \
+    $(OUTDIR)DragAndDropManager.$(O) \
+    $(OUTDIR)DragHandler.$(O) \
+    $(OUTDIR)DrawAdaptor.$(O) \
+    $(OUTDIR)DropContext.$(O) \
+    $(OUTDIR)DropObject.$(O) \
+    $(OUTDIR)DropSource.$(O) \
+    $(OUTDIR)DropTarget.$(O) \
+    $(OUTDIR)EventListener.$(O) \
+    $(OUTDIR)ExternalTopView.$(O) \
+    $(OUTDIR)GIFReader.$(O) \
+    $(OUTDIR)Icon.$(O) \
+    $(OUTDIR)ImageFrame.$(O) \
+    $(OUTDIR)ImageSequence.$(O) \
+    $(OUTDIR)InputView.$(O) \
+    $(OUTDIR)JPEGReader.$(O) \
+    $(OUTDIR)KeyboardProcessor.$(O) \
+    $(OUTDIR)Layout.$(O) \
+    $(OUTDIR)MIMETypeIconLibrary.$(O) \
+    $(OUTDIR)MIMETypes.$(O) \
+    $(OUTDIR)MacOSXIconReader.$(O) \
+    $(OUTDIR)MenuItem.$(O) \
+    $(OUTDIR)Model.$(O) \
+    $(OUTDIR)MultiImage.$(O) \
+    $(OUTDIR)PNGReader.$(O) \
+    $(OUTDIR)PopUpBanner.$(O) \
+    $(OUTDIR)PrintConverter.$(O) \
+    $(OUTDIR)PrinterContext.$(O) \
+    $(OUTDIR)PropertyListDictionary.$(O) \
+    $(OUTDIR)ResourceRetriever.$(O) \
+    $(OUTDIR)StandardSystemController.$(O) \
+    $(OUTDIR)TIFFReader.$(O) \
+    $(OUTDIR)TransparentBox.$(O) \
+    $(OUTDIR)VisualRegion.$(O) \
+    $(OUTDIR)WindowBuilder.$(O) \
+    $(OUTDIR)WindowsIconReader.$(O) \
+    $(OUTDIR)XBMReader.$(O) \
+    $(OUTDIR)XPMReader.$(O) \
+    $(OUTDIR)stx_libview2.$(O) \
+    $(OUTDIR)ActiveHelp.$(O) \
+    $(OUTDIR)ApplicationModel.$(O) \
+    $(OUTDIR)LayoutOrigin.$(O) \
+    $(OUTDIR)Menu.$(O) \
+    $(OUTDIR)Plug.$(O) \
+    $(OUTDIR)PluggableEventListener.$(O) \
+    $(OUTDIR)ScreenLock.$(O) \
+    $(OUTDIR)UIBuilder.$(O) \
+    $(OUTDIR)ValueModel.$(O) \
+    $(OUTDIR)VisualComponent.$(O) \
+    $(OUTDIR)AlignmentOrigin.$(O) \
+    $(OUTDIR)ApplicationWithFileHistory.$(O) \
+    $(OUTDIR)BlockValue.$(O) \
+    $(OUTDIR)FlyByHelp.$(O) \
+    $(OUTDIR)IndirectValue.$(O) \
+    $(OUTDIR)LayoutFrame.$(O) \
+    $(OUTDIR)PluggableAdaptor.$(O) \
+    $(OUTDIR)ProtocolAdaptor.$(O) \
+    $(OUTDIR)SimpleDialog.$(O) \
+    $(OUTDIR)ToolApplicationModel.$(O) \
+    $(OUTDIR)ValueHolder.$(O) \
+    $(OUTDIR)VisualPart.$(O) \
+    $(OUTDIR)AspectAdaptor.$(O) \
+    $(OUTDIR)BooleanBlockValue.$(O) \
+    $(OUTDIR)BooleanValueHolder.$(O) \
+    $(OUTDIR)BufferedValueHolder.$(O) \
+    $(OUTDIR)DictionaryAdaptor.$(O) \
+    $(OUTDIR)RangeAdaptor.$(O) \
+    $(OUTDIR)ResourceSpecEditor.$(O) \
+    $(OUTDIR)TriggerValue.$(O) \
+    $(OUTDIR)TypeConverter.$(O) \
+    $(OUTDIR)ValueHolderWithRememberedPreviousValue.$(O) \
+    $(OUTDIR)ValueHolderWithWeakDependents.$(O) \
+    $(OUTDIR)AspectAdaptorWithDefault.$(O) \
+    $(OUTDIR)extensions.$(O) \
 
-COMMON_OBJS= \
-    $(OUTDIR_SLASH)ActiveHelpView.$(O) \
-    $(OUTDIR_SLASH)ApplicationSubView.$(O) \
-    $(OUTDIR_SLASH)ApplicationWindow.$(O) \
-    $(OUTDIR_SLASH)ColorValue.$(O) \
-    $(OUTDIR_SLASH)DisplayObject.$(O) \
-    $(OUTDIR_SLASH)DragAndDropManager.$(O) \
-    $(OUTDIR_SLASH)DragHandler.$(O) \
-    $(OUTDIR_SLASH)DrawAdaptor.$(O) \
-    $(OUTDIR_SLASH)DropContext.$(O) \
-    $(OUTDIR_SLASH)DropObject.$(O) \
-    $(OUTDIR_SLASH)DropSource.$(O) \
-    $(OUTDIR_SLASH)DropTarget.$(O) \
-    $(OUTDIR_SLASH)EventListener.$(O) \
-    $(OUTDIR_SLASH)ExternalTopView.$(O) \
-    $(OUTDIR_SLASH)GIFReader.$(O) \
-    $(OUTDIR_SLASH)Icon.$(O) \
-    $(OUTDIR_SLASH)ImageFrame.$(O) \
-    $(OUTDIR_SLASH)ImageSequence.$(O) \
-    $(OUTDIR_SLASH)InputView.$(O) \
-    $(OUTDIR_SLASH)JPEGReader.$(O) \
-    $(OUTDIR_SLASH)KeyboardProcessor.$(O) \
-    $(OUTDIR_SLASH)Layout.$(O) \
-    $(OUTDIR_SLASH)MIMETypeIconLibrary.$(O) \
-    $(OUTDIR_SLASH)MIMETypes.$(O) \
-    $(OUTDIR_SLASH)MacOSXIconReader.$(O) \
-    $(OUTDIR_SLASH)MenuItem.$(O) \
-    $(OUTDIR_SLASH)Model.$(O) \
-    $(OUTDIR_SLASH)MultiImage.$(O) \
-    $(OUTDIR_SLASH)PNGReader.$(O) \
-    $(OUTDIR_SLASH)PopUpBanner.$(O) \
-    $(OUTDIR_SLASH)PrintConverter.$(O) \
-    $(OUTDIR_SLASH)PrinterContext.$(O) \
-    $(OUTDIR_SLASH)PropertyListDictionary.$(O) \
-    $(OUTDIR_SLASH)ResourceRetriever.$(O) \
-    $(OUTDIR_SLASH)StandardSystemController.$(O) \
-    $(OUTDIR_SLASH)TIFFReader.$(O) \
-    $(OUTDIR_SLASH)TransparentBox.$(O) \
-    $(OUTDIR_SLASH)VisualRegion.$(O) \
-    $(OUTDIR_SLASH)WindowBuilder.$(O) \
-    $(OUTDIR_SLASH)WindowsIconReader.$(O) \
-    $(OUTDIR_SLASH)XBMReader.$(O) \
-    $(OUTDIR_SLASH)XPMReader.$(O) \
-    $(OUTDIR_SLASH)stx_libview2.$(O) \
-    $(OUTDIR_SLASH)ActiveHelp.$(O) \
-    $(OUTDIR_SLASH)ApplicationModel.$(O) \
-    $(OUTDIR_SLASH)LayoutOrigin.$(O) \
-    $(OUTDIR_SLASH)Menu.$(O) \
-    $(OUTDIR_SLASH)Plug.$(O) \
-    $(OUTDIR_SLASH)PluggableEventListener.$(O) \
-    $(OUTDIR_SLASH)ScreenLock.$(O) \
-    $(OUTDIR_SLASH)UIBuilder.$(O) \
-    $(OUTDIR_SLASH)ValueModel.$(O) \
-    $(OUTDIR_SLASH)VisualComponent.$(O) \
-    $(OUTDIR_SLASH)AlignmentOrigin.$(O) \
-    $(OUTDIR_SLASH)ApplicationWithFileHistory.$(O) \
-    $(OUTDIR_SLASH)BlockValue.$(O) \
-    $(OUTDIR_SLASH)FlyByHelp.$(O) \
-    $(OUTDIR_SLASH)IndirectValue.$(O) \
-    $(OUTDIR_SLASH)LayoutFrame.$(O) \
-    $(OUTDIR_SLASH)PluggableAdaptor.$(O) \
-    $(OUTDIR_SLASH)ProtocolAdaptor.$(O) \
-    $(OUTDIR_SLASH)SimpleDialog.$(O) \
-    $(OUTDIR_SLASH)ToolApplicationModel.$(O) \
-    $(OUTDIR_SLASH)ValueHolder.$(O) \
-    $(OUTDIR_SLASH)VisualPart.$(O) \
-    $(OUTDIR_SLASH)AspectAdaptor.$(O) \
-    $(OUTDIR_SLASH)BooleanBlockValue.$(O) \
-    $(OUTDIR_SLASH)BooleanValueHolder.$(O) \
-    $(OUTDIR_SLASH)BufferedValueHolder.$(O) \
-    $(OUTDIR_SLASH)DictionaryAdaptor.$(O) \
-    $(OUTDIR_SLASH)RangeAdaptor.$(O) \
-    $(OUTDIR_SLASH)ResourceSpecEditor.$(O) \
-    $(OUTDIR_SLASH)TriggerValue.$(O) \
-    $(OUTDIR_SLASH)TypeConverter.$(O) \
-    $(OUTDIR_SLASH)ValueHolderWithRememberedPreviousValue.$(O) \
-    $(OUTDIR_SLASH)ValueHolderWithWeakDependents.$(O) \
-    $(OUTDIR_SLASH)AspectAdaptorWithDefault.$(O) \
-    $(OUTDIR_SLASH)extensions.$(O) \
+WIN32_OBJS= \
+    $(OUTDIR)WinPrinterStream.$(O) \
+    $(OUTDIR)WinPrinterContext.$(O) \
 
 
 
--- a/Model.st	Sun Feb 05 00:18:48 2017 +0000
+++ b/Model.st	Sat Sep 30 22:41:09 2017 +0100
@@ -288,5 +288,10 @@
 
 version
     ^ '$Header$'
+!
+
+version_HG
+
+    ^ '$Changeset: <not expanded> $'
 ! !
 
--- a/abbrev.stc	Sun Feb 05 00:18:48 2017 +0000
+++ b/abbrev.stc	Sat Sep 30 22:41:09 2017 +0100
@@ -46,7 +46,7 @@
 XPMReader XPMReader stx:libview2 'Graphics-Images-Readers' 0
 stx_libview2 stx_libview2 stx:libview2 '* Projects & Packages *' 3
 ActiveHelp ActiveHelp stx:libview2 'Interface-Help' 3
-ApplicationModel ApplicationModel stx:libview2 'Interface-Framework' 1
+ApplicationModel ApplicationModel stx:libview2 'Interface-Framework' 2
 LayoutOrigin LayoutOrigin stx:libview2 'Graphics-Geometry' 0
 Menu Menu stx:libview2 'Views-Support' 0
 Plug Plug stx:libview2 'Kernel-Objects' 0
@@ -57,15 +57,15 @@
 VisualComponent VisualComponent stx:libview2 'Compatibility-ST80-Graphics-Display Objects' 0
 WinPrinterContext WinPrinterContext stx:libview2  'unknownCategory'  0
 AlignmentOrigin AlignmentOrigin stx:libview2 'Graphics-Geometry' 0
-ApplicationWithFileHistory ApplicationWithFileHistory stx:libview2 'Interface-Framework' 2
+ApplicationWithFileHistory ApplicationWithFileHistory stx:libview2 'Interface-Framework' 3
 BlockValue BlockValue stx:libview2 'Interface-Support-Models' 0
 FlyByHelp FlyByHelp stx:libview2 'Interface-Help' 3
 IndirectValue IndirectValue stx:libview2 'Interface-Support-Models' 0
 LayoutFrame LayoutFrame stx:libview2 'Graphics-Geometry' 0
 PluggableAdaptor PluggableAdaptor stx:libview2 'Interface-Support-Models' 0
 ProtocolAdaptor ProtocolAdaptor stx:libview2 'Interface-Support-Models' 0
-SimpleDialog SimpleDialog stx:libview2 'Interface-Framework' 1
-ToolApplicationModel ToolApplicationModel stx:libview2 'Interface-Framework' 7
+SimpleDialog SimpleDialog stx:libview2 'Interface-Framework' 2
+ToolApplicationModel ToolApplicationModel stx:libview2 'Interface-Framework' 8
 ValueHolder ValueHolder stx:libview2 'Interface-Support-Models' 0
 VisualPart VisualPart stx:libview2 'Compatibility-ST80-Graphics-Display Objects' 0
 AspectAdaptor AspectAdaptor stx:libview2 'Interface-Support-Models' 0
@@ -74,7 +74,7 @@
 BufferedValueHolder BufferedValueHolder stx:libview2 'Interface-Support-Models' 0
 DictionaryAdaptor DictionaryAdaptor stx:libview2 'Interface-Support-Models' 0
 RangeAdaptor RangeAdaptor stx:libview2 'Interface-Support-Models' 0
-ResourceSpecEditor ResourceSpecEditor stx:libview2 'Interface-Framework' 7
+ResourceSpecEditor ResourceSpecEditor stx:libview2 'Interface-Framework' 8
 TriggerValue TriggerValue stx:libview2 'Interface-Support-Models' 0
 TypeConverter TypeConverter stx:libview2 'Interface-Support-Models' 0
 ValueHolderWithRememberedPreviousValue ValueHolderWithRememberedPreviousValue stx:libview2 'Interface-Support-Models' 0
--- a/bc.mak	Sun Feb 05 00:18:48 2017 +0000
+++ b/bc.mak	Sat Sep 30 22:41:09 2017 +0100
@@ -43,7 +43,7 @@
 !if defined(USEMINGW32) || defined(USEMINGW64)
 ! if defined(USEMINGW32)
 LIBJPEG_TARGET = i686-pc-mingw32
-! else 
+! else
 LIBJPEG_TARGET = x86_64-w64-mingw32
 ! endif
 LIBJPEG=$(LIBJPEG_DIR)\$(LIBJPEG_TARGET)\.libs\libjpeg.a
@@ -56,7 +56,7 @@
 
 
 
-LOCALINCLUDES=$(JPEG_INCLUDE) -I$(INCLUDE_TOP)\stx\libbasic -I$(INCLUDE_TOP)\stx\libbasic2 -I$(INCLUDE_TOP)\stx\libui -I$(INCLUDE_TOP)\stx\libview
+LOCALINCLUDES=-I$(LIBJPEG_DIR)\$(LIBJPEG_TARGET) -I$(LIBJPEG_DIR) -I$(INCLUDE_TOP)\stx\libbasic -I$(INCLUDE_TOP)\stx\libbasic2 -I$(INCLUDE_TOP)\stx\libui -I$(INCLUDE_TOP)\stx\libview
 LOCALDEFINES=
 
 STCLOCALOPT=-package=$(PACKAGE) -I. $(LOCALINCLUDES) -headerDir=. $(STCLOCALOPTIMIZATIONS) $(STCWARNINGS) $(LOCALDEFINES) $(COMMONSYMBOLS) -varPrefix=$(LIBNAME)
@@ -94,7 +94,7 @@
     -pushd $(LIBJPEG_DIR) & set "PATH=C:\MSYS64\usr\bin;C:\MINGW\MSYS\1.0\bin;C:\MSYS\1.0\bin;%%PATH%%" & IF EXIST makefile (make clean)
 
 $(OUTDIR)JPEGReader.$(O):: $(LIBJPEG_DIR)\$(LIBJPEG_TARGET)\jconfig.h
-$(LIBJPEG_DIR)\$(LIBJPEG_TARGET)\jconfig.h: $(LIBJPEG)  
+$(LIBJPEG_DIR)\$(LIBJPEG_TARGET)\jconfig.h: $(LIBJPEG)
 
 !else
 $(LIBJPEG):
@@ -102,7 +102,7 @@
     $(MAKE_BAT)
     cd ..\..\libview2
 $(OUTDIR)JPEGReader.$(O):: $(LIBJPEG_DIR)\jconfig.h
-$(LIBJPEG_DIR)\jconfig.h: $(LIBJPEG)  
+$(LIBJPEG_DIR)\jconfig.h: $(LIBJPEG)
 !endif
 
 
--- a/stx_libview2.st	Sun Feb 05 00:18:48 2017 +0000
+++ b/stx_libview2.st	Sat Sep 30 22:41:09 2017 +0100
@@ -126,7 +126,7 @@
 !!if defined(USEMINGW32) || defined(USEMINGW64)
 !! if defined(USEMINGW32)
 LIBJPEG_TARGET = i686-pc-mingw32
-!! else 
+!! else
 LIBJPEG_TARGET = x86_64-w64-mingw32
 !! endif
 LIBJPEG=$(LIBJPEG_DIR)\$(LIBJPEG_TARGET)\.libs\libjpeg.a
@@ -143,12 +143,38 @@
     "Modified: / 23-01-2017 / 12:09:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
+additionalDefinitions_make_dot_proto
+    ^ '
+# LIBJPEG_DIR=$(TOP)/support/libjpeg-6a
+LIBJPEG_DIR=$(TOP)/support/libjpeg-9
+
+# Following is a hack for Smalltalk/X jv-branch 6.x.x builds
+# that DO NOT use GNU target triplets as BUILD_TARGET.
+# So, normalize here:
+ifeq ($(BUILD_TARGET), linux-i386)
+LIBJPEG_TARGET = i686-pc-linux-gnu
+else
+ifeq ($(BUILD_TARGET), linux-x86_64)
+LIBJPEG_TARGET = x86_64-pc-linux-gnu
+else
+LIBJPEG_TARGET = $(BUILD_TARGET)
+endif
+endif
+LIBJPEG=$(LIBJPEG_DIR)/$(LIBJPEG_TARGET)/.libs/libjpeg.a
+
+'
+
+    "Created: / 24-09-2017 / 19:57:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
 additionalLinkLibraries_bc_dot_mak
     ^ '$(LIBJPEG)'
 !
 
 additionalLinkLibraries_make_dot_proto
-    ^ '$(JPEGLIB_LD_ARG)'
+    ^ '$(LIBJPEG)'
+
+    "Modified: / 24-09-2017 / 19:57:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 additionalRules_bc_dot_mak
@@ -168,7 +194,7 @@
     -pushd $(LIBJPEG_DIR) & set "PATH=C:\MSYS64\usr\bin;C:\MINGW\MSYS\1.0\bin;C:\MSYS\1.0\bin;%%PATH%%" & IF EXIST makefile (make clean)
 
 $(OUTDIR)JPEGReader.$(O):: $(LIBJPEG_DIR)\$(LIBJPEG_TARGET)\jconfig.h
-$(LIBJPEG_DIR)\$(LIBJPEG_TARGET)\jconfig.h: $(LIBJPEG)  
+$(LIBJPEG_DIR)\$(LIBJPEG_TARGET)\jconfig.h: $(LIBJPEG)
 
 !!else
 $(LIBJPEG):
@@ -176,66 +202,35 @@
     $(MAKE_BAT)
     cd ..\..\libview2
 $(OUTDIR)JPEGReader.$(O):: $(LIBJPEG_DIR)\jconfig.h
-$(LIBJPEG_DIR)\jconfig.h: $(LIBJPEG)  
+$(LIBJPEG_DIR)\jconfig.h: $(LIBJPEG)
 !!endif
 
 
 '
 
     "Created: / 22-08-2006 / 23:58:29 / cg"
-    "Modified: / 23-01-2017 / 12:19:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 24-09-2017 / 20:01:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 additionalRules_make_dot_proto
     ^ '
+$(LIBJPEG): $(LIBJPEG_DIR)/$(LIBJPEG_TARGET)/config.status
+        $(MAKE) -C $(LIBJPEG_DIR)/$(LIBJPEG_TARGET)
 
-libjpeg: $(LIBJPEG_DIR)/Makefile
-	cd $(LIBJPEG_DIR); $(MAKE) $(MAKE_JPEGLIB_ARG)
+$(LIBJPEG_DIR)/$(LIBJPEG_TARGET)/config.status:
+        mkdir -p $(LIBJPEG_DIR)/$(LIBJPEG_TARGET)
+        cd $(LIBJPEG_DIR)/$(LIBJPEG_TARGET) && CC="$(CC) $(CCCONFOPT)" ../configure --build=$(LIBJPEG_TARGET)
 
-#
-# prelink JPEGReader.o with libjpeg
-#
-JPEGReader_prelinked: $(LIBJPEG)
-	@$(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 $(CLASSLIB_LD) $(LD_REL_FLAG) -o JPEGReader.$(O) __JPEGReader.$(O) $(LIBJPEG); \
-	    mv JPEGReader.$(O) __JPEGReader.$(O) && \
-	    $(CLASSLIB_LD) $(LD_REL_FLAG) -o JPEGReader.$(O) __JPEGReader.$(O) $(LIBJPEG) && \
-	    rm -f __JPEGReader.$(O); \
-	    echo; \
-	fi
+clobber::
+        rm -rf $(LIBJPEG_DIR)/$(LIBJPEG_TARGET)
 
-$(LIBJPEG_DIR)/libjpeg.a: $(LIBJPEG_MAKE_LIB)
-	cp $(LIBJPEG_MAKE_LIB)/.libs/libjpeg.a $(LIBJPEG)
+clean::
+        if [ -f $(LIBJPEG_DIR)/$(LIBJPEG_TARGET)/Makefile ]; then make -C $(LIBJPEG_DIR)/$(LIBJPEG_TARGET) clean; fi
 
-#the following is needed for linux; LIBJPEG_MAKE_LIB is expanded to: $(LIBJPEG_DIR)/.libs/libjpeg.a
-#do not replace taget below by LIBJPEG_MAKE_LIB, because it may be empty for other systems (osx)
-$(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"
+    "Modified: / 24-09-2017 / 20:35:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 additionalTargets_bc_dot_mak
@@ -249,13 +244,14 @@
 additionalTargets_make_dot_proto
     "additional targets to be added to the make.proto file."
 
-    ^ '$(JPEGLIB_MAKE_TARGET) $(JPEGREADER_PRELINKED)'
+    ^ '$(LIBJPEG)'
 
     "Created: / 22-08-2006 / 23:54:37 / cg"
+    "Modified: / 24-09-2017 / 20:01:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 localIncludes
-    ^ '$(JPEG_INCLUDE)'
+    ^ '-I$(LIBJPEG_DIR)/$(LIBJPEG_TARGET) -I$(LIBJPEG_DIR)'
 !
 
 stcOptimizationOptions
--- a/stx_libview2WINrc.rc	Sun Feb 05 00:18:48 2017 +0000
+++ b/stx_libview2WINrc.rc	Sat Sep 30 22:41:09 2017 +0100
@@ -3,8 +3,8 @@
 // automagically generated from the projectDefinition: stx_libview2.
 //
 VS_VERSION_INFO VERSIONINFO
-  FILEVERSION     7,1,1,95
-  PRODUCTVERSION  7,1,0,0
+  FILEVERSION     6,2,32767,32767
+  PRODUCTVERSION  6,2,6,0
 #if (__BORLANDC__)
   FILEFLAGSMASK   VS_FF_DEBUG | VS_FF_PRERELEASE
   FILEFLAGS       VS_FF_PRERELEASE | VS_FF_SPECIALBUILD
@@ -20,12 +20,12 @@
     BEGIN
       VALUE "CompanyName", "Claus Gittinger / eXept Software AG\0"
       VALUE "FileDescription", "Smalltalk/X Additional Graphic Interfacing (LIB)\0"
-      VALUE "FileVersion", "7.1.1.95\0"
+      VALUE "FileVersion", "6.2.32767.32767\0"
       VALUE "InternalName", "stx:libview2\0"
       VALUE "LegalCopyright", "Copyright Claus Gittinger 1988\nCopyright eXept Software AG 2012\0"
       VALUE "ProductName", "Smalltalk/X\0"
-      VALUE "ProductVersion", "7.1.0.0\0"
-      VALUE "ProductDate", "Mon, 23 Jan 2017 10:00:29 GMT\0"
+      VALUE "ProductVersion", "6.2.6.0\0"
+      VALUE "ProductDate", "Sat, 30 Sep 2017 21:27:07 GMT\0"
     END
 
   END