Add eggdrop from #3980
authorFlorian Fainelli <florian@openwrt.org>
Tue, 28 Oct 2008 23:08:11 +0000 (23:08 +0000)
committerFlorian Fainelli <florian@openwrt.org>
Tue, 28 Oct 2008 23:08:11 +0000 (23:08 +0000)
SVN-Revision: 13071

lang/eggdrop/Makefile [new file with mode: 0644]
lang/eggdrop/patches/001-makefile_in.patch [new file with mode: 0644]
lang/eggdrop/patches/002-eggdrop_h.patch [new file with mode: 0644]
lang/eggdrop/patches/003-language_c.patch [new file with mode: 0644]
lang/eggdrop/patches/004-main_c.patch [new file with mode: 0644]

diff --git a/lang/eggdrop/Makefile b/lang/eggdrop/Makefile
new file mode 100644 (file)
index 0000000..34525b3
--- /dev/null
@@ -0,0 +1,57 @@
+# 
+# Copyright (C) 2008 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=eggdrop
+PKG_VERSION:=1.6.17
+PKG_RELEASE:=1
+
+PKG_SOURCE:=eggdrop$(PKG_VERSION).tar.bz2
+PKG_SOURCE_URL:=ftp://ftp.eggheads.org/pub/eggdrop/source/1.6
+PKG_MD5SUM:=68e181201483dee398f9904e8652e6ca
+PKG_CAT:=bzcat
+
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)$(PKG_VERSION)
+PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/eggdrop
+  SECTION:=lang
+  CATEGORY:=Language
+  TITLE:=EggDrop IRC BOT
+  DEPENDS:=+tcl
+  URL:=http://www.eggheads.org
+endef
+
+define Package/eggdrop/description
+       EggDrop IRC BOT
+endef
+
+CONFIGURE_ARGS+=\
+       --prefix="$(PKG_INSTALL_DIR)/eggdrop" \
+       --enable-threads \
+       --with-tcllib="$(STAGING_DIR)/usr/lib/libtcl8.4.so" \
+       --with-tclinc="$(STAGING_DIR)/usr/include/tcl.h"
+
+define Build/Compile
+       $(MAKE) config -C $(PKG_BUILD_DIR)
+       $(MAKE) -C $(PKG_BUILD_DIR) \
+               DESTDIR="$(PKG_INSTALL_DIR)" \
+               all install; \
+       rm -Rvf $(PKG_INSTALL_DIR)/eggdrop/doc/*;\
+       rmdir $(PKG_INSTALL_DIR)/eggdrop/doc;
+endef
+
+
+define Package/eggdrop/install
+       $(INSTALL_DIR) $(1)/eggdrop
+       $(CP) $(PKG_INSTALL_DIR)/* $(1)/eggdrop
+endef
+
+$(eval $(call BuildPackage,eggdrop))
diff --git a/lang/eggdrop/patches/001-makefile_in.patch b/lang/eggdrop/patches/001-makefile_in.patch
new file mode 100644 (file)
index 0000000..8c09c41
--- /dev/null
@@ -0,0 +1,11 @@
+--- eggdrop/Makefile.in        2004-07-25 07:17:33.000000000 -0400
++++ eggdrop-patched/Makefile.in        2005-05-01 04:33:56.890000000 -0400
+@@ -71,7 +71,7 @@
+ modconf = $(top_srcdir)/misc/modconfig --top_srcdir=$(top_srcdir)
+-egg_test_run = EGG_LANGDIR=$(top_srcdir)/language ./$(EGGEXEC) -v
++egg_test_run = EGG_LANGDIR=$(top_srcdir)/language #./$(EGGEXEC) -v
+ post_config  =  echo "" && \
+               echo "You can now compile the bot, using \"make\"." && \
diff --git a/lang/eggdrop/patches/002-eggdrop_h.patch b/lang/eggdrop/patches/002-eggdrop_h.patch
new file mode 100644 (file)
index 0000000..311b63c
--- /dev/null
@@ -0,0 +1,12 @@
+--- eggdrop/src/eggdrop.h      2008-09-08 21:09:57.000000000 +0100
++++ eggdrop-patched/src/eggdrop.h      2008-09-08 21:11:46.000000000 +0100
+@@ -218,9 +218,6 @@
+ #  define sigemptyset(x) ((*(int *)(x))=0)
+ #endif
+-#ifndef HAVE_SOCKLEN_T
+-typedef int socklen_t;
+-#endif
+ /*
+  *    Handy aliases for memory tracking and core dumps
diff --git a/lang/eggdrop/patches/003-language_c.patch b/lang/eggdrop/patches/003-language_c.patch
new file mode 100644 (file)
index 0000000..d67d4fc
--- /dev/null
@@ -0,0 +1,25 @@
+--- eggdrop/src/language.c     2004-04-06 07:56:38.000000000 +0100
++++ eggdrop-patched/src/language.c     2008-09-08 23:24:34.000000000 +0100
+@@ -240,8 +240,19 @@
+ #else
+         if (sscanf(lbuf, "0x%x,%500c", &lidx, ltext) != 2) {
+ #endif
+-          putlog(LOG_MISC, "*", "Malformed text line in %s at %d.",
+-                 langfile, lline);
++        ltexts++;
++          ctmp = strchr(ltext, '\n');
++          *ctmp = 0;
++          while (ltext[strlen(ltext) - 1] == '\\') {
++            ltext[strlen(ltext) - 1] = 0;
++            if (fgets(lbuf, 511, FLANG)) {
++              lline++;
++              ctmp = strchr(lbuf, '\n');
++              *ctmp = 0;
++              ltext = nrealloc(ltext, strlen(lbuf) + strlen(ltext) + 1);
++              strcpy(strchr(ltext, 0), lbuf);
++            }
++        }
+         } else {
+           ltexts++;
+           ctmp = strchr(ltext, '\n');
+
diff --git a/lang/eggdrop/patches/004-main_c.patch b/lang/eggdrop/patches/004-main_c.patch
new file mode 100644 (file)
index 0000000..ad263cd
--- /dev/null
@@ -0,0 +1,14 @@
+--- eggdrop/src/main.c 2004-07-02 22:21:08.000000000 +0100
++++ eggdrop/src/main-patched/main.c    2008-09-08 21:37:18.000000000 +0100
+@@ -792,8 +792,8 @@
+   printf("\n%s\n", version);
+   /* Don't allow eggdrop to run as root */
+-  if (((int) getuid() == 0) || ((int) geteuid() == 0))
+-    fatal("ERROR: Eggdrop will not run as root!", 0);
++  if (((int) getuid() == 666) || ((int) geteuid() == 666))
++    fatal("ERROR: Eggdrop will not run the devil!", 0);
+   init_dcc_max();
+   init_userent();
+