Make.proto
changeset 8 d82829c0d867
parent 7 57c09d1b7f69
child 9 21b40e49db9d
--- a/Make.proto	Mon Oct 10 04:36:13 1994 +0100
+++ b/Make.proto	Mon Nov 21 18:37:56 1994 +0100
@@ -27,16 +27,36 @@
 STARTUP_CLASS="Smalltalk"
 STARTUP_SELECTOR="start"
 
+# ----------------------- additional libraries ---------------
+#
+# additional (private libraries):
+#
+PRIVATEOBJ=
+# and/or (if you use shared libs)
+PRIVATE_SO=
+# and the baseName (without .obj/.so)
+PRIVATELIBS=
+
+# for example, if you have a libprivate directory,
+# where libprivate.obj is built,
+# change above lines to:
+#    PRIVATEOBJ=$(TOP)/libprivate/libprivate.obj
+#    PRIVATE_SO=$(TOP)/libprivate/libprivate.so
+#    PRIVATELIBS=libprivate
+
+# ---------------------- end additional stuff --------------------
+
+
 #
 # default target: create the TARGET (usually smalltalk),
 #                 create subdirectories with source-links, bitmap-links and resource-links
 #
-all::       $(TARGET) resources styles newSource bitmaps binary include
+all::       $(TARGET) resources styles newSource bitmaps binary include misc
 
 #
 # same, force recreation of link-directories
 #
-allNew:     $(TARGET) newResources styles newSource newBitmaps binary include
+allNew:     $(TARGET) newResources styles newSource newBitmaps binary include misc
 
 #
 # the standard smalltalk executable:
@@ -46,10 +66,12 @@
 smalltalk:  $(TARGET)
 
 smalltalk_static:
-	    $(MAKE) linkIt LIBOBJS="$(STANDARD_LIB) $(PERSOBJ)"
+	    $(MAKE) linkIt LIBOBJS="$(STANDARD_LIB) $(PERSOBJ) $(PRIVATEOBJS)"
+
 
 smalltalk_shared:           
-	    $(MAKE) linkIt LIBOBJS="$(STANDARD_LIB_SHARED) $(PERS_SO)"
+	    $(MAKE) linkIt LIBOBJS="$(STANDARD_LIB_SHARED) $(PERS_SO) $(PRIVATE_SO)"
+
 
 linkIt:     main.$(O) $(LIBOBJS) $(LIBRUN) $(EXTRA_LIBS) $(EXTRA_OBJ)
 	    @-echo "Making classList ..."
@@ -82,6 +104,7 @@
 		CLASSLIBRARIES="                                \
 		    $(LIBLIST)                                  \
 		    $(OTHERLIBRARIES)                           \
+		    $(PRIVATELIBS)                              \
 		"                                               \
 		CLASSLISTS="                                    \
 		    $(EXTRACLASSLISTS)                          \
@@ -159,6 +182,13 @@
 include:
 	    -mkdir include
 	    -(cd include; $(LNS) ../$(INCLUDE)/abbrev.stc .)
