Make.proto
changeset 26 398bad70619c
parent 25 463dd2575719
child 27 ceceb29d0bd5
--- a/Make.proto	Wed Aug 16 17:38:28 1995 +0200
+++ b/Make.proto	Fri Oct 27 21:33:41 1995 +0100
@@ -7,12 +7,13 @@
 SUBDIRS=
 
 RCSSOURCES=*.rc patches Make.proto
+LINKSOURCES=*.rc patches Make.proto
 
 #
 # other definitions to use for things compiled here
 #
 LOCALDEFS=-DDEBUG
-ST_LDFLAG=
+# ST_LDFLAG=
 
 #
 # see COMMON/defines for what those XXX_LIB etc. are
@@ -34,10 +35,10 @@
 # to the bitmaps subdirectory
 #
 BITMAPDIRS= \
-	$(LIBBASIC2DIR) $(LIBVIEWDIR) $(LIBWIDGDIR) $(LIBWIDG2DIR)              \
+	$(LIBBASIC2DIR) $(LIBVIEWDIR) $(LIBVIEW2DIR) $(LIBWIDGDIR) $(LIBWIDG2DIR) \
 	$(LIBWIDG3DIR) $(LIBTABLEDIR) $(LIBTOOLDIR) $(CLIENTDIR)/[A-Z]*         \
 	$(OTHERLIBDIRS)                                                         \
-	$(TOP)/fileIn $(TOP)/fileIn/* $(TOP)/goodies           			\
+	$(TOP)/fileIn $(TOP)/fileIn/* $(TOP)/goodies                            \
 	$(TOP)/goodies/* $(TOP)/goodies/*/*
 
 #
@@ -45,20 +46,20 @@
 # to the binary subdirectory
 #
 BINARYDIRS= \
-	$(LIBBASICDIR) $(LIBBASIC2DIR) $(LIBBASIC3DIR) $(LIBVIEWDIR) $(LIBWIDGDIR) \
+	$(LIBBASICDIR) $(LIBBASIC2DIR) $(LIBBASIC3DIR) $(LIBVIEWDIR) $(LIBVIEW2DIR) $(LIBWIDGDIR) \
 	$(LIBWIDG2DIR) $(LIBWIDG3DIR) $(LIBTOOLDIR) $(CLIENTDIR)/[A-Z]*         \
-	$(LIBCOMPDIR) $(LIBTABLEDIR) $(LIBPRODIR) $(LIBXTDIR) $(OTHERLIBDIRS)   \
+	$(LIBCOMPDIR) $(LIBTABLEDIR) $(LIBPRODIR) $(OTHERLIBDIRS)   \
 	$(TOP)/fileIn $(TOP)/libtomcat $(TOP)/goodies $(TOP)/goodies/*          \
-	$(TOP)/goodies/*/*
+	$(TOP)/goodies/*/* $(EXTRA_BINARYDIRS)
 
 #
 # directories from which source files are to be symlinked 
 # to the source subdirectory
 #
 SOURCEDIRS= \
-	$(LIBBASICDIR) $(LIBBASIC2DIR) $(LIBBASIC3DIR) $(LIBCOMPDIR) $(LIBVIEWDIR) \
+	$(LIBBASICDIR) $(LIBBASIC2DIR) $(LIBBASIC3DIR) $(LIBCOMPDIR) $(LIBVIEWDIR) $(LIBVIEW2DIR) \
 	$(LIBWIDGDIR) $(LIBWIDG2DIR) $(LIBWIDG3DIR) $(LIBTOOLDIR) $(CLIENTDIR)/[A-Z]* \
-	$(LIBTABLEDIR) $(LIBUIDIR) $(LIBPRODIR) $(LIBXTDIR) $(OTHERLIBDIRS)     \
+	$(LIBTABLEDIR) $(LIBUIDIR) $(LIBPRODIR) $(OTHERLIBDIRS)     \
 	$(TOP)/fileIn $(TOP)/libtomcat $(TOP)/goodies $(TOP)/goodies/*           \
 	$(TOP)/goodies/*/*
 
@@ -95,18 +96,19 @@
 #
 # the standard smalltalk executable:
 # basic classes + view & widgets + tools + persistency
-# persistency needs DBLIB
 #
 xsmalltalk:  $(TARGET)
 
 smalltalk:: $(TARGET)$(TARGET_RULE_EXTENSION)
 
 smalltalk_static:
-	    @$(MAKE) linkIt LIBOBJS="$(LIBOBJS) $(PERSOBJ)" EXTRA_OBJ="$(EXTRA_OBJ)"
+	    @echo "making statically linked smalltalk ..."
+	    @$(MAKE) linkIt LIBOBJS="$(LIBOBJS)" EXTRA_OBJ="$(EXTRA_OBJ)" LIBLIST="$(LIBLIST)"
 
 
 smalltalk_shared:
-	    @$(MAKE) linkIt LIBOBJS="$(LIBOBJS_SHARED) $(PERS_SO)" EXTRA_OBJ="$(EXTRA_OBJ)"
+	    @echo "making shared linked smalltalk ..."
+	    @$(MAKE) linkIt LIBOBJS="$(LIBOBJS)" EXTRA_OBJ="$(EXTRA_OBJ)" LIBLIST="$(LIBLIST)"
 
 #
 # a "smaller" smalltalk (does not include development classes)
@@ -115,12 +117,16 @@
 	    -rm modulList.stc
 	    @$(MAKE) modulList.stc \
 			      EXTRA_CLASSES="$(EXTRA_CLASSES) DebugView" \
-			      EXTRA_OBJ="$(EXTRA_OBJ) $(LIBTOOLDIR)/DebugView.so" \
+			      EXTRA_OBJ="$(EXTRA_OBJ) $(LIBTOOLDIR)/DebugView$(BIN_O)" \
 			      LIBLIST="$(FUNDAMENTAL_LIST)"
 	    @$(MAKE) smalltalk \
-			      EXTRA_OBJ="$(EXTRA_OBJ) $(LIBTOOLDIR)/DebugView.so" \
-			      LIBOBJS="$(FUNDAMENTAL_LIB)" \
-			      LIBOBJS_SHARED="$(FUNDAMENTAL_LIB_SHARED)"
+			      LIBLIST="$(FUNDAMENTAL_LIST)" \
+			      EXTRA_CLASSES="$(EXTRA_CLASSES) DebugView" \
+			      EXTRA_OBJ="$(EXTRA_OBJ) $(LIBTOOLDIR)/DebugView$(BIN_O)" \
+			      LIBOBJS="$(FUNDAMENTAL_LIB)"
+	    if [ ! -f binary/DebugView$(BIN_O) ]; then \
+		(cd binary ; ln -s ../../../libtool/DebugView.so .); \
+	    fi
 
 $(LIBTOOLDIR)/DebugView.so:
 	    (cd $(LIBTOOLDIR) ; $(MAKE) DebugView.so)
@@ -232,6 +238,9 @@
 	    -rm -f betaclassList.c miniList.c tinyList.c
 	    -rm -f pers* pers2 data data2 data.boss tetris.scores
 
+cleanlinks:
+	    -rm -rf source bitmaps binaries resources examples include
+
 #
 # clean out all that is not needed to run smalltalk
 #
@@ -275,6 +284,10 @@
 		(cd resources; $(LNS) ../$(LIBVIEWDIR)/resources/* .);                        \
 		rm -f resources/RCS;                                                          \
 	    fi
+	    -if [ "`echo $(LIBVIEW2DIR)/resources/*`" != '$(LIBVIEW2DIR)/resources/*' ]; then \
+		(cd resources; $(LNS) ../$(LIBVIEW2DIR)/resources/* .);                       \
+		rm -f resources/RCS;                                                          \
+	    fi
 	    -if [ "`echo $(LIBWIDGDIR)/resources/*`" != '$(LIBWIDGDIR)/resources/*' ]; then   \
 		(cd resources; $(LNS) ../$(LIBWIDGDIR)/resources/* .);                        \
 		rm -f resources/RCS;                                                          \
@@ -304,7 +317,7 @@
 		rm -f resources/RCS;                                                          \
 	    fi
 
-styles:	    resources
+styles:     resources
 	    -(cd resources; $(LNS) ../$(LIBVIEWDIR)/styles/* .)
 	    rm -f resources/RCS