CLEANUP: compression: use the build options list to report the algos

This removes 2 #ifdef, an include, an ugly construct and a wild "extern"
declaration from haproxy.c. The message indicating that compression is
*not* enabled is not there anymore.
diff --git a/src/compression.c b/src/compression.c
index 02ff724..4ce26ec 100644
--- a/src/compression.c
+++ b/src/compression.c
@@ -624,8 +624,26 @@
 __attribute__((constructor))
 static void __comp_fetch_init(void)
 {
+	char *ptr = NULL;
+	int i;
+
 #ifdef USE_SLZ
 	slz_make_crc_table();
 	slz_prepare_dist_table();
 #endif
+#ifdef USE_ZLIB
+	memprintf(&ptr, "Built with zlib version : " ZLIB_VERSION);
+	memprintf(&ptr, "%s\nRunning on zlib version : %s", ptr, zlibVersion());
+#elif defined(USE_SLZ)
+	memprintf(&ptr, "Built with libslz for stateless compression.");
+#endif
+	memprintf(&ptr, "%s\nCompression algorithms supported :", ptr);
+
+	for (i = 0; comp_algos[i].cfg_name; i++)
+		memprintf(&ptr, "%s%s %s(\"%s\")", ptr, (i == 0 ? "" : ","), comp_algos[i].cfg_name, comp_algos[i].ua_name);
+
+	if (i == 0)
+		memprintf(&ptr, "%s none", ptr);
+
+	hap_register_build_opts(ptr, 1);
 }
diff --git a/src/haproxy.c b/src/haproxy.c
index 54221be..074cc5b 100644
--- a/src/haproxy.c
+++ b/src/haproxy.c
@@ -78,7 +78,6 @@
 #include <common/version.h>
 
 #include <types/capture.h>
-#include <types/compression.h>
 #include <types/filters.h>
 #include <types/global.h>
 #include <types/acl.h>
@@ -127,12 +126,6 @@
 #include <import/51d.h>
 #endif
 
-/*********************************************************************/
-
-extern const struct comp_algo comp_algos[];
-
-/*********************************************************************/
-
 /* list of config files */
 static struct list cfg_cfgfiles = LIST_HEAD_INIT(cfg_cfgfiles);
 int  pid;			/* current process id */
@@ -340,27 +333,6 @@
 #endif
 		"\n");
 
-#ifdef USE_ZLIB
-	printf("Built with zlib version : " ZLIB_VERSION "\n");
-	printf("Running on zlib version : %s\n", zlibVersion());
-#elif defined(USE_SLZ)
-	printf("Built with libslz for stateless compression.\n");
-#else /* USE_ZLIB */
-	printf("Built without compression support (neither USE_ZLIB nor USE_SLZ are set)\n");
-#endif
-	printf("Compression algorithms supported :");
-	{
-		int i;
-
-		for (i = 0; comp_algos[i].cfg_name; i++) {
-			printf("%s %s(\"%s\")", (i == 0 ? "" : ","), comp_algos[i].cfg_name, comp_algos[i].ua_name);
-		}
-		if (i == 0) {
-			printf("none");
-		}
-	}
-	printf("\n");
-
 	list_for_each_entry(item, &build_opts_list, list) {
 		puts(item->str);
 	}