[prev in list] [next in list] [prev in thread] [next in thread] 

List:       ulogd
Subject:    [ulogd] Deprecated build methods in ulogd
From:       Aurelien Bompard <aurelien () bompard ! org>
Date:       2007-08-15 9:58:02
Message-ID: 200708151158.02846.aurelien () bompard ! org
[Download RAW message or body]

Hi all,

I'm packaging ulogd for Fedora. On our development release, ulogd 1.24 
failed to build for what looks like deprecated build methods.
Two problems were found :

 - The linking of the DSOs is done with ld -shared instead of gcc -shared.
It can be fixed by simply running the following substitution command:
perl -pi -e 's/\(LD\) -shared/(CC) \$(CFLAGS) \$(LDFLAGS) -shared/g' \
  */Makefile.in

 - The way of getting the DSO initializers run is deprecated too, the 
attached patch fixes it.

Please consider these changes for inclusion into ulogd.

Thanks a lot

Aurélien
-- 
http://aurelien.bompard.org  ~~~~  Jabber : abompard@jabber.fr
If you plan for one year, plant rice.
If you plan for ten years, plant trees.
If you plan for 100 years, educate people.
 -- Chinese proverb

["ulogd-1.24-initializers.patch" (text/x-diff)]

--- ./pcap/ulogd_PCAP.c.initializers	2005-11-25 20:58:25.000000000 +0100
+++ ./pcap/ulogd_PCAP.c	2007-08-14 23:18:45.000000000 +0200
@@ -276,7 +276,7 @@ static ulog_output_t pcap_op = {
 	.signal = &pcap_signal_handler,
 };
 
-void _init(void)
+static void __attribute__((constructor)) init_pcap(void)
 {
 	if (get_ids()) {
 		ulogd_log(ULOGD_ERROR, "can't resolve all keyhash id's\n");
--- ./sqlite3/ulogd_SQLITE3.c.initializers	2005-11-25 20:58:25.000000000 +0100
+++ ./sqlite3/ulogd_SQLITE3.c	2007-08-14 23:18:22.000000000 +0200
@@ -405,7 +405,7 @@ static ulog_output_t _sqlite3_plugin = {
 	.fini = &_sqlite3_fini,
 };
 
-void _init(void) 
+static void __attribute__((constructor)) init_sqlite3(void) 
 {
 	register_output(&_sqlite3_plugin);
 }
--- ./pgsql/ulogd_PGSQL.c.initializers	2006-01-23 00:07:10.000000000 +0100
+++ ./pgsql/ulogd_PGSQL.c	2007-08-14 23:17:54.000000000 +0200
@@ -458,7 +458,7 @@ static ulog_output_t pgsql_plugin = { 
 	.fini = &pgsql_fini,
 };
 
-void _init(void)
+static void __attribute__((constructor)) init_pgsql(void)
 {
 	register_output(&pgsql_plugin);
 }
--- ./extensions/ulogd_LOGEMU.c.initializers	2005-11-25 20:58:26.000000000 +0100
+++ ./extensions/ulogd_LOGEMU.c	2007-08-14 23:16:04.000000000 +0200
@@ -130,7 +130,7 @@ static ulog_output_t logemu_op = { 
 	.signal = &signal_handler_logemu,
 };
 
-void _init(void)
+static void __attribute__((constructor)) logemu__init(void)
 {
 	register_output(&logemu_op);
 }
--- ./extensions/ulogd_PWSNIFF.c.initializers	2005-11-25 20:58:26.000000000 +0100
+++ ./extensions/ulogd_PWSNIFF.c	2007-08-14 23:16:04.000000000 +0200
@@ -151,7 +151,7 @@ static ulog_interpreter_t base_ip[] = { 
 	{ NULL, "", 0, NULL, 0, NULL }, 
 };
 
-static void _base_reg_ip(void)
+static void __attribute__((constructor)) _base_reg_ip(void)
 {
 	ulog_interpreter_t *ip = base_ip;
 	ulog_interpreter_t *p;
@@ -159,9 +159,3 @@ static void _base_reg_ip(void)
 	for (p = ip; p->interp; p++)
 		register_interpreter(p);
 }
-
-
-void _init(void)
-{
-	_base_reg_ip();
-}
--- ./extensions/ulogd_SYSLOG.c.initializers	2006-01-25 12:14:09.000000000 +0100
+++ ./extensions/ulogd_SYSLOG.c	2007-08-14 23:16:04.000000000 +0200
@@ -140,7 +140,7 @@ static ulog_output_t syslog_op = { 
 };
 
 
-void _init(void)
+static void __attribute__((constructor)) init_syslog(void)
 {
 	if (printpkt_init())
 		ulogd_log(ULOGD_ERROR, "can't resolve all keyhash id's\n");
--- ./extensions/ulogd_OPRINT.c.initializers	2005-11-25 20:58:26.000000000 +0100
+++ ./extensions/ulogd_OPRINT.c	2007-08-14 23:16:04.000000000 +0200
@@ -138,7 +138,8 @@ static ulog_output_t oprint_op = {
 	.fini = &oprint_fini,
 };
 
-void _init(void)
+__attribute__ ((constructor))
+static void init_oprint(void)
 {
 	register_output(&oprint_op);
 }
--- ./extensions/ulogd_BASE.c.initializers	2007-08-14 23:16:04.000000000 +0200
+++ ./extensions/ulogd_BASE.c	2007-08-14 23:16:04.000000000 +0200
@@ -540,6 +540,7 @@ static ulog_interpreter_t base_ip[] = {
 	{ NULL, "", 0, NULL, 0, NULL }, 
 };
 
+__attribute__ ((constructor))
 void _base_reg_ip(void)
 {
 	ulog_interpreter_t *ip = base_ip;
@@ -549,8 +550,3 @@ void _base_reg_ip(void)
 		register_interpreter(p);
 	}
 }
-
-void _init(void)
-{
-	_base_reg_ip();
-}
--- ./extensions/ulogd_LOCAL.c.initializers	2005-11-25 20:58:26.000000000 +0100
+++ ./extensions/ulogd_LOCAL.c	2007-08-14 23:16:04.000000000 +0200
@@ -84,7 +84,7 @@ static void _local_reg_ip(void)
 		register_interpreter(p);
 }
 
-void _init(void)
+static void __attribute__((constructor)) local_init(void)
 {
 	/* get hostname */
 	char *tmp;
--- ./mysql/ulogd_MYSQL.c.initializers	2005-11-25 20:58:27.000000000 +0100
+++ ./mysql/ulogd_MYSQL.c	2007-08-14 23:17:31.000000000 +0200
@@ -448,7 +448,7 @@ static ulog_output_t mysql_plugin = { 
 	.fini = &_mysql_fini,
 };
 
-void _init(void) 
+static void __attribute__((constructor)) init_mysql(void) 
 {
 	register_output(&mysql_plugin);
 }


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic