On PG8.4/PG4.0: Only create non-ordered-aggregate hypothesis tests

Jira: MADLIB-584

With commit cbce131 even those hypothesis tests were installed on PostgreSQL 8.4 /
Greenplum 4.0 that need to be used as an ordered aggregate. Since ordered
aggregates are not available on these DBMSs, it is arguably more user-friendly to
not create these functions at all.
diff --git a/src/ports/postgres/modules/stats/hypothesis_tests.sql_in b/src/ports/postgres/modules/stats/hypothesis_tests.sql_in
index 7a1fca5..6bec5e5 100644
--- a/src/ports/postgres/modules/stats/hypothesis_tests.sql_in
+++ b/src/ports/postgres/modules/stats/hypothesis_tests.sql_in
@@ -10,6 +10,7 @@
  *//* ----------------------------------------------------------------------- */
 
 m4_include(`SQLCommon.m4')
+m4_changequote(<!,!>)
 
 /**
 @addtogroup grp_stats_tests
@@ -201,7 +202,7 @@
     SFUNC=MADLIB_SCHEMA.t_test_one_transition,
     STYPE=DOUBLE PRECISION[],
     FINALFUNC=MADLIB_SCHEMA.t_test_one_final,
-    m4_ifdef(`__GREENPLUM__',`prefunc=MADLIB_SCHEMA.t_test_merge_states,')
+    m4_ifdef(<!__GREENPLUM__!>,<!PREFUNC=MADLIB_SCHEMA.t_test_merge_states,!>)
     INITCOND='{0,0,0,0,0,0,0}'
 );
 
@@ -278,7 +279,7 @@
     SFUNC=MADLIB_SCHEMA.t_test_two_transition,
     STYPE=DOUBLE PRECISION[],
     FINALFUNC=MADLIB_SCHEMA.t_test_two_pooled_final,
-    m4_ifdef(`__GREENPLUM__',`prefunc=MADLIB_SCHEMA.t_test_merge_states,')
+    m4_ifdef(<!__GREENPLUM__!>,<!PREFUNC=MADLIB_SCHEMA.t_test_merge_states,!>)
     INITCOND='{0,0,0,0,0,0,0}'
 );
 
@@ -342,7 +343,7 @@
     SFUNC=MADLIB_SCHEMA.t_test_two_transition,
     STYPE=DOUBLE PRECISION[],
     FINALFUNC=MADLIB_SCHEMA.t_test_two_unpooled_final,
-    m4_ifdef(`__GREENPLUM__',`prefunc=MADLIB_SCHEMA.t_test_merge_states,')
+    m4_ifdef(<!__GREENPLUM__!>,<!PREFUNC=MADLIB_SCHEMA.t_test_merge_states,!>)
     INITCOND='{0,0,0,0,0,0,0}'
 );
 
@@ -397,7 +398,7 @@
     SFUNC=MADLIB_SCHEMA.t_test_two_transition,
     STYPE=DOUBLE PRECISION[],
     FINALFUNC=MADLIB_SCHEMA.f_test_final,
-    m4_ifdef(`__GREENPLUM__',`prefunc=MADLIB_SCHEMA.t_test_merge_states,')
+    m4_ifdef(<!__GREENPLUM__!>,<!PREFUNC=MADLIB_SCHEMA.t_test_merge_states,!>)
     INITCOND='{0,0,0,0,0,0,0}'
 );
 
@@ -528,7 +529,7 @@
     SFUNC=MADLIB_SCHEMA.chi2_gof_test_transition,
     STYPE=DOUBLE PRECISION[],
     FINALFUNC=MADLIB_SCHEMA.chi2_gof_test_final,
-    m4_ifdef(`__GREENPLUM__',`prefunc=MADLIB_SCHEMA.chi2_gof_test_merge_states,')
+    m4_ifdef(<!__GREENPLUM__!>,<!PREFUNC=MADLIB_SCHEMA.chi2_gof_test_merge_states,!>)
     INITCOND='{0,0,0,0,0,0}'
 );
 
@@ -539,7 +540,7 @@
     SFUNC=MADLIB_SCHEMA.chi2_gof_test_transition,
     STYPE=DOUBLE PRECISION[],
     FINALFUNC=MADLIB_SCHEMA.chi2_gof_test_final,
-    m4_ifdef(`__GREENPLUM__',`prefunc=MADLIB_SCHEMA.chi2_gof_test_merge_states,')
+    m4_ifdef(<!__GREENPLUM__!>,<!PREFUNC=MADLIB_SCHEMA.chi2_gof_test_merge_states,!>)
     INITCOND='{0,0,0,0,0,0,0}'
 );
 
@@ -549,7 +550,7 @@
     SFUNC=MADLIB_SCHEMA.chi2_gof_test_transition,
     STYPE=DOUBLE PRECISION[],
     FINALFUNC=MADLIB_SCHEMA.chi2_gof_test_final,
