# This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # hotkeys # hotkeys/Makefile # hotkeys/distinfo # hotkeys/files # hotkeys/files/error.h # hotkeys/files/eliteduo.def # hotkeys/files/patch-src-hotkeys.c # hotkeys/files/patch-src-kbddef.c # hotkeys/files/patch-configure # hotkeys/files/patch-src-Makefile # hotkeys/files/patch-src-conf.c # hotkeys/files/patch-src-kbddef.h # hotkeys/pkg-descr # hotkeys/pkg-plist # hotkeys/pkg-message # echo c - hotkeys mkdir -p hotkeys > /dev/null 2>&1 echo x - hotkeys/Makefile sed 's/^X//' >hotkeys/Makefile << 'END-of-hotkeys/Makefile' X# New ports collection makefile for: xquote X# Date created: May 20th, 2003 X# Whom: Andy Pavlo X# X# $FreeBSD: $ X XPORTNAME= hotkeys XPORTVERSION= 0.5.7.1 XCATEGORIES= misc XMASTER_SITES= http://ypwong.org/hotkeys/${PORTVERSION}/ \ X ${MASTER_SITE_XCONTRIB} XDISTNAME= hotkeys_${PORTVERSION} X XMAINTAINER= ports@freebsd.org XCOMMENT= Allows usuage of special keys on internet/multimedia keyboards X XLIB_DEPENDS= xosd.3:${PORTSDIR}/misc/xosd \ X xml2.5:${PORTSDIR}/textproc/libxml2 \ X db3.3:${PORTSDIR}/databases/db3 X XWRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION} XGNU_CONFIGURE= 1 XCONFIGURE_ARGS= --with-db3-inc=${LOCALBASE}/include/db3 \ X --with-db3-lib=${LOCALBASE}/lib \ X --with-xosd XUSE_GMAKE= yes X XMAN1= hotkeys.1 XORIG_CONFIG= ${PREFIX}/etc/hotkeys.conf XSAMPLE_CONFIG= ${PREFIX}/etc/hotkeys.conf.sample X X Xpost-extract: X @${CP} ${PATCHDIR}/error.h ${WRKSRC}/src X @${CP} ${PATCHDIR}/eliteduo.def ${WRKSRC}/def X Xpost-install: X @${MV} ${ORIG_CONFIG} ${SAMPLE_CONFIG} X @${CAT} ${PKGMESSAGE} X X.include END-of-hotkeys/Makefile echo x - hotkeys/distinfo sed 's/^X//' >hotkeys/distinfo << 'END-of-hotkeys/distinfo' XMD5 (hotkeys_0.5.7.1.tar.gz) = 68e2aea6b4444f943b5f85ac00542a1c END-of-hotkeys/distinfo echo c - hotkeys/files mkdir -p hotkeys/files > /dev/null 2>&1 echo x - hotkeys/files/error.h sed 's/^X//' >hotkeys/files/error.h << 'END-of-hotkeys/files/error.h' X/* Declaration for error-reporting function X Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. X This file is part of the GNU C Library. Its master source is NOT part of X the C library, however. The master source lives in /gd/gnu/lib. X X The GNU C Library is free software; you can redistribute it and/or X modify it under the terms of the GNU Lesser General Public X License as published by the Free Software Foundation; either X version 2.1 of the License, or (at your option) any later version. X X The GNU C Library is distributed in the hope that it will be useful, X but WITHOUT ANY WARRANTY; without even the implied warranty of X MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU X Lesser General Public License for more details. X X You should have received a copy of the GNU Lesser General Public X License along with the GNU C Library; if not, write to the Free X Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA X 02111-1307 USA. */ X X#ifndef _ERROR_H X#define _ERROR_H 1 X X#ifndef __attribute__ X/* This feature is available in gcc versions 2.5 and later. */ X# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5) || __STRICT_ANSI__ X# define __attribute__(Spec) /* empty */ X# endif X/* The __-protected variants of `format' and `printf' attributes X are accepted by gcc versions 2.6.4 (effectively 2.7) and later. */ X# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7) X# define __format__ format X# define __printf__ printf X# endif X#endif X X#ifdef __cplusplus Xextern "C" { X#endif X X#if defined (__STDC__) && __STDC__ X X/* Print a message with `fprintf (stderr, FORMAT, ...)'; X if ERRNUM is nonzero, follow it with ": " and strerror (ERRNUM). X If STATUS is nonzero, terminate the program with `exit (STATUS)'. */ X Xextern void error (int status, int errnum, const char *format, ...) X __attribute__ ((__format__ (__printf__, 3, 4))); X Xextern void error_at_line (int status, int errnum, const char *fname, X unsigned int lineno, const char *format, ...) X __attribute__ ((__format__ (__printf__, 5, 6))); X X/* If NULL, error will flush stdout, then print on stderr the program X name, a colon and a space. Otherwise, error will call this X function without parameters instead. */ Xextern void (*error_print_progname) (void); X X#else Xvoid error (); Xvoid error_at_line (); Xextern void (*error_print_progname) (); X#endif X X/* This variable is incremented each time `error' is called. */ Xextern unsigned int error_message_count; X X/* Sometimes we want to have at most one error per line. This X variable controls whether this mode is selected or not. */ Xextern int error_one_per_line; X X#ifdef __cplusplus X} X#endif X X#endif /* error.h */ END-of-hotkeys/files/error.h echo x - hotkeys/files/eliteduo.def sed 's/^X//' >hotkeys/files/eliteduo.def << 'END-of-hotkeys/files/eliteduo.def' X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X Go to URL X X X Xman X X X X X to be added X to be added X X X END-of-hotkeys/files/eliteduo.def echo x - hotkeys/files/patch-src-hotkeys.c sed 's/^X//' >hotkeys/files/patch-src-hotkeys.c << 'END-of-hotkeys/files/patch-src-hotkeys.c' X--- src/hotkeys.c.orig Tue Dec 3 14:26:32 2002 X+++ src/hotkeys.c Sun May 11 22:56:06 2003 X@@ -66,9 +66,9 @@ X #endif /* __FreeBSD__ */ X X /* CDROM related */ X-#include /* FIXME: linux specific! */ X+//#include /* FIXME: linux specific! */ X /* APM (suspend/standby) support */ X-#include "apm.h" X+//#include "apm.h" X #if HAVE_GTK X #include "splash.h" X #endif X@@ -585,7 +585,7 @@ X { X int mixer_fd = -1, cdrom_fd = -1; X int master_vol, cd_vol; X- struct cdrom_volctrl cdrom_vol; X+// struct cdrom_volctrl cdrom_vol; X int left, right; X static struct timeval last_time; X struct timeval this_time; X@@ -683,6 +683,7 @@ X } X X /* open the cdrom/dvdrom drive device */ X+/***** ANDY: No CD support yet X if ( cdromDevice != NULL ) X { X if ( (cdrom_fd = open( cdromDevice, O_RDONLY|O_NONBLOCK )) == -1 ) X@@ -691,7 +692,7 @@ X } X else X { X- /* read the cdrom volume */ X+ || read the cdrom volume || X if ( ioctl(cdrom_fd, CDROMVOLREAD, &cdrom_vol) == -1 ) X { X uError("Unable to read the CDROM volume of `%s'", cdromDevice); X@@ -699,7 +700,7 @@ X } X else X { X- /* Set the CDROM volume */ X+ || Set the CDROM volume || X int t; X float myAdj; X myAdj = 0xFF / 100.0 * adj; X@@ -721,9 +722,10 @@ X } X } X } X+END Andy *****/ X X if (mixer_fd != -1) close(mixer_fd); X- if (cdrom_fd != -1) close(cdrom_fd); X+//Andy if (cdrom_fd != -1) close(cdrom_fd); X X return ret; X } X@@ -737,10 +739,10 @@ X { X static Bool muted = False; X static int last_mixer_vol, last_cd_vol; X- static struct cdrom_volctrl last_cdrom_vol; X+//Andy static struct cdrom_volctrl last_cdrom_vol; X X int vol, cd_vol; X- struct cdrom_volctrl cdrom_vol; X+//Andy struct cdrom_volctrl cdrom_vol; X int mixer_fd = -1, cdrom_fd = -1; X X short ret = 0; /* return value */ X@@ -751,6 +753,7 @@ X uError("Unable to open `%s'", MIXER_DEV); X } X /* open the cdrom/dvdrom drive device */ X+/***** Andy: No CD support X if ( cdromDevice != NULL ) X { X if ( (cdrom_fd = open( cdromDevice, O_RDONLY|O_NONBLOCK )) == -1 ) X@@ -758,6 +761,7 @@ X uError("Unable to open `%s'", cdromDevice); X } X } X+END Andy *****/ X X if ( muted ) X { X@@ -783,6 +787,7 @@ X #endif X } X } X+/***** Andy: No CD support X #if 0 X if (SOUND_IOCTL(mixer_fd, SOUND_MIXER_WRITE_CD, &last_cd_vol) == -1) X { X@@ -800,6 +805,7 @@ X } else X muted = False; X } X+End Andy *****/ X } X else /* ! muted */ X { X@@ -837,6 +843,7 @@ X } X } X } X+/***** Andy: No CD support X #if 0 X if ( SOUND_IOCTL(mixer_fd, SOUND_MIXER_READ_CD, &last_cd_vol) == -1) X { X@@ -853,7 +860,9 @@ X muted = True; X } X #endif X+End Andy *****/ X /* read and store the cdrom volume */ X+/***** Andy: No CD support X if (cdrom_fd != -1) X { X if ( ioctl(cdrom_fd, CDROMVOLREAD, &last_cdrom_vol) == -1 ) X@@ -863,8 +872,8 @@ X } X else X { X- /* Set the volume to 0. FIXME: is this linux specific? Do X- * other platforms also have 4 channels? */ X+ || Set the volume to 0. FIXME: is this linux specific? Do X+ * other platforms also have 4 channels? || X cdrom_vol.channel0 = cdrom_vol.channel1 = cdrom_vol.channel2 = X cdrom_vol.channel3 = 0; X if ( ioctl(cdrom_fd, CDROMVOLCTRL, &cdrom_vol) == -1 ) X@@ -875,10 +884,11 @@ X muted = True; X } X } X+End Andy *****/ X } X X if (mixer_fd != -1) close(mixer_fd); X- if (cdrom_fd != -1) close(cdrom_fd); X+//Andy if (cdrom_fd != -1) close(cdrom_fd); X X return ret; X } X@@ -886,19 +896,20 @@ X static int X ejectDisc(void) X { X+/***** Andy: No CD support X int fd, status; X X if ( cdromDevice == NULL ) X return 0; X X- /* the idea of this code is from xine's vcd plugin, mostly linux X- specific FIXME */ X+ || the idea of this code is from xine's vcd plugin, mostly linux X+ specific FIXME || X if ( (fd = open( cdromDevice, O_RDONLY | O_NONBLOCK)) > -1 ) { X status = ioctl(fd, CDROM_DRIVE_STATUS, CDSL_CURRENT); X switch (status) X { X- /* Looks like ATAPI drives doesn't return CDS_TRAY_OPEN, X- * at least it's the case on my ASUS DVD drive... */ X+ || Looks like ATAPI drives doesn't return CDS_TRAY_OPEN, X+ * at least it's the case on my ASUS DVD drive... || X case CDS_TRAY_OPEN: X #ifdef HAVE_LIBXOSD X if ( osd ) X@@ -929,7 +940,7 @@ X case CDS_NO_INFO: X case CDS_DRIVE_NOT_READY: X default: X- /* Ignore */ X+ || Ignore || X break; X } X close(fd); X@@ -940,6 +951,7 @@ X SYSLOG(LOG_NOTICE, "CDROM_DRIVE_STATUS failed: %s\n", strerror(errno)); X return -1; X } X+End Andy *****/ X } X X X@@ -1002,8 +1014,8 @@ X #ifdef HAVE_LIBXOSD X if ( osd ) X { X- xosd_display(osd, 0, XOSD_string, "Launching:"); X- xosd_display(osd, 1, XOSD_string, getConfig(type)); X+ xosd_display(osd, 0, XOSD_string, type); X+ xosd_display(osd, 1, XOSD_string, ""); X } X #endif X } X@@ -1015,13 +1027,14 @@ X int X sleepState(int mode) X { X+/***** Andy: No APM support X #ifdef USE_APMD X switch (mode) X { X- case SUSPEND: X+ // case SUSPEND: X error = system("apm -s"); X break; X- case STANDBY: X+ // case STANDBY: X error = system("apm -S"); X break; X default: X@@ -1039,10 +1052,10 @@ X } X switch (mode) X { X- case SUSPEND: X+ // case SUSPEND: X error = apm_suspend(fd); X break; X- case STANDBY: X+ // case STANDBY: X error = apm_standby(fd); X break; X default: X@@ -1050,7 +1063,9 @@ X break; X } X apm_close(fd); X-#endif /* USE_APMD */ X+#endif X+End Andy *****/ X+/* USE_APMD */ X } X X X@@ -1105,8 +1120,8 @@ X #ifdef HAVE_LIBXOSD X if ( osd ) X { X- xosd_display(osd, 0, XOSD_string, "Launching:"); X- xosd_display(osd, 1, XOSD_string, kbd.customCmds[i].desc); X+ xosd_display(osd, 0, XOSD_string, kbd.customCmds[i].desc); X+ xosd_display(osd, 1, XOSD_string, ""); X } X #endif X break; /* break the for loop */ X@@ -1444,6 +1459,7 @@ X 3 /* shadow offset */, X 3 /* number_lines */ X ); X+ xosd_set_align(osd, XOSD_center); X } X #endif X } X@@ -1592,6 +1608,7 @@ X doMute(); X } else X /* APM stuffs */ X+/**** Andy: No APM support X if ( ev.message.keycode == (kbd.defCmds)[sleepKey].key || X ev.message.keycode == (kbd.defCmds)[wakeupKey].key ) { X sleepState(STANDBY); X@@ -1601,8 +1618,9 @@ X } X else X { X+End Andy *****/ X lookupUserCmd(ev.message.keycode); /* User-defined stuffs */ X- } X+//Andy } X } X } X END-of-hotkeys/files/patch-src-hotkeys.c echo x - hotkeys/files/patch-src-kbddef.c sed 's/^X//' >hotkeys/files/patch-src-kbddef.c << 'END-of-hotkeys/files/patch-src-kbddef.c' X--- src/kbddef.c.orig Wed Nov 27 14:51:11 2002 X+++ src/kbddef.c Sun May 11 16:01:17 2003 X@@ -37,8 +37,8 @@ X */ X #include "XF86keysym.h" X X-#include X-#include X+#include X+#include X X #include "hotkeys.h" X #include "kbddef.h" X@@ -71,6 +71,9 @@ X { "MyComputer", myComputerKey, XF86XK_MyComputer }, X { "Favorites", favoritesKey, XF86XK_Favorites }, X { "Calculator", calculatorKey, XF86XK_Calculator }, X+ { "Messenger", messengerKey, 0 }, X+ { "Webcam", webcamKey, 0 }, X+ { "Media", mediaKey, 0 }, X { "NewsReader", newsReaderKey, 0 }, X { "iNews", iNewsKey, 0 }, X { "Rewind", rewindKey, 0 }, END-of-hotkeys/files/patch-src-kbddef.c echo x - hotkeys/files/patch-configure sed 's/^X//' >hotkeys/files/patch-configure << 'END-of-hotkeys/files/patch-configure' X--- configure.orig Sun Dec 8 09:34:24 2002 X+++ configure Sun May 11 22:17:53 2003 X@@ -251,6 +251,7 @@ X # Initializations. X # X ac_default_prefix=/usr/local X+ X ac_config_libobj_dir=. X cross_compiling=no X subdirs= X@@ -648,6 +649,21 @@ X esac X done X X+################################################################# X+## Andy Pavlo X+## For some reason it wouldn't install in the right X+## dir if we gave it a prefix X+## I hope this fixes it X+################################################################# X+if test $prefix != "NONE"; then X+ ac_default_prefix=$prefix X+else X+ ac_default_prefix=$ac_default_prefix X+fi X+################################################################# X+## END FIX X+################################################################# X+ X if test -n "$ac_prev"; then X ac_option=--`echo $ac_prev | sed 's/_/-/g'` X { echo "$as_me: error: missing argument to $ac_option" >&2 X@@ -4353,13 +4369,13 @@ X fi X X X-echo "$as_me:$LINENO: checking for pthread_create in -lpthread" >&5 X-echo $ECHO_N "checking for pthread_create in -lpthread... $ECHO_C" >&6 X+echo "$as_me:$LINENO: checking for pthread_create in -pthread" >&5 X+echo $ECHO_N "checking for pthread_create in -pthread... $ECHO_C" >&6 X if test "${ac_cv_lib_pthread_pthread_create+set}" = set; then X echo $ECHO_N "(cached) $ECHO_C" >&6 X else X ac_check_lib_save_LIBS=$LIBS X-LIBS="-lpthread $LIBS" X+LIBS="-pthread $LIBS" X cat >conftest.$ac_ext <<_ACEOF X #line $LINENO "configure" X /* confdefs.h. */ X@@ -4412,7 +4428,7 @@ X #define HAVE_LIBPTHREAD 1 X _ACEOF X X- LIBS="-lpthread $LIBS" X+ LIBS="-pthread $LIBS" X X fi X END-of-hotkeys/files/patch-configure echo x - hotkeys/files/patch-src-Makefile sed 's/^X//' >hotkeys/files/patch-src-Makefile << 'END-of-hotkeys/files/patch-src-Makefile' X--- src/Makefile.in.orig Sun Dec 8 09:34:44 2002 X+++ src/Makefile.in Sun May 11 16:18:57 2003 X@@ -96,7 +96,7 @@ X l = @l@ X X bin_PROGRAMS = hotkeys X-hotkeys_SOURCES = hotkeys.c kbddef.c conf.c fixVMware.c apmlib.c xmalloc.c splash.c XF86keysym.h apm.h common.h conf.h hotkeys.h kbddef.h xmalloc.h splash.h X+hotkeys_SOURCES = hotkeys.c kbddef.c conf.c fixVMware.c xmalloc.c splash.c XF86keysym.h common.h conf.h hotkeys.h kbddef.h xmalloc.h splash.h X X sysconf_DATA = hotkeys.conf X man_MANS = hotkeys.1 X@@ -120,7 +120,7 @@ X X_LIBS = @X_LIBS@ X X_EXTRA_LIBS = @X_EXTRA_LIBS@ X X_PRE_LIBS = @X_PRE_LIBS@ X-hotkeys_OBJECTS = hotkeys.o kbddef.o conf.o fixVMware.o apmlib.o \ X+hotkeys_OBJECTS = hotkeys.o kbddef.o conf.o fixVMware.o \ X xmalloc.o splash.o X hotkeys_LDADD = $(LDADD) X hotkeys_DEPENDENCIES = END-of-hotkeys/files/patch-src-Makefile echo x - hotkeys/files/patch-src-conf.c sed 's/^X//' >hotkeys/files/patch-src-conf.c << 'END-of-hotkeys/files/patch-src-conf.c' X--- src/conf.c.orig Wed Nov 27 14:30:08 2002 X+++ src/conf.c Sun May 11 16:01:17 2003 X@@ -25,7 +25,7 @@ X #include "common.h" X X #include X-#include X+#include X #include X #include X X@@ -68,6 +68,9 @@ X "Shopping", "mozilla -remote 'openURL(http://thinkgeek.com)'", X "Go", "mozilla -remote 'openURL(http://linux.com)'", X "Print", "lpr", X+ "Messenger", "gaim", X+ "Webcam", "\0", X+ "Media", "xmms", X /* X "Screendump", "xwd -root", X */ END-of-hotkeys/files/patch-src-conf.c echo x - hotkeys/files/patch-src-kbddef.h sed 's/^X//' >hotkeys/files/patch-src-kbddef.h << 'END-of-hotkeys/files/patch-src-kbddef.h' X--- src/kbddef.h.orig Mon Mar 19 01:51:24 2001 X+++ src/kbddef.h Sun May 11 16:01:17 2003 X@@ -55,6 +55,9 @@ X myComputerKey, X favoritesKey, X calculatorKey, X+ messengerKey, X+ webcamKey, X+ mediaKey, X newsReaderKey, X iNewsKey, X rewindKey, END-of-hotkeys/files/patch-src-kbddef.h echo x - hotkeys/pkg-descr sed 's/^X//' >hotkeys/pkg-descr << 'END-of-hotkeys/pkg-descr' XThis program sits at the back and listens for the "special" hotkeys that Xyou won't normally use on your internet/Multimedia keyboards. XThe buttons perform their intended behaviors, such as volume up and down, Xmute the speaker, launch applications, etc. X XNOTE: CDROM & APM features have been disabled X XWWW: http://ypwong.org/hotkeys/ X X-Andy Pavlo Xamp0928@rit.edu END-of-hotkeys/pkg-descr echo x - hotkeys/pkg-plist sed 's/^X//' >hotkeys/pkg-plist << 'END-of-hotkeys/pkg-plist' Xbin/hotkeys Xetc/hotkeys.conf.sample Xshare/hotkeys/splash.png Xshare/hotkeys/acerwl.def Xshare/hotkeys/btc9000.def Xshare/hotkeys/eliteduo.def Xshare/hotkeys/hp5181.def Xshare/hotkeys/ibook.def Xshare/hotkeys/itouch.def Xshare/hotkeys/kb9930.def Xshare/hotkeys/kb9963.def Xshare/hotkeys/kbp8993.def Xshare/hotkeys/logitech-cfo.def Xshare/hotkeys/mck800.def Xshare/hotkeys/msnatpro.def Xshare/hotkeys/msnet.def Xshare/hotkeys/msnetpro.def Xshare/hotkeys/mx1998.def Xshare/hotkeys/mx2500.def Xshare/hotkeys/mx3000.def Xshare/hotkeys/orktekusb.def Xshare/hotkeys/pb5140w.def Xshare/hotkeys/polypix.def Xshare/hotkeys/sk2500.def Xshare/hotkeys/sk2501a.def Xshare/hotkeys/sk2505.def Xshare/hotkeys/sk2800c.def Xshare/hotkeys/sk7100.def Xshare/hotkeys/sk9925.def X@dirrm share/hotkeys END-of-hotkeys/pkg-plist echo x - hotkeys/pkg-message sed 's/^X//' >hotkeys/pkg-message << 'END-of-hotkeys/pkg-message' X X======================================================================= X At this current stage CDROM & APM support has been disabled. X I will need to remap the linux CDROM cdrom.h code to work with X FreeBSD's cdio.h library X======================================================================= X XRename ${PREFIX}/etc/hotkeys.conf.default to ${PREFIX}/etc/hotkeys.conf Xand edit to setup your keyboard settings X X -- OR -- X XCopy to ~/.hotkeys/hotkeys.conf and edit config there X X======================================================================= X END-of-hotkeys/pkg-message exit