Index: bin/Compile
===================================================================
RCS file: /sources/goboscripts/tools/Compile/bin/Compile,v
retrieving revision 1.101
diff -u -r1.101 Compile
--- bin/Compile	2 Aug 2006 19:07:36 -0000	1.101
+++ bin/Compile	3 Aug 2006 22:31:03 -0000
@@ -376,7 +376,6 @@
 [ -f "$bakedrecipedir/Recipe" ] || Die "$bakedrecipedir/Recipe not found"
 recipe=$bakedrecipedir/Recipe
 
-
 ##################################################
 # Check if we are cross-compiling
 ##################################################
@@ -524,6 +523,16 @@
 
 ! Boolean "no-build" && Log_Normal "Compiling $app version $version."
 
+# Backwards compability fix
+[ "$is_compileprogram" = "yes" ] && recipe_type="configure"
+[ "$is_makefile" = "yes" ] && recipe_type="makefile"
+[ "$is_python" = "yes" ] && recipe_type="python"
+[ "$is_perl" = "yes" ] && recipe_type="perl"
+[ "$is_xmkmf" = "yes" ] && recipe_type="xmkmf"
+[ "$is_meta" = "yes" ] && recipe_type="meta"
+[ "$is_scons" = "yes" ] && recipe_type="scons"
+[ "$is_manifest" = "yes" ] && recipe_type="manifest"
+
 ##################################################
 # Set up enviroment
 ##################################################
@@ -580,7 +589,7 @@
    fi
 '
 
-if [ "$is_meta" = "yes" ]
+if [ "$recipe_type" = "meta" ]
 then
    wrapup
    exit 0
@@ -655,7 +664,7 @@
 ##################################################
 if [ "$goboCrossCompiling" = "yes" ]
 then
-   if [ "$is_compileprogram" = "yes" ] && config_is_autoconf
+   if [ "$recipe_type" = "configure" ] && config_is_autoconf
    then cross_array=configure_options
    else cross_array=compileMakeOptions
    fi
@@ -864,7 +873,7 @@
 # Compile!
 ##################################################
 
-if [ "$is_compileprogram" = "yes" ]
+if [ "$recipe_type" = "configure" ]
 then
    eval `combine_arrays config configure_options userconfigureoptions`
    [ "$configure" ] || configure="./configure"
@@ -939,7 +948,7 @@
    eval `combine_arrays opts python_options default_python_options`
 }
 
-if [ "$is_python" = "yes" ]
+if [ "$recipe_type" = "python" ]
 then
    Boolean "batch" || Ask_Continue "This recipe uses the experimental Python target. Proceed?"
    [ "$PYTHONPATH" ] || Die "Environment variable PYTHONPATH is not set. Set it to something like '.:/System/Links/Libraries/python2.3/site-packages'."
@@ -976,7 +985,7 @@
 
 ##################################################
 
-if [ "$is_perl" = "yes" ]
+if [ "$recipe_type" = "perl" ]
 then
    [ "$PERL5LIB" ] || {
       export PERL5LIB="/System/Links/Libraries/perl5/site_perl/$(basename $(readlink -f /Programs/Perl/Current))/"
@@ -1033,7 +1042,7 @@
 
 ##################################################
 
-if [ "$is_makefile" = "yes" ]
+if [ "$recipe_type" = "makefile" ]
 then
    build_tree_if "$create_dirs_first" = "yes"
    if ! [ "$do_build" = "no" ]
@@ -1054,7 +1063,7 @@
 
 ##################################################
 
-if [ "$is_xmkmf" = "yes" ]
+if [ "$recipe_type" = "xmkmf" ]
 then
    is_function_set pre_build && pre_build
    xmkmf
@@ -1088,7 +1097,7 @@
 
 ##################################################
 
-if [ "$is_scons" = "yes" ]
+if [ "$recipe_type" = "scons" ]
 then
    [ "$scons" ] || scons="scons"
    if [ ! "$override_default_options" = "yes" ]
@@ -1116,7 +1125,7 @@
 
 # Manifest mode is experimental.
 
-if [ "$is_manifest" = "yes" ]
+if [ "$recipe_type" = "manifest" ]
 then
    build_tree_if "true"
    is_function_set pre_install && pre_install
Index: bin/RecipeLint
===================================================================
RCS file: /sources/goboscripts/tools/Compile/bin/RecipeLint,v
retrieving revision 1.13
diff -u -r1.13 RecipeLint
--- bin/RecipeLint	2 Aug 2006 18:05:38 -0000	1.13
+++ bin/RecipeLint	3 Aug 2006 22:31:04 -0000
@@ -470,7 +470,7 @@
    settings_target="${goboPrograms}/$name/Settings"
    variable_target="${goboPrograms}/$name/Variable"
    source Recipe
-   [ "$is_meta" = "yes" ] && {
+   [ "$recipe_type" = "meta" ] && {
       for inc in "${include[@]}"
       do
          msg "Checking include $inc..."
@@ -498,10 +498,18 @@
       ERROR "No download location specified in recipe."
    }
    msg "Checking recipe declarations..."
-   [ "$is_compileprogram" -o "$is_makefile" -o "$is_python" \
-     -o "$is_perl" -o "$is_xmkmf" -o "$is_manifest" ] || {
-      ERROR "Recipe type is not declared."
+   if [ ! "$recipe_type" ]
+   then
+   {
+       if [ "$is_compileprogram" -o "$is_makefile" -o "$is_python" -o "$is_perl" \
+            -o "$is_xmkmf" -o "$is_meta" -o "$is_manifest" ]
+       then
+           WARN "Recipe type is declarated in deprecated style."
+       else
+           ERROR "Recipe type is not declared."
+       fi
    }
+   fi
    if [ "$compile_version" ]
    then
       echo "$compile_version" | grep -qi "CVS" && {
@@ -534,21 +542,21 @@
       esac
    fi
    declarations=(
-      configure_options=compileprogram
-      autogen_before_configure=compileprogram
-      build_variables=compileprogram,makefile
-      install_variables=compileprogram,makefile
-      make_variables=compileprogram,makefile
-      configure=compileprogram
-      makefile=compileprogram,makefile,xmkmf
-      build_target=compileprogram,makefile,xmkmf,python
-      install_target=compileprogram,makefile,xmkmf,python
+      configure_options=configure
+      autogen_before_configure=configure
+      build_variables=configure,makefile
+      install_variables=configure,makefile
+      make_variables=configure,makefile
+      configure=configure
+      makefile=configure,makefile,xmkmf
+      build_target=configure,makefile,xmkmf,python
+      install_target=configure,makefile,xmkmf,python
       do_build=makefile,python
       do_install=makefile,xmkmf,python
-      needs_build_directory=compileprogram
+      needs_build_directory=configure
       manifest=manifest
       without=perl
-      create_dirs_first=compileprogram,makefile,perl
+      create_dirs_first=configure,makefile,perl
       python_options=python
       override_default_options=python
       build_script=python
@@ -564,7 +572,7 @@
          eval "ok=no
          for mode in $dtypes
          do
-            eval '[ \"\$$dname\" -a \"\$is_'\$mode'\" == \"yes\" ] && { ok=yes; break; }'
+            eval '[ \"\$$dname\" -a \"\$recipe_type\" == \"'\$mode'\" ] && { ok=yes; break; }'
          done
          [ \$ok = yes ] || {
             ERROR \"Declaration $dname not valid in this recipes' mode.\"
@@ -659,5 +667,5 @@
    }
 }
 
-cat Recipe | grep -q "is_meta=yes" || test_resources
+cat Recipe | grep -q "recipe_type=meta" || test_resources
 
Index: bin/NewVersion
===================================================================
RCS file: /sources/goboscripts/tools/Compile/bin/NewVersion,v
retrieving revision 1.6
diff -u -r1.6 NewVersion
--- bin/NewVersion	30 May 2006 21:59:05 -0000	1.6
+++ bin/NewVersion	3 Aug 2006 22:31:04 -0000
@@ -105,6 +105,11 @@
 
 rm Recipe.old
 
+# convert old recipe type to new recipe type
+# recipe type compileprogram is renamed to configure
+sed -i 's/is_\(.*\)=.*/recipe_type=\1/
+s/compileprogram/configure/' Recipe
+
 # TODO: support for arch-specific recipe
 . Recipe
 
Index: bin/MakeRecipe
===================================================================
RCS file: /sources/goboscripts/tools/Compile/bin/MakeRecipe,v
retrieving revision 1.21
diff -u -r1.21 MakeRecipe
--- bin/MakeRecipe	20 Jul 2006 13:37:54 -0000	1.21
+++ bin/MakeRecipe	3 Aug 2006 22:31:04 -0000
@@ -223,18 +223,18 @@
 || grep -q "configure.ac$" "$file_contents"
 then
    Log_Normal "$packagename $versionnumber build system seems to be based on Autoconf."
-   echo "is_compileprogram=yes" >> "$recipedir/Recipe"
+   echo "recipe_type=configure" >> "$recipedir/Recipe"
    if ! grep -q "configure$" "$file_contents"
    then echo "autogen_before_configure=yes" >> "$recipedir/Recipe"
    fi
 elif grep -q "/configure$" "$file_contents"
 then
    Log_Terse "$packagename $versionnumber build system seems to have a non-Autoconf configure. You may need to add the configure_options flag."
-   echo "is_compileprogram=yes" >> "$recipedir/Recipe"
+   echo "recipe_type=configure" >> "$recipedir/Recipe"
 elif grep -q "Makefile.PL$" "$file_contents" || grep -q "Build.PL$" "$file_contents" 
 then
    Log_Normal "$packagename $versionnumber seems to be a Perl module."
-   echo "is_perl=yes" >> "$recipedir/Recipe"
+   echo "recipe_type=perl" >> "$recipedir/Recipe"
    perlprefixed="$genRecipeRecipeDir/Perl-$packagename"
    notprefixed=$(readlink -f "$recipedir/..")
    if [ -e "$perlprefixed" ]
@@ -248,22 +248,22 @@
 elif grep -q "Imakefile$" "$file_contents"
 then
    Log_Normal "$packagename $versionnumber build system seems to be based on imake."
-   echo "is_xmkmf=yes" >> "$recipedir/Recipe"
+   echo "recipe_type=xmkmf" >> "$recipedir/Recipe"
 elif grep -q "SConstruct$" "$file_contents"
 then
    Log_Normal "$packagename $versionnumber build system seems to be based on SCons."
-   echo "is_scons=yes" >> "$recipedir/Recipe"
+   echo "recipe_type=scons" >> "$recipedir/Recipe"
 elif ! cat "$file_contents" | cut -d"/" -f 1-2 | grep -iq makefile && \
        grep -q "\.py$" "$file_contents"
 then
    Log_Normal "$packagename $versionnumber build system seems to be based on Python."
-   echo "is_python=yes" >> "$recipedir/Recipe"
+   echo "recipe_type=python" >> "$recipedir/Recipe"
 else
    basemakefile=`grep -i "^[^/]*/Makefile$" "$file_contents" 2>/dev/null`
    if [ "$basemakefile" ]
    then
       Log_Normal "$packagename $versionnumber build system seems to be based on Makefiles."
-      echo "is_makefile=yes" >> "$recipedir/Recipe"
+      echo "recipe_type=makefile" >> "$recipedir/Recipe"
       aunpack "$file" "$basemakefile"
       if [ "$basemakefile" != "Makefile" ]
       then echo "makefile='$(basename $basemakefile)'" >> "$recipedir/Recipe"
