Skip to contentSkip to conversation

ZNC: new package

PATCH New Cédric Chépied 3 participants 6 messages Jan 4, 2014 – Mar 7, 2014

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 ZNC: new package

ZNC is an IRC bouncer.
It is available in menu "Networking applications"

---
 package/Config.in     |  1 +
 package/znc/Config.in |  6 ++++++
 package/znc/znc.mk    | 22 ++++++++++++++++++++++
 3 files changed, 29 insertions(+)
 create mode 100644 package/znc/Config.in
 create mode 100644 package/znc/znc.mk
package/Config.in +1 -0
index 35de506..925a6bf 100644
@@ -936,6 +936,7 @@ source "package/wpa_supplicant/Config.in"
 source "package/wvdial/Config.in"
 source "package/xinetd/Config.in"
 source "package/xl2tp/Config.in"
+source "package/znc/Config.in"
 
 endmenu
 
package/znc/Config.in new file +6 -0
new file mode 100644
index 0000000..ef5db26
@@ -0,0 +1,6 @@
+config BR2_PACKAGE_ZNC
+       bool "znc"
+       select BR2_PACKAGE_OPENSSL
+       select BR2_PACKAGE_PERL
+       help
+         Advanced IRC bouncer
package/znc/znc.mk new file +22 -0
new file mode 100644
index 0000000..59d10f2
@@ -0,0 +1,22 @@
+ZNC_VERSION = 1.2
+ZNC_SOURCE = znc-$(ZNC_VERSION).tar.gz
+ZNC_SITE = http://znc.in/releases
+ACL_INSTALL_STAGING = YES
+
+# While the configuration system uses autoconf, the Makefiles are
+# hand-written and do not use automake. Therefore, we have to hack
+# around their deficiencies by passing installation paths.
+ACL_INSTALL_STAGING_OPT = 			\
+	prefix=$(STAGING_DIR)/usr 		\
+	exec_prefix=$(STAGING_DIR)/usr 		\
+	PKG_DEVLIB_DIR=$(STAGING_DIR)/usr/lib	\
+	install-dev install-lib
+
+ACL_INSTALL_TARGET_OPT = 			\
+	prefix=$(TARGET_DIR)/usr 		\
+	exec_prefix=$(TARGET_DIR)/usr 		\
+	install install-lib
+
+
+$(eval $(autotools-package))
+
Signature · 1 line
1.8.5.2
#1 lore raw

PATCH 1/1 ZNC: new package

Quoted 42 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"C?dric" == C?dric Ch?pied <[email protected]> writes:

ZNC is an IRC bouncer.
It is available in menu "Networking applications"

---
 package/Config.in     |  1 +
 package/znc/Config.in |  6 ++++++
 package/znc/znc.mk    | 22 ++++++++++++++++++++++
 3 files changed, 29 insertions(+)
 create mode 100644 package/znc/Config.in
 create mode 100644 package/znc/znc.mk
package/Config.in +1 -0
index 35de506..925a6bf 100644
@@ -936,6 +936,7 @@ source "package/wpa_supplicant/Config.in"
 source "package/wvdial/Config.in"
 source "package/xinetd/Config.in"
 source "package/xl2tp/Config.in"
+source "package/znc/Config.in"
 
 endmenu
 
package/znc/Config.in new file +6 -0
new file mode 100644
index 0000000..ef5db26
@@ -0,0 +1,6 @@
+config BR2_PACKAGE_ZNC
+       bool "znc"
+       select BR2_PACKAGE_OPENSSL
+       select BR2_PACKAGE_PERL
+       help
+         Advanced IRC bouncer
package/znc/znc.mk new file +0 -0
new file mode 100644
index 0000000..59d10f2

package/znc/znc.mk line 4

Quoted 4 lines
package/znc/znc.mk new file +4 -0
@@ -0,0 +1,22 @@
+ZNC_VERSION = 1.2
+ZNC_SOURCE = znc-$(ZNC_VERSION).tar.gz
+ZNC_SITE = http://znc.in/releases
+ACL_INSTALL_STAGING = YES

Why does it need to install into staging? It's a program and not a library, right?

Quoted 4 lines
package/znc/znc.mk new file +4 -0
+
+# While the configuration system uses autoconf, the Makefiles are
+# hand-written and do not use automake. Therefore, we have to hack
+# around their deficiencies by passing installation paths.

package/znc/znc.mk line 18

Quoted 10 lines
package/znc/znc.mk new file +10 -0
+ACL_INSTALL_STAGING_OPT = 			\
+	prefix=$(STAGING_DIR)/usr 		\
+	exec_prefix=$(STAGING_DIR)/usr 		\
+	PKG_DEVLIB_DIR=$(STAGING_DIR)/usr/lib	\
+	install-dev install-lib
+
+ACL_INSTALL_TARGET_OPT = 			\
+	prefix=$(TARGET_DIR)/usr 		\
+	exec_prefix=$(TARGET_DIR)/usr 		\
+	install install-lib

Out of interest, what does PKG_DEVLIB_DIR do and why don't we pass it for TARGET?

Signature · 1 line
Bye, Peter Korsgaard
#2 lore raw