+	    rm -f include/RCS
+
+misc:       examples
+
+examples:
+	    -mkdir examples examples/3D
+	    -(cd examples/3D; $(LNS) ../../$(TOP)/clients/GLdemos/*.data .)
 
 #
 # make a new binary subdirectory
@@ -222,43 +252,56 @@
 bitmaps:
 	    -mkdir bitmaps
 	    -if [ "`echo $(LIBVIEWDIR)/bitmaps/*`" != '$(LIBVIEWDIR)/bitmaps/*' ]; then \
-		(cd bitmaps; $(LNS) ../$(LIBVIEWDIR)/bitmaps/* .)                       \
+		(cd bitmaps; $(LNS) ../$(LIBVIEWDIR)/bitmaps/* .);                      \
+		(cd bitmaps; rm -f RCS)                                                 \
 	    fi
 	    -if [ "`echo $(LIBWIDGDIR)/bitmaps/*`" != '$(LIBWIDGDIR)/bitmaps/*' ]; then \
-		(cd bitmaps; $(LNS) ../$(LIBWIDGDIR)/bitmaps/* .)                       \
+		(cd bitmaps; $(LNS) ../$(LIBWIDGDIR)/bitmaps/* .);                      \
+		(cd bitmaps; rm -f RCS)                                                 \
 	    fi
 	    -if [ "`echo $(LIBWIDG2DIR)/bitmaps/*`" != '$(LIBWIDG2DIR)/bitmaps/*' ]; then \
-		(cd bitmaps; $(LNS) ../$(LIBWIDG2DIR)/bitmaps/* .)                      \
+		(cd bitmaps; $(LNS) ../$(LIBWIDG2DIR)/bitmaps/* .);                     \
+		(cd bitmaps; rm -f RCS)                                                 \
 	    fi
 	    -if [ "`echo $(LIBWIDG3DIR)/bitmaps/*`" != '$(LIBWIDG3DIR)/bitmaps/*' ]; then \
-		(cd bitmaps; $(LNS) ../$(LIBWIDG3DIR)/bitmaps/* .)                      \
+		(cd bitmaps; $(LNS) ../$(LIBWIDG3DIR)/bitmaps/* .);                     \
+		(cd bitmaps; rm -f RCS)                                                 \
 	    fi
 	    -if [ "`echo $(LIBTOOLDIR)/bitmaps/*`" != '$(LIBTOOLDIR)/bitmaps/*' ]; then \
-		(cd bitmaps; $(LNS) ../$(LIBTOOLDIR)/bitmaps/* .)                       \
+		(cd bitmaps; $(LNS) ../$(LIBTOOLDIR)/bitmaps/* .);                      \
+		(cd bitmaps; rm -f RCS)                                                 \
 	    fi
 	    -if [ "`echo $(CLIENTDIR)/A*/bitmaps/*`" != '$(CLIENTDIR)/A*/bitmaps/*' ]; then \
-		(cd bitmaps; $(LNS) ../$(CLIENTDIR)/A*/bitmaps/* .)                     \
+		(cd bitmaps; $(LNS) ../$(CLIENTDIR)/A*/bitmaps/* .);                    \
+		(cd bitmaps; rm -f RCS)                                                 \
 	    fi
 	    -if [ "`echo $(CLIENTDIR)/[B-C]*/bitmaps/*`" != '$(CLIENTDIR)/[B-C]*/bitmaps/*' ]; then \
-		(cd bitmaps; $(LNS) ../$(CLIENTDIR)/[B-C]*/bitmaps/* .)                 \
+		(cd bitmaps; $(LNS) ../$(CLIENTDIR)/[B-C]*/bitmaps/* .);                \
+		(cd bitmaps; rm -f RCS)                                                 \
 	    fi
 	    -if [ "`echo $(CLIENTDIR)/D[a-q]*/bitmaps/*`" != '$(CLIENTDIR)/D[a-q]*/bitmaps/*' ]; then \
-		(cd bitmaps; $(LNS) ../$(CLIENTDIR)/D[a-q]*/bitmaps/* .)                \
+		(cd bitmaps; $(LNS) ../$(CLIENTDIR)/D[a-q]*/bitmaps/* .);               \
+		(cd bitmaps; rm -f RCS)                                                 \
 	    fi
 	    -if [ "`echo $(CLIENTDIR)/D[r-z]*/bitmaps/*`" != '$(CLIENTDIR)/D[r-z]*/bitmaps/*' ]; then \
-		(cd bitmaps; $(LNS) ../$(CLIENTDIR)/D[r-z]*/bitmaps/* .)                \
+		(cd bitmaps; $(LNS) ../$(CLIENTDIR)/D[r-z]*/bitmaps/* .);               \
+		(cd bitmaps; rm -f RCS)                                                 \
 	    fi
 	    -if [ "`echo $(CLIENTDIR)/[E-Z]*/bitmaps/*`" != '$(CLIENTDIR)/[E-Z]*/bitmaps/*' ]; then \
-		(cd bitmaps; $(LNS) ../$(CLIENTDIR)/[E-Z]*/bitmaps/* .)                 \
+		(cd bitmaps; $(LNS) ../$(CLIENTDIR)/[E-Z]*/bitmaps/* .);                \
+		(cd bitmaps; rm -f RCS)                                                 \
 	    fi
 	    -if [ "`echo $(TOP)/fileIn/bitmaps/*`" != '$(TOP)/fileIn/bitmaps/*' ]; then \
-		(cd bitmaps; $(LNS) ../$(TOP)/fileIn/bitmaps/* .)                               \
+		(cd bitmaps; $(LNS) ../$(TOP)/fileIn/bitmaps/* .);                              \
+		(cd bitmaps; rm -f RCS)                                                 \
 	    fi
 	    -if [ "`echo $(TOP)/fileIn/*/bitmaps/*`" != '$(TOP)/fileIn/*/bitmaps/*' ]; then \
-		(cd bitmaps; $(LNS) ../$(TOP)/fileIn/*/bitmaps/* .)                             \
+		(cd bitmaps; $(LNS) ../$(TOP)/fileIn/*/bitmaps/* .);                            \
+		(cd bitmaps; rm -f RCS)                                                 \
 	    fi
 	    -if [ "`echo $(TOP)/goodies/bitmaps/*`" != '$(TOP)/goodies/bitmaps/*' ]; then \
-		(cd bitmaps; $(LNS) ../$(TOP)/goodies/bitmaps/* .)                              \
+		(cd bitmaps; $(LNS) ../$(TOP)/goodies/bitmaps/* .);                       \
+		(cd bitmaps; rm -f RCS)                                                 \
 	    fi
 
 #
@@ -286,7 +329,7 @@
 # clean out all that can be regenerated
 #
 clobber::
-	    -rm -rf resources source bitmaps changes
+	    -rm -rf resources source bitmaps changes include examples
 	    -rm -f smalltalk minitalk tinytalk st.img
 	    -rm -f main.o
 
@@ -299,20 +342,48 @@
 
 resources: 
 	    -mkdir resources
-	    -cp $(LIBBASICDIR)/resources/*.rs resources
-	    -cp $(LIBVIEWDIR)/resources/*.rs resources
-	    -cp $(LIBWIDGDIR)/resources/*.rs resources
-	    -cp $(LIBWIDG2DIR)/resources/*.rs resources
-	    -cp $(LIBWIDG3DIR)/resources/*.rs resources
-	    -cp $(LIBTOOLDIR)/resources/*.rs resources
-	    -cp $(TOP)/fileIn/resources/*.rs resources
-	    -cp $(CLIENTDIR)/*/resources/*.rs resources
+	    -if [ "`echo $(LIBBASICDIR)/resources/*`" != '$(LIBBASICDIR)/resources/*' ]; then \
+		(cd resources; $(LNS) ../$(LIBBASICDIR)/resources/* .);                       \
+		rm -f resources/RCS;                                                          \
+	    fi
+	    -if [ "`echo $(LIBVIEWDIR)/resources/*`" != '$(LIBVIEWDIR)/resources/*' ]; then   \
+		(cd resources; $(LNS) ../$(LIBVIEWDIR)/resources/* .);                        \
+		rm -f resources/RCS;                                                          \
+	    fi
+	    -if [ "`echo $(LIBWIDGDIR)/resources/*`" != '$(LIBWIDGDIR)/resources/*' ]; then   \
+		(cd resources; $(LNS) ../$(LIBWIDGDIR)/resources/* .);                        \
+		rm -f resources/RCS;                                                          \
+	    fi
+	    -if [ "`echo $(LIBWIDG2DIR)/resources/*`" != '$(LIBWIDG2DIR)/resources/*' ]; then \
+		(cd resources; $(LNS) ../$(LIBWIDG2DIR)/resources/* .);                       \
+		rm -f resources/RCS;                                                          \
+	    fi
+	    -if [ "`echo $(LIBWIDG3DIR)/resources/*`" != '$(LIBWIDG3DIR)/resources/*' ]; then \
+		(cd resources; $(LNS) ../$(LIBWIDG3DIR)/resources/* .);                       \
+		rm -f resources/RCS;                                                          \
+	    fi
+	    -if [ "`echo $(LIBTOOLDIR)/resources/*`" != '$(LIBTOOLDIR)/resources/*' ]; then   \
+		(cd resources; $(LNS) ../$(LIBTOOLDIR)/resources/* .);                        \
+		rm -f resources/RCS;                                                          \
+	    fi
+	    -if [ "`echo $(TOP)/fileIn/resources/*`" != '$(TOP)/fileIn/resources/*' ]; then   \
+		(cd resources; $(LNS) ../$(TOP)/fileIn/resources/* .);                        \
+		rm -f resources/RCS;                                                          \
+	    fi
+	    -if [ "`echo $(CLIENTDIR)/*/resources/*`" != '$(CLIENTDIR)/*/resources/*' ]; then \
+		(cd resources; $(LNS) ../$(CLIENTDIR)/*/resources/* .);                       \
+		rm -f resources/RCS;                                                          \
+	    fi
 
 styles:
-	    -cp $(LIBVIEWDIR)/styles/* resources
+	    -(cd resources; $(LNS) ../$(LIBVIEWDIR)/styles/* .)
+	    rm -f resources/RCS
 
 $(TARGET):  $(INCLUDE)/stc.h $(INCLUDE)/stcIntern.h 
 
+rcsdiff::
+	    rcsdiff *.rc patches
+
 #
 # installation rules
 #