aboutsummaryrefslogtreecommitdiff
path: root/network/irssi_otr
diff options
context:
space:
mode:
authorB. Watson <yalhcru@gmail.com>2015-05-10 14:52:50 -0400
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2015-05-17 23:45:47 +0700
commit700869b6058460c8204434054c41f6ee97e7e357 (patch)
tree7e20e4c89633113d5716f7d307337f3da4d0443c /network/irssi_otr
parentc1ecfa697889c1796bfa60eef2503321c74beb54 (diff)
network/irssi_otr: Updated for version 1.0.0.
Diffstat (limited to 'network/irssi_otr')
-rw-r--r--network/irssi_otr/README12
-rw-r--r--network/irssi_otr/irssi_otr.SlackBuild118
-rw-r--r--network/irssi_otr/irssi_otr.info12
-rw-r--r--network/irssi_otr/slack-desc6
-rw-r--r--network/irssi_otr/xchat/README2
-rw-r--r--network/irssi_otr/xchat/xchat-plugin.h334
6 files changed, 39 insertions, 445 deletions
diff --git a/network/irssi_otr/README b/network/irssi_otr/README
index c3a9b564591c..62aee9b5535d 100644
--- a/network/irssi_otr/README
+++ b/network/irssi_otr/README
@@ -1,12 +1,10 @@
-irssi_otr (Off-the-Record Messaging (OTR) for IRC clients)
+irssi_otr (OTR plugin for irssi)
-Off-the-Record Messaging (OTR) plugin for xchat and irssi
+Off-the-Record Messaging (OTR) plugin for the irssi IRC client
To use OTR within irssi, install this package, then "/load libotr"
and "/otr help" for usage instructions. Also see the README in
-/usr/doc/irssi_otr-$VERSION. To use with xchat, see also README.xchat.
+/usr/doc/irssi_otr-$VERSION.
-Note: The xchat plugin is automatically loaded when xchat starts.
-
-Either irssi or xchat support can be disabled by setting one of IRSSI=no
-or XCHAT=no in the script's environment. It's an error to disable both.
+irssi_otr formerly had support for xchat, but it was removed by
+upstream. Be aware of this when upgrading.
diff --git a/network/irssi_otr/irssi_otr.SlackBuild b/network/irssi_otr/irssi_otr.SlackBuild
index c95c59c4b02d..c085bb460915 100644
--- a/network/irssi_otr/irssi_otr.SlackBuild
+++ b/network/irssi_otr/irssi_otr.SlackBuild
@@ -6,29 +6,15 @@
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
-# 20130326 bkw:
-# - Use a private copy of libotr 3.x, statically built.
-# Needed because SBo libotr has upgraded to 4.0, which this
-# plugin won't build with. Removed libotr from REQUIRES in .info file.
-# - Add xchat support (upstream already supported it, no patching needed)
-# - Better template compliance (cmake in a build dir, actually use SLKCFLAGS)
-# - Bumped BUILD to 2
-
-# For anyone that gets tempted to try the latest git irssi-otr code, here's
-# what I found when I messed with a git checkout from 20130326:
-
-# Pros: libotr 4.0 is supported
-# weechat support has been added
-# Cons: xchat support is totally broken
-# irssi segfaults on plugin load, unless the plugin is built with -O0
-# the weechat support doesn't work without patching
-
-# In view of the above, I decided to stick with the irssi_otr 0.3 release.
-# Sorry, weechat users.
+# 20150510 bkw:
+# - updated for 1.0.0.
+# - 1.0.0 uses libotr-4.x, so rip out all the static linking mess.
+# - upstream switched from cmake to autoconf, rewrite most of script.
+# - xchat support was dropped by upstream, so remove all references.
PRGNAM=irssi_otr
-VERSION=${VERSION:-0.3}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-1.0.0}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
@@ -59,47 +45,12 @@ else
fi
TARNAM=$( echo $PRGNAM | sed 's/_/-/g' )
-LIBOTR_VERSION=3.2.1
-
-IRSSI=${IRSSI:-yes}
-IRSSI_PLUGIN="libotr.so"
-IRSSI_PLUGIN_DIR=$PKG/usr/lib$LIBDIRSUFFIX/irssi/modules
-
-XCHAT=${XCHAT:-yes}
-XCHAT_PLUGIN="libxchatotr.so"
-XCHAT_PLUGIN_DIR=$PKG/usr/lib$LIBDIRSUFFIX/xchat/plugins
-
-if [ "$IRSSI" != "yes" -a "$XCHAT" != "yes" ]; then
- echo "Can't build with both irssi and xchat disabled (nothing to build)" 2>&1
- exit 1
-fi
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-
-# First, build our static libotr3. It won't get installed as part of
-# the package.
-rm -rf libotr-$LIBOTR_VERSION
-tar xvf $CWD/libotr-$LIBOTR_VERSION.tar.gz
-cd libotr-$LIBOTR_VERSION
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure --prefix=$( pwd )/installed \
- --enable-static \
- --disable-shared \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --build=$ARCH-slackware-linux
-
-make
-make install
-
-# Now we can build irssi_otr.
-cd $TMP
rm -rf $TARNAM-$VERSION
tar xvf $CWD/$TARNAM-$VERSION.tar.gz
cd $TARNAM-$VERSION
@@ -110,49 +61,32 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-mkdir build
-cd build
-
-if [ "$IRSSI" = "yes" ]; then
- CLIENTS=" irssi"
- cmake -DCMAKE_C_FLAGS_RELEASE="$SLKCFLAGS" \
- -DCMAKE_BUILD_TYPE="release" \
- -DLIBOTR_INCLUDE_DIR=$TMP/libotr-$LIBOTR_VERSION/installed/include \
- -DLIBOTR_LIBRARY=$TMP/libotr-$LIBOTR_VERSION/installed/lib/libotr.a \
- ..
- make
-
- # Easier to manually install than to coerce cmake's install
- # target into using LIBDIRSUFFIX
- mkdir -p $IRSSI_PLUGIN_DIR
- install -s -o root -g root -m 0755 $IRSSI_PLUGIN $IRSSI_PLUGIN_DIR
-fi
+# irssi module dir is hardcoded to lib.
+sed -i "/^IRSSI_MODULE_DIR/s,lib,lib$LIBDIRSUFFIX," configure.ac
-if [ "$XCHAT" = "yes" ]; then
- CLIENTS="$CLIENTS xchat"
- rm -rf *
- sed -i 's,irssi,xchat,' ../tarballdefs.cmake
- cmake -DCMAKE_C_FLAGS_RELEASE="$SLKCFLAGS" \
- -DCMAKE_BUILD_TYPE="release" \
- -DLIBOTR_INCLUDE_DIR=$TMP/libotr-$LIBOTR_VERSION/installed/include \
- -DLIBOTR_LIBRARY=$TMP/libotr-$LIBOTR_VERSION/installed/lib/libotr.a \
- -DXCHAT_INCLUDE_DIR=$CWD \
- ..
-
- make
- mkdir -p $XCHAT_PLUGIN_DIR
- install -s -o root -g root -m 0755 $XCHAT_PLUGIN $XCHAT_PLUGIN_DIR
-fi
+./bootstrap
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --build=$ARCH-slackware-linux
-cd ..
+make
+make install-strip DESTDIR=$PKG
+# AUTHORS is a 0-byte placeholder.
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a LICENSE README ChangeLog *.txt $PKG/usr/doc/$PRGNAM-$VERSION
-[ "$XCHAT" = "yes" ] && cp -a README.xchat $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a ChangeLog LICENSE README* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
-sed "s/@CLIENTS@/$CLIENTS/" $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/network/irssi_otr/irssi_otr.info b/network/irssi_otr/irssi_otr.info
index a32bb3f440b2..63a625667bee 100644
--- a/network/irssi_otr/irssi_otr.info
+++ b/network/irssi_otr/irssi_otr.info
@@ -1,12 +1,10 @@
PRGNAM="irssi_otr"
-VERSION="0.3"
-HOMEPAGE="http://irssi-otr.tuxfamily.org/"
-DOWNLOAD="ftp://download.tuxfamily.org/irssiotr/irssi-otr-0.3.tar.gz \
- http://www.cypherpunks.ca/otr/libotr-3.2.1.tar.gz"
-MD5SUM="e3d46a31955470dd3fa0f6392c1dcfb4 \
- 974acf937d2ce0ee89b27a9815c17a3f"
+VERSION="1.0.0"
+HOMEPAGE="https://github.com/cryptodotis/irssi-otr"
+DOWNLOAD="https://github.com/cryptodotis/irssi-otr/archive/v1.0.0.tar.gz"
+MD5SUM="e3d46a31955470dd3fa0f6392c1dcfb4"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="libotr"
MAINTAINER="B. Watson"
EMAIL="yalhcru@gmail.com"
diff --git a/network/irssi_otr/slack-desc b/network/irssi_otr/slack-desc
index f77ab091a7f6..5267033488bf 100644
--- a/network/irssi_otr/slack-desc
+++ b/network/irssi_otr/slack-desc
@@ -6,11 +6,11 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-irssi_otr: irssi_otr (OTR plugin for IRC clients)
+irssi_otr: irssi_otr (OTR plugin for irssi)
+irssi_otr:
+irssi_otr: Off-the-Record Messaging (OTR) plugin for the irssi IRC client
irssi_otr:
-irssi_otr: Off-the-Record Messaging (OTR) plugin for xchat and irssi
irssi_otr:
-irssi_otr: This package was built with support for:@CLIENTS@
irssi_otr:
irssi_otr:
irssi_otr:
diff --git a/network/irssi_otr/xchat/README b/network/irssi_otr/xchat/README
deleted file mode 100644
index 72a3cb8d5079..000000000000
--- a/network/irssi_otr/xchat/README
+++ /dev/null
@@ -1,2 +0,0 @@
-# Yes, this is used in the build script:
-# -DXCHAT_INCLUDE_DIR=$CWD
diff --git a/network/irssi_otr/xchat/xchat-plugin.h b/network/irssi_otr/xchat/xchat-plugin.h
deleted file mode 100644
index 30b19295c5da..000000000000
--- a/network/irssi_otr/xchat/xchat-plugin.h
+++ /dev/null
@@ -1,334 +0,0 @@
-/* You can distribute this header with your plugins for easy compilation */
-#ifndef XCHAT_PLUGIN_H
-#define XCHAT_PLUGIN_H
-
-#include <time.h>
-
-#define XCHAT_IFACE_MAJOR 1
-#define XCHAT_IFACE_MINOR 9
-#define XCHAT_IFACE_MICRO 11
-#define XCHAT_IFACE_VERSION ((XCHAT_IFACE_MAJOR * 10000) + \
- (XCHAT_IFACE_MINOR * 100) + \
- (XCHAT_IFACE_MICRO))
-
-#define XCHAT_PRI_HIGHEST 127
-#define XCHAT_PRI_HIGH 64
-#define XCHAT_PRI_NORM 0
-#define XCHAT_PRI_LOW (-64)
-#define XCHAT_PRI_LOWEST (-128)
-
-#define XCHAT_FD_READ 1
-#define XCHAT_FD_WRITE 2
-#define XCHAT_FD_EXCEPTION 4
-#define XCHAT_FD_NOTSOCKET 8
-
-#define XCHAT_EAT_NONE 0 /* pass it on through! */
-#define XCHAT_EAT_XCHAT 1 /* don't let xchat see this event */
-#define XCHAT_EAT_PLUGIN 2 /* don't let other plugins see this event */
-#define XCHAT_EAT_ALL (XCHAT_EAT_XCHAT|XCHAT_EAT_PLUGIN) /* don't let anything see this event */
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-typedef struct _xchat_plugin xchat_plugin;
-typedef struct _xchat_list xchat_list;
-typedef struct _xchat_hook xchat_hook;
-#ifndef PLUGIN_C
-typedef struct _xchat_context xchat_context;
-#endif
-
-#ifndef PLUGIN_C
-struct _xchat_plugin
-{
- /* these are only used on win32 */
- xchat_hook *(*xchat_hook_command) (xchat_plugin *ph,
- const char *name,
- int pri,
- int (*callback) (char *word[], char *word_eol[], void *user_data),
- const char *help_text,
- void *userdata);
- xchat_hook *(*xchat_hook_server) (xchat_plugin *ph,
- const char *name,
- int pri,
- int (*callback) (char *word[], char *word_eol[], void *user_data),
- void *userdata);
- xchat_hook *(*xchat_hook_print) (xchat_plugin *ph,
- const char *name,
- int pri,
- int (*callback) (char *word[], void *user_data),
- void *userdata);
- xchat_hook *(*xchat_hook_timer) (xchat_plugin *ph,
- int timeout,
- int (*callback) (void *user_data),
- void *userdata);
- xchat_hook *(*xchat_hook_fd) (xchat_plugin *ph,
- int fd,
- int flags,
- int (*callback) (int fd, int flags, void *user_data),
- void *userdata);
- void *(*xchat_unhook) (xchat_plugin *ph,
- xchat_hook *hook);
- void (*xchat_print) (xchat_plugin *ph,
- const char *text);
- void (*xchat_printf) (xchat_plugin *ph,
- const char *format, ...);
- void (*xchat_command) (xchat_plugin *ph,
- const char *command);
- void (*xchat_commandf) (xchat_plugin *ph,
- const char *format, ...);
- int (*xchat_nickcmp) (xchat_plugin *ph,
- const char *s1,
- const char *s2);
- int (*xchat_set_context) (xchat_plugin *ph,
- xchat_context *ctx);
- xchat_context *(*xchat_find_context) (xchat_plugin *ph,
- const char *servname,
- const char *channel);
- xchat_context *(*xchat_get_context) (xchat_plugin *ph);
- const char *(*xchat_get_info) (xchat_plugin *ph,
- const char *id);
- int (*xchat_get_prefs) (xchat_plugin *ph,
- const char *name,
- const char **string,
- int *integer);
- xchat_list * (*xchat_list_get) (xchat_plugin *ph,
- const char *name);
- void (*xchat_list_free) (xchat_plugin *ph,
- xchat_list *xlist);
- const char * const * (*xchat_list_fields) (xchat_plugin *ph,
- const char *name);
- int (*xchat_list_next) (xchat_plugin *ph,
- xchat_list *xlist);
- const char * (*xchat_list_str) (xchat_plugin *ph,
- xchat_list *xlist,
- const char *name);
- int (*xchat_list_int) (xchat_plugin *ph,
- xchat_list *xlist,
- const char *name);
- void * (*xchat_plugingui_add) (xchat_plugin *ph,
- const char *filename,
- const char *name,
- const char *desc,
- const char *version,
- char *reserved);
- void (*xchat_plugingui_remove) (xchat_plugin *ph,
- void *handle);
- int (*xchat_emit_print) (xchat_plugin *ph,
- const char *event_name, ...);
- int (*xchat_read_fd) (xchat_plugin *ph,
- void *src,
- char *buf,
- int *len);
- time_t (*xchat_list_time) (xchat_plugin *ph,
- xchat_list *xlist,
- const char *name);
- char *(*xchat_gettext) (xchat_plugin *ph,
- const char *msgid);
- void (*xchat_send_modes) (xchat_plugin *ph,
- const char **targets,
- int ntargets,
- int modes_per_line,
- char sign,
- char mode);
- char *(*xchat_strip) (xchat_plugin *ph,
- const char *str,
- int len,
- int flags);
- void (*xchat_free) (xchat_plugin *ph,
- void *ptr);
-};
-#endif
-
-
-xchat_hook *
-xchat_hook_command (xchat_plugin *ph,
- const char *name,
- int pri,
- int (*callback) (char *word[], char *word_eol[], void *user_data),
- const char *help_text,
- void *userdata);
-
-xchat_hook *
-xchat_hook_server (xchat_plugin *ph,
- const char *name,
- int pri,
- int (*callback) (char *word[], char *word_eol[], void *user_data),
- void *userdata);
-
-xchat_hook *
-xchat_hook_print (xchat_plugin *ph,
- const char *name,
- int pri,
- int (*callback) (char *word[], void *user_data),
- void *userdata);
-
-xchat_hook *
-xchat_hook_timer (xchat_plugin *ph,
- int timeout,
- int (*callback) (void *user_data),
- void *userdata);
-
-xchat_hook *
-xchat_hook_fd (xchat_plugin *ph,
- int fd,
- int flags,
- int (*callback) (int fd, int flags, void *user_data),
- void *userdata);
-
-void *
-xchat_unhook (xchat_plugin *ph,
- xchat_hook *hook);
-
-void
-xchat_print (xchat_plugin *ph,
- const char *text);
-
-void
-xchat_printf (xchat_plugin *ph,
- const char *format, ...);
-
-void
-xchat_command (xchat_plugin *ph,
- const char *command);
-
-void
-xchat_commandf (xchat_plugin *ph,
- const char *format, ...);
-
-int
-xchat_nickcmp (xchat_plugin *ph,
- const char *s1,
- const char *s2);
-
-int
-xchat_set_context (xchat_plugin *ph,
- xchat_context *ctx);
-
-xchat_context *
-xchat_find_context (xchat_plugin *ph,
- const char *servname,
- const char *channel);
-
-xchat_context *
-xchat_get_context (xchat_plugin *ph);
-
-const char *
-xchat_get_info (xchat_plugin *ph,
- const char *id);
-
-int
-xchat_get_prefs (xchat_plugin *ph,
- const char *name,
- const char **string,
- int *integer);
-
-xchat_list *
-xchat_list_get (xchat_plugin *ph,
- const char *name);
-
-void
-xchat_list_free (xchat_plugin *ph,
- xchat_list *xlist);
-
-const char * const *
-xchat_list_fields (xchat_plugin *ph,
- const char *name);
-
-int
-xchat_list_next (xchat_plugin *ph,
- xchat_list *xlist);
-
-const char *
-xchat_list_str (xchat_plugin *ph,
- xchat_list *xlist,
- const char *name);
-
-int
-xchat_list_int (xchat_plugin *ph,
- xchat_list *xlist,
- const char *name);
-
-time_t
-xchat_list_time (xchat_plugin *ph,
- xchat_list *xlist,
- const char *name);
-
-void *
-xchat_plugingui_add (xchat_plugin *ph,
- const char *filename,
- const char *name,
- const char *desc,
- const char *version,
- char *reserved);
-
-void
-xchat_plugingui_remove (xchat_plugin *ph,
- void *handle);
-
-int
-xchat_emit_print (xchat_plugin *ph,
- const char *event_name, ...);
-
-char *
-xchat_gettext (xchat_plugin *ph,
- const char *msgid);
-
-void
-xchat_send_modes (xchat_plugin *ph,
- const char **targets,
- int ntargets,
- int modes_per_line,
- char sign,
- char mode);
-
-char *
-xchat_strip (xchat_plugin *ph,
- const char *str,
- int len,
- int flags);
-
-void
-xchat_free (xchat_plugin *ph,
- void *ptr);
-
-#if !defined(PLUGIN_C) && defined(WIN32)
-#ifndef XCHAT_PLUGIN_HANDLE
-#define XCHAT_PLUGIN_HANDLE (ph)
-#endif
-#define xchat_hook_command ((XCHAT_PLUGIN_HANDLE)->xchat_hook_command)
-#define xchat_hook_server ((XCHAT_PLUGIN_HANDLE)->xchat_hook_server)
-#define xchat_hook_print ((XCHAT_PLUGIN_HANDLE)->xchat_hook_print)
-#define xchat_hook_timer ((XCHAT_PLUGIN_HANDLE)->xchat_hook_timer)
-#define xchat_hook_fd ((XCHAT_PLUGIN_HANDLE)->xchat_hook_fd)
-#define xchat_unhook ((XCHAT_PLUGIN_HANDLE)->xchat_unhook)
-#define xchat_print ((XCHAT_PLUGIN_HANDLE)->xchat_print)
-#define xchat_printf ((XCHAT_PLUGIN_HANDLE)->xchat_printf)
-#define xchat_command ((XCHAT_PLUGIN_HANDLE)->xchat_command)
-#define xchat_commandf ((XCHAT_PLUGIN_HANDLE)->xchat_commandf)
-#define xchat_nickcmp ((XCHAT_PLUGIN_HANDLE)->xchat_nickcmp)
-#define xchat_set_context ((XCHAT_PLUGIN_HANDLE)->xchat_set_context)
-#define xchat_find_context ((XCHAT_PLUGIN_HANDLE)->xchat_find_context)
-#define xchat_get_context ((XCHAT_PLUGIN_HANDLE)->xchat_get_context)
-#define xchat_get_info ((XCHAT_PLUGIN_HANDLE)->xchat_get_info)
-#define xchat_get_prefs ((XCHAT_PLUGIN_HANDLE)->xchat_get_prefs)
-#define xchat_list_get ((XCHAT_PLUGIN_HANDLE)->xchat_list_get)
-#define xchat_list_free ((XCHAT_PLUGIN_HANDLE)->xchat_list_free)
-#define xchat_list_fields ((XCHAT_PLUGIN_HANDLE)->xchat_list_fields)
-#define xchat_list_str ((XCHAT_PLUGIN_HANDLE)->xchat_list_str)
-#define xchat_list_int ((XCHAT_PLUGIN_HANDLE)->xchat_list_int)
-#define xchat_list_time ((XCHAT_PLUGIN_HANDLE)->xchat_list_time)
-#define xchat_list_next ((XCHAT_PLUGIN_HANDLE)->xchat_list_next)
-#define xchat_plugingui_add ((XCHAT_PLUGIN_HANDLE)->xchat_plugingui_add)
-#define xchat_plugingui_remove ((XCHAT_PLUGIN_HANDLE)->xchat_plugingui_remove)
-#define xchat_emit_print ((XCHAT_PLUGIN_HANDLE)->xchat_emit_print)
-#define xchat_gettext ((XCHAT_PLUGIN_HANDLE)->xchat_gettext)
-#define xchat_send_modes ((XCHAT_PLUGIN_HANDLE)->xchat_send_modes)
-#define xchat_strip ((XCHAT_PLUGIN_HANDLE)->xchat_strip)
-#define xchat_free ((XCHAT_PLUGIN_HANDLE)->xchat_free)
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-#endif