-    m4_ifdef(`__GREENPLUM__',`prefunc=MADLIB_SCHEMA.chi2_gof_test_merge_states,')
+    m4_ifdef(<!__GREENPLUM__!>,<!PREFUNC=MADLIB_SCHEMA.chi2_gof_test_merge_states,!>)
     INITCOND='{0,0,0,0,0,0,0}'
 );
 
@@ -625,8 +626,9 @@
  *     (<tt>ORDER BY \em value</tt>) and will raise an exception if values are
  *     not ordered.
  */
+m4_ifdef(<!__HAS_ORDERED_AGGREGATES__!>,<!
 CREATE
-m4_ifdef(`__GREENPLUM__',m4_ifdef(`__HAS_ORDERED_AGGREGATES__',`ORDERED'))
+m4_ifdef(<!__GREENPLUM__!>,<!ORDERED!>)
 AGGREGATE MADLIB_SCHEMA.ks_test(
     /*+ "first" */ BOOLEAN,
     /*+ "value" */ DOUBLE PRECISION,
@@ -638,7 +640,7 @@
     FINALFUNC=MADLIB_SCHEMA.ks_test_final,
     INITCOND='{0,0,0,0,0,0,0}'
 );
-
+!>)
 
 CREATE OR REPLACE FUNCTION MADLIB_SCHEMA.mw_test_transition(
     state DOUBLE PRECISION[],
@@ -713,8 +715,9 @@
  *     (<tt>ORDER BY \em value</tt>) and will raise an exception if values are
  *     not ordered.
  */
+m4_ifdef(<!__HAS_ORDERED_AGGREGATES__!>,<!
 CREATE
-m4_ifdef(`__GREENPLUM__',m4_ifdef(`__HAS_ORDERED_AGGREGATES__',`ORDERED'))
+m4_ifdef(<!__GREENPLUM__!>,<!ORDERED!>)
 AGGREGATE MADLIB_SCHEMA.mw_test(
     /*+ "first" */ BOOLEAN,
     /*+ "value" */ DOUBLE PRECISION
@@ -724,7 +727,7 @@
     FINALFUNC=MADLIB_SCHEMA.mw_test_final,
     INITCOND='{0,0,0,0,0,0,0}'
 );
-
+!>)
 
 CREATE OR REPLACE FUNCTION MADLIB_SCHEMA.wsr_test_transition(
     state DOUBLE PRECISION[],
@@ -840,8 +843,9 @@
  *     (<tt>ORDER BY abs(\em value</tt>)) and will raise an exception if the
  *     absolute values are not ordered.
  */
+m4_ifdef(<!__HAS_ORDERED_AGGREGATES__!>,<!
 CREATE
-m4_ifdef(`__GREENPLUM__',m4_ifdef(`__HAS_ORDERED_AGGREGATES__',`ORDERED'))
+m4_ifdef(<!__GREENPLUM__!>,<!ORDERED!>)
 AGGREGATE MADLIB_SCHEMA.wsr_test(
     /*+ "value" */ DOUBLE PRECISION,
     /*+ "precision" */ DOUBLE PRECISION /*+ DEFAULT -1 */
@@ -851,9 +855,11 @@
     FINALFUNC=MADLIB_SCHEMA.wsr_test_final,
     INITCOND='{0,0,0,0,0,0,0,0,0}'
 );
+!>)
 
+m4_ifdef(<!__HAS_ORDERED_AGGREGATES__!>,<!
 CREATE
-m4_ifdef(`__GREENPLUM__',m4_ifdef(`__HAS_ORDERED_AGGREGATES__',`ORDERED'))
+m4_ifdef(<!__GREENPLUM__!>,<!ORDERED!>)
 AGGREGATE MADLIB_SCHEMA.wsr_test(
     /*+ value */ DOUBLE PRECISION
 ) (
@@ -862,7 +868,7 @@
     FINALFUNC=MADLIB_SCHEMA.wsr_test_final,
     INITCOND='{0,0,0,0,0,0,0,0,0}'
 );
-
+!>)
 
 CREATE TYPE MADLIB_SCHEMA.one_way_anova_result AS (
     sum_squares_between DOUBLE PRECISION,
@@ -960,6 +966,8 @@
     SFUNC=MADLIB_SCHEMA.one_way_anova_transition,
     STYPE=DOUBLE PRECISION[],
     FINALFUNC=MADLIB_SCHEMA.one_way_anova_final,
-    m4_ifdef(`__GREENPLUM__',`prefunc=MADLIB_SCHEMA.one_way_anova_merge_states,')
+    m4_ifdef(<!__GREENPLUM__!>,<!PREFUNC=MADLIB_SCHEMA.one_way_anova_merge_states,!>)
     INITCOND='{0,0}'
 );
+
+m4_changequote(<!`!>,<!'!>)