PATCH 1/1 ZNC: new package

At Sun, 05 Jan 2014 11:07:47 +0100,

Quoted 15 lines · Peter Korsgaard

package/znc/znc.mk line 4

Quoted 12 lines
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines

"C?dric" == C?dric Ch?pied <[email protected]> writes:

package/znc/znc.mk new file +4 -0
new file mode 100644
index 0000000..59d10f2
@@ -0,0 +1,22 @@
+ZNC_VERSION = 1.2
+ZNC_SOURCE = znc-$(ZNC_VERSION).tar.gz
+ZNC_SITE = http://znc.in/releases
+ACL_INSTALL_STAGING = YES

Why does it need to install into staging? It's a program and not a library, right?

It does not. This is a bad copy/paste. I made this patch too quickly.

Quoted 11 lines
Quoted 11 lines
package/znc/znc.mk new file +9 -0
+
+# While the configuration system uses autoconf, the Makefiles are
+# hand-written and do not use automake. Therefore, we have to hack
+# around their deficiencies by passing installation paths.
+ACL_INSTALL_STAGING_OPT = 			\
+	prefix=$(STAGING_DIR)/usr 		\
+	exec_prefix=$(STAGING_DIR)/usr 		\
+	PKG_DEVLIB_DIR=$(STAGING_DIR)/usr/lib	\
+	install-dev install-lib
Quoted 8 lines

package/znc/znc.mk line 18

Quoted 5 lines
package/znc/znc.mk new file +5 -0
+
+ACL_INSTALL_TARGET_OPT = 			\
+	prefix=$(TARGET_DIR)/usr 		\
+	exec_prefix=$(TARGET_DIR)/usr 		\
+	install install-lib

Out of interest, what does PKG_DEVLIB_DIR do and why don't we pass it for TARGET?

Same remark, I'll fix it and submit a new patch.

Regards,

Signature · 2 lines
C?dric Ch?pied
<[email protected]>
#3 lore raw

PATCH 1/1 ZNC: new package

Dear C?dric Ch?pied,

Quoted 4 lines · C?dric Ch?pied
Quoted 2 lines

Out of interest, what does PKG_DEVLIB_DIR do and why don't we pass it for TARGET?

Same remark, I'll fix it and submit a new patch.

Do you plan on resending an updated version of your ZNC package? You received some comments on January 5th, but we haven't received a new version.

This new package would be an appreciated contribution, but if you want to see it accepted, you should resend regularly new versions that take into account the review comments made by the other Buildroot developers.

Thanks a lot!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#4 lore raw

PATCH 1/1 ZNC: new package

In reply to Cédric Chépied

Dear C?dric Ch?pied,

Quoted 28 lines · C?dric Ch?pied

ZNC is an IRC bouncer.
It is available in menu "Networking applications"

---
 package/Config.in     |  1 +
 package/znc/Config.in |  6 ++++++
 package/znc/znc.mk    | 22 ++++++++++++++++++++++
 3 files changed, 29 insertions(+)
 create mode 100644 package/znc/Config.in
 create mode 100644 package/znc/znc.mk
package/Config.in +1 -0
index 35de506..925a6bf 100644
@@ -936,6 +936,7 @@ source "package/wpa_supplicant/Config.in"
 source "package/wvdial/Config.in"
 source "package/xinetd/Config.in"
 source "package/xl2tp/Config.in"
+source "package/znc/Config.in"
 
 endmenu
 
package/znc/Config.in new file +0 -0
new file mode 100644
index 0000000..ef5db26

package/znc/Config.in line 6

Quoted 6 lines
package/znc/Config.in new file +6 -0
@@ -0,0 +1,6 @@
+config BR2_PACKAGE_ZNC
+       bool "znc"
+       select BR2_PACKAGE_OPENSSL
+       select BR2_PACKAGE_PERL
+       help
+         Advanced IRC bouncer

We generally want the URL of the project here in the help text. See what we do for all other packages.

Looking at the configure.ac from ZNC, it seems like the OpenSSL and Perl support is optional, and can be disabled using --disable-openssl and --disable-perl. It would probably be a good idea to use these to make these dependencies optional.

Also, your znc.mk should have ZNC_LICENSE and ZNC_LICENSE_FILES defined. Look at the Buildroot manual for details about these.

Thanks for your contribution!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#5 lore raw

PATCH 1/1 ZNC: new package

Dear Thomas,

At Tue, 28 Jan 2014 19:52:59 +0100,

Quoted 4 lines · Thomas Petazzoni

Looking at the configure.ac from ZNC, it seems like the OpenSSL and Perl support is optional, and can be disabled using --disable-openssl and --disable-perl. It would probably be a good idea to use these to make these dependencies optional.

When I try to enable perl, configure fails. It uses the perl executable to generate LDFLAGS but it does that with "my" executable (/usr/bin/perl) and then tries to link with /usr/lib/perl5/core_perl/CORE/libperl.so which of course fails.

For python, configure programs can use ./output/host/usr/bin/python2.7 but I can't find the same for perl. I only find perl compiled for my target.

How can I fix this?

Regards,

Signature · 2 lines
C?dric Ch?pied
<[email protected]>