updated to fix issues with building outside of bootstrap.
authorChris Koeritz <fred@gruntose.com>
Tue, 7 Feb 2012 02:35:41 +0000 (21:35 -0500)
committerChris Koeritz <fred@gruntose.com>
Tue, 7 Feb 2012 02:35:41 +0000 (21:35 -0500)
database/fortunes.dat
nucleus/makefile
production/codescan.ini
scripts/clam/cpp/get_version.sh
scripts/clam/cpp/rules.def
scripts/clam/cpp/variables.def
scripts/clam/variables.def
scripts/generator/build_variables.sh

index 5b2444ed0858e3748320b159131cd1bc553c8999..f1b609d03c696f429cbc7ff63903dc0723a57a88 100644 (file)
@@ -37429,3 +37429,22 @@ them before, and my "cornholio sense" is not tingling (a power I got from
 being bitten by a radioactive asshole), so I don't think they were jerks when
 I used them last time.
   -- fred t.  hamster
+~
+  External circumstances are not what draw us into suffering.  Suffering is
+caused and permitted by an untamed mind.  The appearance of self-defeating
+emotions in our minds leads us to faulty actions.  The naturally pure mind is
+covered over by these emotions and troubling conceptions.  The force of their
+deceit pushes us into faulty actions, which leads inevitably to suffering.
+  We need, with great awareness and care, to extinguish these problematic
+attitudes, the way gathering clouds dissolve back into the sphere of the sky.
+When our self-defeating attitudes, emotions, and conceptions cease, so will
+the harmful actions arising from them.
+  As the great Tibetan yogi Milarepa says, "When arising, arising within space
+itself; when dissolving, dissolving back into space."  We need to become
+familiar with the state of our own minds to understand how to dissolve ill-
+founded ideas and impulses back into the deeper sphere of reality.  The sky
+was there before the clouds gathered, and it will be after they have gone.  It
+is also present when the clouds seem to cover every inch of the sky we can
+see.(p.22)
+  -- H.H. the Dalai Lama, "How to Expand Love: Widening the Circle of Loving
+     Relationships", translated and edited by Jeffrey Hopkins
index 2334be05a5b7092faaac28e65d55c0e9f2e732eb..5e5c392a300605a0c0dfe6807d64088116799044 100644 (file)
@@ -1,7 +1,56 @@
+# Top-level makefile for library, application and test components.
+
 include variables.def
 
-PROJECT = core_modules
-BUILD_BEFORE = library applications tools
+# Set default locations for the following variables.  If the build_variables
+# have been sourced in, that takes care of setting these.
+ifeq "$(FEISTY_MEOW_DIR)" ""
+  export FEISTY_MEOW_DIR := $(CURRENT_DIR)
+endif
+ifeq "$(PRODUCTION_DIR)" ""
+  export PRODUCTION_DIR = $(FEISTY_MEOW_DIR)/production
+endif
+ifeq "$(CLAM_DIR)" ""
+  export CLAM_DIR = $(FEISTY_MEOW_SCRIPTS)/clam
+endif
+
+include $(CLAM_DIR)/cpp/variables.def
+
+PROJECT = feisty_meow_nucleus
+TYPE = hierarchy
+FIRST_TARGETS = do_make
+BUILD_AFTER = library applications tools
+
+include $(CLAM_DIR)/cpp/rules.def
+
+do_make: start_make $(PRODUCTION_DIR)/binaries/manifest.txt end_make
+
+start_make: show_date.start
+
+end_make: show_date.end
 
-include rules.def
+$(PRODUCTION_DIR)/binaries/manifest.txt: $(PARAMETER_FILE)
+       $(HIDESH) -c '\
+if [ ! -d "$(EXECUTABLE_DIR)" ]; then mkdir -p "$(EXECUTABLE_DIR)"; fi; \
+if [ $$? -ne 0 ]; then \
+  echo build failure while creating executable directory.; \
+  exit 1; \
+fi; \
+cp -f "$(PRODUCTION_DIR)/paths.ini" "$(EXECUTABLE_DIR)"; \
+if [ $$? -ne 0 ]; then \
+  echo build failure while copying paths initialization file.; \
+  exit 1; \
+fi; \
+echo cmd is: $(CLAM_BIN)/value_tagger$(EXE_END) $(PRODUCTION_DIR)/codescan.ini; \
+$(CLAM_BIN)/value_tagger$(EXE_END) $(PRODUCTION_DIR)/codescan.ini; \
+if [ $$? -ne 0 ]; then \
+  echo build failure during value tagging.; \
+  exit 1; \
+fi; \
+$(CLAM_BIN)/write_build_config$(EXE_END); \
+if [ $$? -ne 0 ]; then \
+  echo build failure while writing config.; \
+  exit 1; \
+fi; \
+  '
 
index 960395b1f09f12b335024b059042d0740b0846b2..295e0a93d87e964574bfc0eb5f4fcdeaee510619 100644 (file)
@@ -1,5 +1,5 @@
 [manifest]
-output=$BUILD_TOP/binaries/manifest.txt
+output=$BUILD_TOP/production/binaries/manifest.txt
 
 [searches]
 DEFINE_OUTCOME=1
index f1a8df506283a0b59d89736771430014dea9572e..50b9c70b1910a28d0b25cda2bf71d4824abe5c43 100755 (executable)
@@ -8,11 +8,14 @@ if [ "$COMPILER" = "GNU_LINUX" \
   # older code is needed for some versions of gcc / suse.
   ver_found=$(gcc -### 2>&1 | grep "gcc version" | sed -e 's/^gcc version \([0-9.][0-9.]*\) .*$/\1/')
 
-  if [ ! -d "/usr/include/c++/$ver_found" ]; then
-    # newest code takes only first two version numbers, since that's how
-    # suse 11.0 at least is listing the includes.
-    ver_found=$(gcc -### 2>&1 | grep "gcc version" | sed -e 's/^gcc version \([0-9.][0-9.]*\) .*$/\1/' | sed -e 's/\([0-9][0-9]*\)\.\([0-9][0-9]*\).*/\1.\2/')
-  fi
+#  if [ ! -d "/usr/include/c++/$ver_found" ]; then
+#      -a ! -d "/usr/include/c++/$ver_found" ]; then
+
+#    # newest code takes only first two version numbers, since that's how
+#    # suse 11.0 at least is listing the includes.
+#    ver_found=$(gcc -### 2>&1 | grep "gcc version" | sed -e 's/^gcc version \([0-9.][0-9.]*\) .*$/\1/' | sed -e 's/\([0-9][0-9]*\)\.\([0-9][0-9]*\).*/\1.\2/')
+
+#  fi
 
   echo "$ver_found"
 
index d7fa4b2e95d9091f3f571d44857eeb28fccf8386..02d3010c94e1a55b4dba513410efaf77639aeb4c 100644 (file)
@@ -691,7 +691,6 @@ else
        -$(HIDESH)$(CLAM_DIR)/cpp/preconditions.sh
        @touch $@
 #      @echo dep adds: $(DEPENDENCY_ADDITIONS)
-       @echo clam bin here is $(CLAM_BIN)
        @$(CLAM_BIN)/makedep$(EXE_END) $(DEPENDENCY_DEFINITIONS:%=-D%) $(DEPENDENCY_ADDITIONS) -f$@ -o.obj -p$(OBJECT_DIR)/ -w 420 $(COMPILER_HEADER_DIR:%=-X%) $(THIRD_PARTY_DIR:%=-X%) -- $(COMPILER_FLAGS) $(SOURCE) $(EXE_CPPS)
 #      $(CATCHER)$(CLAM_BIN)/makedep$(EXE_END) $(DEPENDENCY_DEFINITIONS:%=-D%) $(DEPENDENCY_ADDITIONS) -f$@ -o.obj -p$(OBJECT_DIR)/ -w 420 $(COMPILER_HEADER_DIR:%=-X%) $(THIRD_PARTY_DIR:%=-X%) -- $(COMPILER_FLAGS) $(SOURCE) $(EXE_CPPS)
        @echo $@ >$(SUBMAKE_FLAG)
index 56073eecb1508c80c9353d9d1f539945eca23a15..4a36911b338c49260a8cf8fa757de522c4ea4595 100644 (file)
@@ -11,7 +11,7 @@ ifneq "$(BUILD_PARAMETER_FILE)" ""
 endif
 ifeq "$(PARAMETER_FILE)" ""
   # last ditch attempt to get one that will work.
-  export PARAMETER_FILE = $(FEISTY_MEOW_DIR)/build.ini
+  export PARAMETER_FILE = $(PRODUCTION_DIR)/build.ini
 endif
 
 ###############################################################################
@@ -463,10 +463,7 @@ ifeq "$(COMPILER)" "GNU_LINUX"
   DEFINITIONS += _FILE_OFFSET_BITS=64 
 
   DEPENDENCY_DEFINITIONS += NO_VERSION
-  DEPENDENCY_ADDITIONS = -X/usr/include -X/usr/include/c++/$(COMPILER_VERSION) -X/usr/include/c++/$(COMPILER_VERSION)/tr1 -X/usr/local/include -X/usr/include/linux -X/usr/include/wx-2.8 -X/usr/lib/gcc/i586-suse-linux/$(COMPILER_VERSION)/include -X/usr/lib/gcc/i486-linux-gnu/$(COMPILER_VERSION)/include -X/usr/lib/gcc/i686-linux-gnu/$(COMPILER_VERSION)/include
-
-#protect other additions to make them only for debian?
-#  COMPILER_HEADER_DIR := /usr/include /usr/local/include 
+  DEPENDENCY_ADDITIONS = -X/usr/include -X/usr/include/c++/$(COMPILER_VERSION) -X/usr/include/c++/$(COMPILER_VERSION)/tr1 -X/usr/local/include -X/usr/include/linux -X/usr/include/wx-2.8 -X/usr/lib/gcc/i586-suse-linux/$(COMPILER_VERSION)/include -X/usr/lib/gcc/i486-linux-gnu/$(COMPILER_VERSION)/include -X/usr/lib/gcc/i686-linux-gnu/$(COMPILER_VERSION)/include -X/usr/lib/gcc/x86_64-linux-gnu/$(COMPILER_VERION)/include -X/usr/include/x86_64-linux-gnu
 
   # "USE_XWIN" specifies that this project needs X window system support.
   #USE_XWIN =
index 0157bec88d18b9b3326fb8ee3f313bda0002a449..8897d2c3799bc0c1756082aa5c0194cabe0da336 100644 (file)
@@ -69,14 +69,30 @@ export FEISTY_MEOW_DIR
 ifeq "$(FEISTY_MEOW_DIR)" ""
 #  FEISTY_MEOW_DIR = 
 #uhhh, use the current location?
+#currently we rely on this being set from shell bootstrapping.  is that bad?
+endif
+
+# "FEISTY_MEOW_SCRIPTS" is the root location of our scripts.  we expect to
+# be able to find a few things there reliably.
+export FEISTY_MEOW_SCRIPTS
+ifeq "$(FEISTY_MEOW_SCRIPTS)" ""
+  export FEISTY_MEOW_SCRIPTS := $(FEISTY_MEOW_DIR)/scripts
+endif
+
+# "PRODUCTION_DIR" is where the built products will be stored, plus any
+# temporary files that are generated during the build.
+export PRODUCTION_DIR
+ifeq "$(PRODUCTION_DIR)" ""
+  PRODUCTION_DIR=$(FEISTY_MEOW_DIR)/production
 endif
 
 # "CLAM_DIR" points at where the CLAM source files are located.  this is needed
 # for finding shell scripts used during compilation.  if you are not using the
 # standard CLAM location, then modify this appropriately.
 export CLAM_DIR
-# must be set externally!
-#export CLAM_DIR := $(FEISTY_MEOW_SCRIPTS)/clam
+ifeq "$(CLAM_DIR)" ""
+  export CLAM_DIR := $(FEISTY_MEOW_SCRIPTS)/clam
+endif
 
 # "TARGETS_DIR" is where all generated files will end up.  Usually the
 # files are put in a subdirectory named after their file type, such as
index f4fe4d92899f80ce90b2c952adeb7c9a16a44d04..571770098fa5ff4ede79c23704a3d297bd0117f1 100644 (file)
@@ -1,36 +1,36 @@
-###############################################################################
-#                                                                             #
-#  Name   : build variable calculator                                         #
-#  Author : Chris Koeritz                                                     #
-#                                                                             #
-#  Purpose:                                                                   #
-#                                                                             #
-#    This script sets up all the variables needed by the HOOPLE system for    #
-#  building the source code.  It can either be run as a bash script directly  #
-#  like so:                                                                   #
-#                                                                             #
-#      bash ~/feisty_meow/scripts/generator/build_variables.sh                #
-#                                                                             #
-#  which will establish a new shell containing all the variables, or you can  #
-#  'source' the script like so:                                               #
-#                                                                             #
-#      build_vars=~/feisty_meow/scripts/generator/build_variables.sh          #
-#      source $build_vars $build_vars                                         #
-#                                                                             #
-#  to set all of the variables in your current shell.  The full path is       #
-#  necessary in these commands to allow the script to easily find itself.     #
-#  The 'source' version needs to be fed the actual path to the script         #
-#  because bash 'source' commands cause the first parameter (called $0) to    #
-#  be set to just the path to bash itself.                                    #
-#                                                                             #
-###############################################################################
-# Copyright (c) 2004-$now By Author.  This program is free software; you can  #
-# redistribute it and/or modify it under the terms of the GNU General Public  #
-# License as published by the Free Software Foundation; either version 2 of   #
-# the License or (at your option) any later version.  This is online at:      #
-#     http://www.fsf.org/copyleft/gpl.html                                    #
-# Please send any updates to: fred@gruntose.com                               #
-###############################################################################
+##############
+#
+#  Name   : build variable calculator
+#  Author : Chris Koeritz
+#
+#  Purpose:
+#
+#    This script sets up all the variables needed by the HOOPLE system for
+#  building the source code.  It can either be run as a bash script directly
+#  like so:
+#
+#      bash ~/feisty_meow/scripts/generator/build_variables.sh
+#
+#  which will establish a new shell containing all the variables, or you can
+#  'source' the script like so:
+#
+#      build_vars=~/feisty_meow/scripts/generator/build_variables.sh
+#      source $build_vars $build_vars
+#
+#  to set all of the variables in your current shell.  The full path is
+#  necessary in these commands to allow the script to easily find itself.
+#  The 'source' version needs to be fed the actual path to the script
+#  because bash 'source' commands cause the first parameter (called $0) to
+#  be set to just the path to bash itself.
+#
+##############
+# Copyright (c) 2004-$now By Author.  This program is free software; you can
+# redistribute it and/or modify it under the terms of the GNU General Public
+# License as published by the Free Software Foundation; either version 2 of
+# the License or (at your option) any later version.  This is online at:
+#     http://www.fsf.org/copyleft/gpl.html
+# Please send any updates to: fred@gruntose.com
+##############
 
 # prerequisites for this script:
 #
@@ -69,11 +69,11 @@ function dos_to_msys_path() {
 #        of dos to msys etc live.
 # test suite for above functions.
 #echo this should go from msys to dos:
-#  prior='/c/bogart\dingle'
+#  prior='/c/bogart\dongle'
 #  latter=$(msys_to_dos_path "$prior")
 #  echo went from $prior to $latter
 #echo this should go from dos to msys:
-#  prior='D:\bogart\dingle'
+#  prior='D:\bogart\dongle'
 #  latter=$(dos_to_msys_path "$prior")
 #  echo went from $prior to $latter
 
@@ -91,12 +91,13 @@ else
   THIS_TOOL_NAME="$(basename "$PARM_0")"
 #echo bashed version buildscriptsdir is $BUILD_SCRIPTS_DIR
 fi
-BUILD_SCRIPTS_DIR="$(echo $BUILD_SCRIPTS_DIR | tr '\\\\' '/' )"
-#echo post tr buildscriptsdir is $BUILD_SCRIPTS_DIR
+BUILD_SCRIPTS_DIR="$(cd $(echo $BUILD_SCRIPTS_DIR | tr '\\\\' '/' ); \pwd)"
+#echo ">> buildscriptsdir is $BUILD_SCRIPTS_DIR"
 
 # figure out the other paths based on where we found this script.
 export BUILDING_HIERARCHY="$(echo "$BUILD_SCRIPTS_DIR" | sed -e 's/\(.*\)\/[^\/]*/\1/')"
-export CLAM_DIR="$BUILD_SCRIPTS_DIR/../clam"
+export CLAM_DIR="$(cd $BUILD_SCRIPTS_DIR/../clam ; \pwd)"
+#echo ">> clamdir is $CLAM_DIR"
 # synonym to make other builds happy.
 export BUILDER_DIR="$BUILDING_HIERARCHY"