Filewatcher File Search
FTP Search
  
Directory (beta)
  
Content Search (beta)
   
pkg://jpilot-0.99.6-1.src.rpm:1170699/jpilot-0.99.6.tar.gz  info  downloads

jpilot-0.99.6/0000777000175000001440000000000007704170253006666 5jpilot-0.99.6/dialer/0000777000175000001440000000000007704170236010127 5jpilot-0.99.6/dialer/Makefile.unix0000644000175000001440000000032607572226024012466 CFLAGS=-O

all: jpilot-dial

jpilot-dial: jpilot-dial.o
	$(CC) $(CFLAGS) jpilot-dial.o -o jpilot-dial -lm

jpilot-dial.o: jpilot-dial.c
	$(CC) $(CFLAGS) -c jpilot-dial.c

clean:
	$(RM) jpilot-dial.o jpilot-dial *~
jpilot-0.99.6/dialer/README0000644000175000001440000000651607564613266010744 This code is forked from dtmf-dial-0.1

I (Judd Montgomery) modified it to set the master volume before playing tones
 and then set it back to the original settings after playing the tones.
 I renamed it so as not to overwrite the dial program if installed.
 
 I did this because I noticed that the phone recognized the dtmf tones
 better at a certain volume range.
 
 These options are --lv {volume 0-100} and --rv {0-100}
 ex. jpilot-dial --lv 60 --rv 0 555-1234
  Then I can hold the phone up to the left speaker, while not making as much
  noise as if the right speaker was on also.  When its done dialing the
  volume goes back to its original setting.
  
Below is the original README
 
======================================================================

README file for dtmf-dial-0.1

(C) 1998 Itai Nahshon, nahshon@actcom.co.il
Use and redistribution are subject to the GNU GENERAL PUBLIC LICENSE.


Dial generates the dtmf tone signals used for telephone
dialing and by default sends the signals to the sound card.

It can be used for easy dialing, simply put the telephone
microphone near the compiter speaker and let the software
dial for you.

It is intended for dialing from within data base programs that
also store telephone numbers.

Usage:
Usually you just run need to give the phone number
that you wish to dial as an argument.
    dial 555-3456

By default the tone generated for each dialed digit is
100 milliseconds. Silence between digits is 50 milliseconds.
A comma or a blank space between digits is replaces with
a 500 milliseconds delay.

The duration values can be set by these arguments:
  --tone-time   milliseconds 	(default 100)
  --silent-time milliseconds	(default 50)
  --sleep-time  milliseconds	(default 500)

By default the output is sent to "/dev/dsp". Generated samples
are 8 bits unsigned values (AFMT_U8). 8000 samples/second.

To send the output to another device one can use the option:
  --output-dev device		(default /dev/dsp)
This option can be used also to store raw audio samples to
a file, or to stdout. Use the file name with the --output-dev
option, ir a simpe "-" to sent to stdout.
If the output device is not the sound special file then another
option should be used to eliminate attempts to set the sound
driver parameters:
  --use-audio  onoff	(default 1)
Use "--use-audio 0" to disable sound ioctls.

It is possible to generate the samples in AFMT_S16_LE format,
To do that use the option:
  --bits  bits-per-sample  (default 8)
8 will geneate AFMT_U8 format, 16 will generate AFMT_S16_LE format.

It is possible to generate samples in a different sampling rate.
To do that use the option:
  --speed sampling-rate    (default 8000)

Sound samples are generated by sub-sampling values from a cosine
table. By default the cosine table contains 256 samples.
Smaller cosine table sizes still produce the correct frequencies
but with some distortion.
These options can be used:
  --table-size size		(default 256)
The table used is of a different size
  --volume volume		(default 100)
Values stored in the table are scaled down volume/100 times
the maximum value which does not cause overflow on the 8 or
16 bit samples.

To generate a stereo sound use the options --right or
--left. By default they are 0 and a mono sample is generated.
If any of these option are 1, a stereo sample will be generated
and the corrensponding channel will be turned on.
jpilot-0.99.6/dialer/jpilot-dial.c0000644000175000001440000002477407573451543012444 /*
 * dtmf-dial 0.1
 * (C) 1998 Itai Nahshon (nahshon@actcom.co.il)
 *
 * Use and redistribution are subject to the GNU GENERAL PUBLIC LICENSE.
 */
/* Judd Montgomery <judd@jpilot.org>
 * 10/15/2002
 * Added forking code and volume settings (--lv, --rv).
 */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <unistd.h>
#include <wait.h>
#include <termio.h>
#include <fcntl.h>
#include <malloc.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <linux/soundcard.h>


#define DEBUG(x)

#define DEV_MIXER   "/dev/mixer"

void gen_costab(void);
void dial_digit(int c);
void silent(int msec);
void dial(int f1, int f2, int msec);

char *output = "/dev/dsp";
int bits        = 8;
int speed       = 8000;
int tone_time   = 100;
int silent_time = 50;
int sleep_time  = 500;
int volume      = 100;
int format	= AFMT_U8;
int use_audio   = 1;

#define BSIZE 4096

unsigned char *buf;
int bufsize = BSIZE;
int bufidx;

#define MINTABSIZE 2
#define MAXTABSIZE 65536
signed short *costab;
int tabsize = 256;

int dialed = 0;

int right  = 0;
int left   = 0;

int fd;

void Usage(void) {
   fprintf(stderr, "usage: jpilot-dial [options] number ...\n"
	   " Valid options with their default values are:\n"
	   "   Duration options:\n"
	   "     --tone-time   100\n"
	   "     --silent-time 50\n"
	   "     --sleep-time  500\n"
	   "   Audio output  options:\n"
	   "     --output-dev  /dev/dsp\n"
	   "     --use-audio   1\n"
	   "     --bufsize     4096\n"
	   "     --speed       8000\n"
	   "     --bits        8\n"
	   "     --lv          default - no change\n"
	   "     --rv          default - no change\n"
	   "   Audio generation options:\n"
	   "     --table-size  256\n"
	   "     --volume      100\n"
	   "     --left        0\n"
	   "     --right       0\n"
	   );
   exit(1);
}

void
initialize_audiodev(void) {
   int speed_local = speed;
   int channels = 1;
   int diff;

   if(!use_audio)
     return;

   if(right || left)
     channels = 2;

   if(ioctl(fd, SNDCTL_DSP_CHANNELS, &channels)) {
      perror("ioctl(SNDCTL_DSP_CHANNELS)");
      exit(1);
   }

   if(ioctl(fd, SNDCTL_DSP_SETFMT, &format)) {
      perror("ioctl(SNDCTL_DSP_SPEED)");
      exit(1);
   }

   if(ioctl(fd, SNDCTL_DSP_SPEED, &speed_local)) {
      perror("ioctl(SNDCTL_DSP_SPEED)");
      exit(1);
   }

   diff = speed_local - speed;
   if(diff < 0)
     diff = -diff;
   if(diff > 500) {
      fprintf(stderr,
	      "Your sound card does not support the requested speed\n");
      exit(1);
   }
   if(diff != 0) {
      fprintf(stderr,
	      "Setting speed to %d\n", speed_local);
   }
   speed = speed_local;
}

void
  getvalue(int *arg, int *index, int argc,
	   char **argv, int min, int max) {

     if (*index >= argc-1)
       Usage();

     *arg = atoi(argv[1+*index]);

     if(*arg < min || *arg > max) {
	fprintf(stderr, "Value for %s should be in the range %d..%d\n", 
		argv[*index]+2, min, max);
	exit(1);
     }
     ++*index;
}

int main(int argc, char **argv)
{
   char *cp;
   int i;
   int new_vol, old_vol;
   int old_left, old_right;
   int new_left, new_right;
   int left_vol_temp, right_vol_temp;
   int set_left, set_right;
   int mixer_fd;
   int status;

   left_vol_temp=right_vol_temp=0;
   set_left=set_right=0;

   for(i = 1; i < argc; i++) {
      if(argv[i][0] != '-' ||
	 argv[i][1] != '-')
	break;

      if(!strcmp(argv[i], "--table-size")) {
	 getvalue(&tabsize, &i, argc, argv,
		  MINTABSIZE, MAXTABSIZE);
      }
      else if(!strcmp(argv[i], "--tone-time")) {
	 getvalue(&tone_time, &i, argc, argv,
		  10, 10000);
      }
      else if(!strcmp(argv[i], "--sleep-time")) {
	 getvalue(&sleep_time, &i, argc, argv,
		  10, 10000);
      }
      else if(!strcmp(argv[i], "--silent-time")) {
	 getvalue(&silent_time, &i, argc, argv,
		  10, 10000);
      }
      else if(!strcmp(argv[i], "--sleep-time")) {
	 getvalue(&sleep_time, &i, argc, argv,
		  10, 100000);
      }
      else if(!strcmp(argv[i], "--volume")) {
	 getvalue(&volume, &i, argc, argv,
		  0, 100);
      }
      else if(!strcmp(argv[i], "--lv")) {
	 set_left=1;
	 getvalue(&left_vol_temp, &i, argc, argv,
		  0, 100);
      }
      else if(!strcmp(argv[i], "--rv")) {
	 set_right=1;
	 getvalue(&right_vol_temp, &i, argc, argv,
		  0, 100);
      }
      else if(!strcmp(argv[i], "--speed")) {
	 getvalue(&speed, &i, argc, argv,
		  5000, 48000);
      }
      else if(!strcmp(argv[i], "--bits")) {
	 getvalue(&bits, &i, argc, argv,
		  8, 16);
      }
      else if(!strcmp(argv[i], "--bufsize")) {
	 getvalue(&bufsize, &i, argc, argv,
		  4, 65536);
      }
      else if(!strcmp(argv[i], "--use-audio")) {
	 getvalue(&use_audio, &i, argc, argv,
		  0, 1);
      }
      else if(!strcmp(argv[i], "--right")) {
	 getvalue(&right, &i, argc, argv,
		  0, 1);
      }
      else if(!strcmp(argv[i], "--left")) {
	 getvalue(&left, &i, argc, argv,
		  0, 1);
      }
      else if(!strcmp(argv[i], "--output-dev")) {
	 i++;
	 if(i >= argc)
	   Usage();
	 output = argv[i];
      }
      else
	Usage();
   }

   if(i >= argc)
     Usage();

   if ((set_left) || (set_right)) {
      switch (fork()) {
       case -1:
	 /* error */
	 perror("fork");
	 return 0;
       case 0:
	 /* child */
	 break;
       default:
	 /* parent */
	 /* Open the mixer device first */
	 if ( (mixer_fd=open(DEV_MIXER, O_RDWR, 0)) < 0 ) {
	    fprintf(stderr, "Can't open %s: ", DEV_MIXER);
	    perror("");
	    exit(2);
	 }
	 if ( ioctl(mixer_fd, SOUND_MIXER_READ_VOLUME, &old_vol) < 0 ) {
	    perror("Can't obtain current volume settings");
	    exit(2);
	 }
	 old_left = old_vol&0xFF;
	 old_right = old_vol>>8;

	 printf("Current volume: L = %d, R = %d\n", old_left, old_right);

	 new_left=left_vol_temp;
	 new_right=right_vol_temp;
	 if (!set_left) new_left = old_left;
	 if (!set_right) new_right = old_right;
	 printf("Setting volume: L = %d, R = %d\n", new_left, new_right);
	 new_vol=(new_right<<8) | (new_left&0xFF);
	 if ( ioctl(mixer_fd, SOUND_MIXER_WRITE_VOLUME, &new_vol) < 0 ) {
	    perror("Can't set current volume settings");
	    exit(2);
	 }
	 /* Wait for the sounds to get done playing */
	 wait(&status);
	 printf("Setting volume: L = %d, R = %d\n", old_left, old_right);
	 ioctl(mixer_fd, SOUND_MIXER_WRITE_VOLUME, &old_vol);
	 return 0;
      }
   }

   if(!strcmp(output, "-"))
     fd = 1;		/* stdout */
   else {
      fd = open(output, O_CREAT|O_TRUNC|O_WRONLY, 0644);
      if(fd < 0) {
	 perror(output);
	 exit(1);
      }
   }

   switch(bits) {
    case 8:
      format = AFMT_U8;
      break;
    case 16:
      format = AFMT_S16_LE;
      break;
    default:
      fprintf(stderr, "Value for bits should be 8 or 16\n");
      exit(1);
   }

   initialize_audiodev();

   gen_costab();
   buf = malloc(bufsize);
   if(buf == NULL) {
      perror("malloc buf");
      exit(1);
   }
   
   bufidx = 0;
   for(; i < argc; i++) {
      cp = argv[i];
      if(dialed)
	silent(sleep_time);
      while(cp && *cp) {
	 if(*cp == ',' || *cp == ' ')
	   silent(sleep_time);
	 else {
	    if(dialed)
	      silent(silent_time);
	    dial_digit(*cp);
	 }
	 cp++;
      }
   }
   if(bufidx > 0) {
#if 0
      while(bufidx < bufsize) {
	 if(format == AFMT_U8) {
	    buf[bufidx++] = 128;
	 }
	 else {	/* AFMT_S16_LE */
	    buf[bufidx++] = 0;
	    buf[bufidx++] = 0;
	 }
      }
#endif
      write(fd, buf, bufidx);
   }

   exit(0);
}

void
dial_digit(int c) {
   DEBUG(fprintf(stderr, "dial_digit %#c\n", c));
   switch(c) {
    case '0':
      dial(941, 1336, tone_time);
      break;
    case '1':
      dial(697, 1209, tone_time);
      break;
    case '2':
      dial(697, 1336, tone_time);
      break;
    case '3':
      dial(697, 1477, tone_time);
      break;
    case '4':
      dial(770, 1209, tone_time);
      break;
    case '5':
      dial(770, 1336, tone_time);
      break;
    case '6':
      dial(770, 1477, tone_time);
      break;
    case '7':
      dial(852, 1209, tone_time);
      break;
    case '8':
      dial(852, 1336, tone_time);
      break;
    case '9':
      dial(852, 1477, tone_time);
      break;
    case '*':
      dial(941, 1209, tone_time);
      break;
    case '#':
      dial(941, 1477, tone_time);
      break;
    case 'A':
      dial(697, 1633, tone_time);
      break;
    case 'B':
      dial(770, 1633, tone_time);
      break;
    case 'C':
      dial(852, 1633, tone_time);
      break;
    case 'D':
      dial(941, 1633, tone_time);
      break;
   }
}

void
silent(int msec) {
   int time;
   if(msec <= 0)
     return; 

   DEBUG(fprintf(stderr, "silent %d\n", msec));

   time = (msec * speed) / 1000;
   while(--time >= 0) {
      if(format == AFMT_U8) {
	 buf[bufidx++] = 128;
      }
      else {	/* AFMT_S16_LE */
	 buf[bufidx++] = 0;
	 buf[bufidx++] = 0;
      }
      if(right || left) {
	 if(format == AFMT_U8) {
	    buf[bufidx++] = 128;
	 }
	 else {	/* AFMT_S16_LE */
	    buf[bufidx++] = 0;
	    buf[bufidx++] = 0;
	 }
      }
      if(bufidx >= bufsize) {
	 write(fd, buf, bufsize);
	 bufidx = 0;
      }
   }
   dialed = 0;
}

void
dial(int f1, int f2, int msec) {
   int i1, i2, d1, d2, e1, e2, g1, g2;
   int time;
   int val;

   if(msec <= 0)
     return;

   DEBUG(fprintf(stderr, "dial %d %d %d\n", f1, f2, msec));

   f1 *= tabsize;
   f2 *= tabsize;
   d1 = f1 / speed;
   d2 = f2 / speed;
   g1 = f1 - d1 * speed;
   g2 = f2 - d2 * speed;
   e1 = speed/2;
   e2 = speed/2;

   i1 = i2 = 0;

   time = (msec * speed) / 1000;
   while(--time >= 0) {
      val = costab[i1] + costab[i2];

      if(left || !right) {
	 if(format == AFMT_U8) {
	    buf[bufidx++] = 128 + (val >> 8); 
	 }
	 else {	/* AFMT_S16_LE */
	    buf[bufidx++] = val & 0xff;
	    buf[bufidx++] = (val >> 8) & 0xff;
	 }
      }
      if (left != right) {
	 if(format == AFMT_U8) {
	    buf[bufidx++] = 128;
	 }
	 else {	/* AFMT_S16_LE */
	    buf[bufidx++] = 0;
	    buf[bufidx++] = 0;
	 }
      }
      if(right) {
	 if(format == AFMT_U8) {
	    buf[bufidx++] = 128 + (val >> 8); 
	 }
	 else {	/* AFMT_S16_LE */
	    buf[bufidx++] = val & 0xff;
	    buf[bufidx++] = (val >> 8) & 0xff;
	 }
      }

      i1 += d1;
      if (e1 < 0) {
	 e1 += speed;
	 i1 += 1;
      }
      if (i1 >= tabsize)
	i1 -= tabsize;

      i2 += d2;
      if (e2 < 0) {
	 e2 += speed;
	 i2 += 1;
      }
      if (i2 >= tabsize)
	i2 -= tabsize;

      if(bufidx >= bufsize) {
	 write(fd, buf, bufsize);
	 bufidx = 0;
      }
      e1 -= g1;
      e2 -= g2;
   }
   dialed = 1;
}

void
gen_costab(void) {
   int i;
   double d;

   costab = (signed short *)malloc(tabsize * sizeof(signed short));
   if(costab == NULL) {
      perror("malloc costab");
      exit(1);
   }

   for (i = 0; i < tabsize; i++) {
      d = 2*M_PI*i;
      costab[i] = (int)((volume/100.)*16383.*cos(d/tabsize));
   }
}
jpilot-0.99.6/dialer/Makefile.am0000644000175000001440000000024507654362425012107 EXTRA_DIST = README
AM_CFLAGS= @CFLAGS@ @ccoptions@

if JPILOT_DIALER
bin_PROGRAMS = jpilot-dial

jpilot_dial_SOURCES = jpilot-dial.c
jpilot_dial_LDADD = -lm
endif

jpilot-0.99.6/dialer/Makefile.in0000644000175000001440000003632507704160477012127 # Makefile.in generated by automake 1.7.3 from Makefile.am.
# @configure_input@

# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
# Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.

@SET_MAKE@

srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ..

am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = @INSTALL@
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
host_triplet = @host@
ABILIB = @ABILIB@
ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@
CATOBJEXT = @CATOBJEXT@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CYGPATH_W = @CYGPATH_W@
DATADIRNAME = @DATADIRNAME@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO = @ECHO@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
GENCAT = @GENCAT@
GLIBC21 = @GLIBC21@
GMSGFMT = @GMSGFMT@
GTK_CFLAGS = @GTK_CFLAGS@
GTK_CONFIG = @GTK_CONFIG@
GTK_LIBS = @GTK_LIBS@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTOBJEXT = @INSTOBJEXT@
INTLBISON = @INTLBISON@
INTLLIBS = @INTLLIBS@
INTLOBJS = @INTLOBJS@
INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
INTLTOOL_MERGE = @INTLTOOL_MERGE@
INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
INTLTOOL_PERL = @INTLTOOL_PERL@
INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@
JPILOT_DIALER_FALSE = @JPILOT_DIALER_FALSE@
JPILOT_DIALER_TRUE = @JPILOT_DIALER_TRUE@
LDFLAGS = @LDFLAGS@
LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LN_S = @LN_S@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
MAINT = @MAINT@
MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
MAKEINFO = @MAKEINFO@
MAKE_EXPENSE_FALSE = @MAKE_EXPENSE_FALSE@
MAKE_EXPENSE_TRUE = @MAKE_EXPENSE_TRUE@
MAKE_KEYRING_FALSE = @MAKE_KEYRING_FALSE@
MAKE_KEYRING_TRUE = @MAKE_KEYRING_TRUE@
MAKE_SYNCTIME_FALSE = @MAKE_SYNCTIME_FALSE@
MAKE_SYNCTIME_TRUE = @MAKE_SYNCTIME_TRUE@
MKINSTALLDIRS = @MKINSTALLDIRS@
MSGFMT = @MSGFMT@
MSGMERGE = @MSGMERGE@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PILOT_FLAGS = @PILOT_FLAGS@
PILOT_LIBS = @PILOT_LIBS@
PKG_CONFIG = @PKG_CONFIG@
POSUB = @POSUB@
PROGNAME = @PROGNAME@
RANLIB = @RANLIB@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
USE_NLS = @USE_NLS@
VERSION = @VERSION@
XGETTEXT = @XGETTEXT@
ac_ct_CC = @ac_ct_CC@
ac_ct_RANLIB = @ac_ct_RANLIB@
ac_ct_STRIP = @ac_ct_STRIP@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
ccoptions = @ccoptions@
cflags = @cflags@
datadir = @datadir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localstatedir = @localstatedir@
mandir = @mandir@
oldincludedir = @oldincludedir@
plugin_support = @plugin_support@
prefix = @prefix@
program_transform_name = @program_transform_name@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
EXTRA_DIST = README
AM_CFLAGS = @CFLAGS@ @ccoptions@

@JPILOT_DIALER_TRUE@bin_PROGRAMS = jpilot-dial

@JPILOT_DIALER_TRUE@jpilot_dial_SOURCES = jpilot-dial.c
@JPILOT_DIALER_TRUE@jpilot_dial_LDADD = -lm
subdir = dialer
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
@JPILOT_DIALER_TRUE@bin_PROGRAMS = jpilot-dial$(EXEEXT)
@JPILOT_DIALER_FALSE@bin_PROGRAMS =
PROGRAMS = $(bin_PROGRAMS)

am__jpilot_dial_SOURCES_DIST = jpilot-dial.c
@JPILOT_DIALER_TRUE@am_jpilot_dial_OBJECTS = jpilot-dial.$(OBJEXT)
jpilot_dial_OBJECTS = $(am_jpilot_dial_OBJECTS)
@JPILOT_DIALER_TRUE@jpilot_dial_DEPENDENCIES =
@JPILOT_DIALER_FALSE@jpilot_dial_DEPENDENCIES =
jpilot_dial_LDFLAGS =

DEFAULT_INCLUDES =  -I. -I$(srcdir) -I$(top_builddir)
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles
@AMDEP_TRUE@DEP_FILES = ./$(DEPDIR)/jpilot-dial.Po
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) \
	$(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
CCLD = $(CC)
LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
	$(AM_LDFLAGS) $(LDFLAGS) -o $@
DIST_SOURCES = $(am__jpilot_dial_SOURCES_DIST)
DIST_COMMON = README Makefile.am Makefile.in
SOURCES = $(jpilot_dial_SOURCES)

all: all-am

.SUFFIXES:
.SUFFIXES: .c .lo .o .obj
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am  $(top_srcdir)/configure.in $(ACLOCAL_M4)
	cd $(top_srcdir) && \
	  $(AUTOMAKE) --foreign  dialer/Makefile
Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in  $(top_builddir)/config.status
	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
install-binPROGRAMS: $(bin_PROGRAMS)
	@$(NORMAL_INSTALL)
	$(mkinstalldirs) $(DESTDIR)$(bindir)
	@list='$(bin_PROGRAMS)'; for p in $$list; do \
	  p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
	  if test -f $$p \
	     || test -f $$p1 \
	  ; then \
	    f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
	   echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(binPROGRAMS_INSTALL) $$p $(DESTDIR)$(bindir)/$$f"; \
	   $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(binPROGRAMS_INSTALL) $$p $(DESTDIR)$(bindir)/$$f || exit 1; \
	  else :; fi; \
	done

uninstall-binPROGRAMS:
	@$(NORMAL_UNINSTALL)
	@list='$(bin_PROGRAMS)'; for p in $$list; do \
	  f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
	  echo " rm -f $(DESTDIR)$(bindir)/$$f"; \
	  rm -f $(DESTDIR)$(bindir)/$$f; \
	done

clean-binPROGRAMS:
	@list='$(bin_PROGRAMS)'; for p in $$list; do \
	  f=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
	  echo " rm -f $$p $$f"; \
	  rm -f $$p $$f ; \
	done
jpilot-dial$(EXEEXT): $(jpilot_dial_OBJECTS) $(jpilot_dial_DEPENDENCIES) 
	@rm -f jpilot-dial$(EXEEXT)
	$(LINK) $(jpilot_dial_LDFLAGS) $(jpilot_dial_OBJECTS) $(jpilot_dial_LDADD) $(LIBS)

mostlyclean-compile:
	-rm -f *.$(OBJEXT) core *.core

distclean-compile:
	-rm -f *.tab.c

@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jpilot-dial.Po@am__quote@

distclean-depend:
	-rm -rf ./$(DEPDIR)

.c.o:
@am__fastdepCC_TRUE@	if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
@am__fastdepCC_TRUE@	  -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
@am__fastdepCC_TRUE@	then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
@am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
@am__fastdepCC_TRUE@	fi
@AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(COMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$<

.c.obj:
@am__fastdepCC_TRUE@	if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
@am__fastdepCC_TRUE@	  -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
@am__fastdepCC_TRUE@	then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
@am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
@am__fastdepCC_TRUE@	fi
@AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(COMPILE) -c `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`

.c.lo:
@am__fastdepCC_TRUE@	if $(LTCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
@am__fastdepCC_TRUE@	  -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
@am__fastdepCC_TRUE@	then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; \
@am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
@am__fastdepCC_TRUE@	fi
@AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/$*.Plo' tmpdepfile='$(DEPDIR)/$*.TPlo' @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(LTCOMPILE) -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<

mostlyclean-libtool:
	-rm -f *.lo

clean-libtool:
	-rm -rf .libs _libs

distclean-libtool:
	-rm -f libtool
uninstall-info-am:

ETAGS = etags
ETAGSFLAGS =

CTAGS = ctags
CTAGSFLAGS =

tags: TAGS

ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
	unique=`for i in $$list; do \
	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
	  done | \
	  $(AWK) '    { files[$$0] = 1; } \
	       END { for (i in files) print i; }'`; \
	mkid -fID $$unique

TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
		$(TAGS_FILES) $(LISP)
	tags=; \
	here=`pwd`; \
	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
	unique=`for i in $$list; do \
	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
	  done | \
	  $(AWK) '    { files[$$0] = 1; } \
	       END { for (i in files) print i; }'`; \
	test -z "$(ETAGS_ARGS)$$tags$$unique" \
	  || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
	     $$tags $$unique

ctags: CTAGS
CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
		$(TAGS_FILES) $(LISP)
	tags=; \
	here=`pwd`; \
	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
	unique=`for i in $$list; do \
	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
	  done | \
	  $(AWK) '    { files[$$0] = 1; } \
	       END { for (i in files) print i; }'`; \
	test -z "$(CTAGS_ARGS)$$tags$$unique" \
	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
	     $$tags $$unique

GTAGS:
	here=`$(am__cd) $(top_builddir) && pwd` \
	  && cd $(top_srcdir) \
	  && gtags -i $(GTAGS_ARGS) $$here

distclean-tags:
	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)

top_distdir = ..
distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)

distdir: $(DISTFILES)
	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
	list='$(DISTFILES)'; for file in $$list; do \
	  case $$file in \
	    $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
	    $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
	  esac; \
	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
	    dir="/$$dir"; \
	    $(mkinstalldirs) "$(distdir)$$dir"; \
	  else \
	    dir=''; \
	  fi; \
	  if test -d $$d/$$file; then \
	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
	    fi; \
	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
	  else \
	    test -f $(distdir)/$$file \
	    || cp -p $$d/$$file $(distdir)/$$file \
	    || exit 1; \
	  fi; \
	done
check-am: all-am
check: check-am
all-am: Makefile $(PROGRAMS)

installdirs:
	$(mkinstalldirs) $(DESTDIR)$(bindir)

install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am

install-am: all-am
	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am

installcheck: installcheck-am
install-strip:
	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
	  INSTALL_STRIP_FLAG=-s \
	  `test -z '$(STRIP)' || \
	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:

clean-generic:

distclean-generic:
	-rm -f Makefile $(CONFIG_CLEAN_FILES)

maintainer-clean-generic:
	@echo "This command is intended for maintainers to use"
	@echo "it deletes files that may require special tools to rebuild."
clean: clean-am

clean-am: clean-binPROGRAMS clean-generic clean-libtool mostlyclean-am

distclean: distclean-am

distclean-am: clean-am distclean-compile distclean-depend \
	distclean-generic distclean-libtool distclean-tags

dvi: dvi-am

dvi-am:

info: info-am

info-am:

install-data-am:

install-exec-am: install-binPROGRAMS

install-info: install-info-am

install-man:

installcheck-am:

maintainer-clean: maintainer-clean-am

maintainer-clean-am: distclean-am maintainer-clean-generic

mostlyclean: mostlyclean-am

mostlyclean-am: mostlyclean-compile mostlyclean-generic \
	mostlyclean-libtool

pdf: pdf-am

pdf-am:

ps: ps-am

ps-am:

uninstall-am: uninstall-binPROGRAMS uninstall-info-am

.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
	clean-generic clean-libtool ctags distclean distclean-compile \
	distclean-depend distclean-generic distclean-libtool \
	distclean-tags distdir dvi dvi-am info info-am install \
	install-am install-binPROGRAMS install-data install-data-am \
	install-exec install-exec-am install-info install-info-am \
	install-man install-strip installcheck installcheck-am \
	installdirs maintainer-clean maintainer-clean-generic \
	mostlyclean mostlyclean-compile mostlyclean-generic \
	mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
	uninstall-am uninstall-binPROGRAMS uninstall-info-am

# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
jpilot-0.99.6/intl/0000777000175000001440000000000007704170235007634 5jpilot-0.99.6/intl/ChangeLog0000644000175000001440000000011107617330413011312 2002-08-06  GNU  <bug-gnu-gettext@gnu.org>

	* Version 0.11.5 released.

jpilot-0.99.6/intl/Makefile.in0000644000175000001440000002515407617330413011623 # Makefile for directory with message catalog handling in GNU NLS Utilities.
# Copyright (C) 1995-1998, 2000-2002 Free Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify it
# under the terms of the GNU Library General Public License as published
# by the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# Library General Public License for more details.
#
# You should have received a copy of the GNU Library General Public
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
# USA.

PACKAGE = @PACKAGE@
VERSION = @VERSION@

SHELL = /bin/sh

srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = ..
VPATH = @srcdir@

prefix = @prefix@
exec_prefix = @exec_prefix@
transform = @program_transform_name@
libdir = @libdir@
includedir = @includedir@
datadir = @datadir@
localedir = $(datadir)/locale
gettextsrcdir = $(datadir)/gettext/intl
aliaspath = $(localedir)
subdir = intl

INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
MKINSTALLDIRS = @MKINSTALLDIRS@
mkinstalldirs = $(SHELL) `case "$(MKINSTALLDIRS)" in /*) echo "$(MKINSTALLDIRS)" ;; *) echo "$(top_builddir)/$(MKINSTALLDIRS)" ;; esac`

l = @INTL_LIBTOOL_SUFFIX_PREFIX@

AR = ar
CC = @CC@
LIBTOOL = @LIBTOOL@
RANLIB = @RANLIB@
YACC = @INTLBISON@ -y -d
YFLAGS = --name-prefix=__gettext

DEFS = -DLOCALEDIR=\"$(localedir)\" -DLOCALE_ALIAS_PATH=\"$(aliaspath)\" \
-DLIBDIR=\"$(libdir)\" -DIN_LIBINTL @DEFS@
CPPFLAGS = @CPPFLAGS@
CFLAGS = @CFLAGS@
LDFLAGS = @LDFLAGS@

COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS)

HEADERS = $(COMHDRS) libgnuintl.h loadinfo.h
COMHDRS = gmo.h gettextP.h hash-string.h plural-exp.h eval-plural.h os2compat.h
SOURCES = $(COMSRCS) intl-compat.c
COMSRCS = bindtextdom.c dcgettext.c dgettext.c gettext.c \
finddomain.c loadmsgcat.c localealias.c textdomain.c l10nflist.c \
explodename.c dcigettext.c dcngettext.c dngettext.c ngettext.c plural.y \
plural-exp.c localcharset.c localename.c osdep.c os2compat.c
OBJECTS = @INTLOBJS@ bindtextdom.$lo dcgettext.$lo dgettext.$lo gettext.$lo \
finddomain.$lo loadmsgcat.$lo localealias.$lo textdomain.$lo l10nflist.$lo \
explodename.$lo dcigettext.$lo dcngettext.$lo dngettext.$lo ngettext.$lo \
plural.$lo plural-exp.$lo localcharset.$lo localename.$lo osdep.$lo
GETTOBJS = intl-compat.$lo
DISTFILES.common = Makefile.in \
config.charset locale.alias ref-add.sin ref-del.sin $(HEADERS) $(SOURCES)
DISTFILES.generated = plural.c
DISTFILES.normal = VERSION
DISTFILES.gettext = COPYING.LIB-2.0 COPYING.LIB-2.1 libintl.glibc
DISTFILES.obsolete = xopen-msg.sed linux-msg.sed po2tbl.sed.in cat-compat.c \
COPYING.LIB-2 gettext.h libgettext.h plural-eval.c

# Libtool's library version information for libintl.
# Before making a gettext release, the gettext maintainer must change this
# according to the libtool documentation, section "Library interface versions".
# Maintainers of other packages that include the intl directory must *not*
# change these values.
LTV_CURRENT=4
LTV_REVISION=0
LTV_AGE=2

.SUFFIXES:
.SUFFIXES: .c .y .o .lo .sin .sed
.c.o:
	$(COMPILE) $<
.c.lo:
	$(LIBTOOL) --mode=compile $(COMPILE) $<

.y.c:
	$(YACC) $(YFLAGS) --output $@ $<
	rm -f $*.h

.sin.sed:
	sed -e '/^#/d' -e 's/@''PACKAGE''@/@PACKAGE@/g' $< > t-$@
	mv t-$@ $@

INCLUDES = -I.. -I. -I$(top_srcdir)/intl

all: all-@USE_INCLUDED_LIBINTL@
all-yes: libintl.$la libintl.h charset.alias ref-add.sed ref-del.sed
all-no: all-no-@BUILD_INCLUDED_LIBINTL@
all-no-yes: libgnuintl.$la
all-no-no:

libintl.a libgnuintl.a: $(OBJECTS)
	rm -f $@
	$(AR) cru $@ $(OBJECTS)
	$(RANLIB) $@

libintl.la libgnuintl.la: $(OBJECTS)
	$(LIBTOOL) --mode=link \
	  $(CC) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS) $(LDFLAGS) -o $@ \
	  $(OBJECTS) @LTLIBICONV@ -lc \
	  -version-info $(LTV_CURRENT):$(LTV_REVISION):$(LTV_AGE) \
	  -rpath $(libdir) \
	  -no-undefined

libintl.h: libgnuintl.h
	cp $(srcdir)/libgnuintl.h libintl.h

charset.alias: config.charset
	$(SHELL) $(srcdir)/config.charset '@host@' > t-$@
	mv t-$@ $@

check: all

# This installation goal is only used in GNU gettext.  Packages which
# only use the library should use install instead.

# We must not install the libintl.h/libintl.a files if we are on a
# system which has the GNU gettext() function in its C library or in a
# separate library.
# If you want to use the one which comes with this version of the
# package, you have to use `configure --with-included-gettext'.
install: install-exec install-data
install-exec: all
	if test "$(PACKAGE)" = "gettext" \
	   && test '@INTLOBJS@' = '$(GETTOBJS)'; then \
	  $(mkinstalldirs) $(DESTDIR)$(libdir) $(DESTDIR)$(includedir); \
	  $(INSTALL_DATA) libintl.h $(DESTDIR)$(includedir)/libintl.h; \
	  $(LIBTOOL) --mode=install \
	    $(INSTALL_DATA) libintl.$la $(DESTDIR)$(libdir)/libintl.$la; \
	else \
	  : ; \
	fi
	if test '@USE_INCLUDED_LIBINTL@' = yes; then \
	  test @GLIBC21@ != no || $(mkinstalldirs) $(DESTDIR)$(libdir); \
	  temp=$(DESTDIR)$(libdir)/t-charset.alias; \
	  dest=$(DESTDIR)$(libdir)/charset.alias; \
	  if test -f $(DESTDIR)$(libdir)/charset.alias; then \
	    orig=$(DESTDIR)$(libdir)/charset.alias; \
	    sed -f ref-add.sed $$orig > $$temp; \
	    $(INSTALL_DATA) $$temp $$dest; \
	    rm -f $$temp; \
	  else \
	    if test @GLIBC21@ = no; then \
	      orig=charset.alias; \
	      sed -f ref-add.sed $$orig > $$temp; \
	      $(INSTALL_DATA) $$temp $$dest; \
	      rm -f $$temp; \
	    fi; \
	  fi; \
	  $(mkinstalldirs) $(DESTDIR)$(localedir); \
	  test -f $(DESTDIR)$(localedir)/locale.alias \
	    && orig=$(DESTDIR)$(localedir)/locale.alias \
	    || orig=$(srcdir)/locale.alias; \
	  temp=$(DESTDIR)$(localedir)/t-locale.alias; \
	  dest=$(DESTDIR)$(localedir)/locale.alias; \
	  sed -f ref-add.sed $$orig > $$temp; \
	  $(INSTALL_DATA) $$temp $$dest; \
	  rm -f $$temp; \
	else \
	  : ; \
	fi
install-data: all
	if test "$(PACKAGE)" = "gettext"; then \
	  $(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \
	  $(INSTALL_DATA) VERSION $(DESTDIR)$(gettextsrcdir)/VERSION; \
	  $(INSTALL_DATA) ChangeLog.inst $(DESTDIR)$(gettextsrcdir)/ChangeLog; \
	  dists="COPYING.LIB-2.0 COPYING.LIB-2.1 $(DISTFILES.common)"; \
	  for file in $$dists; do \
	    $(INSTALL_DATA) $(srcdir)/$$file \
			    $(DESTDIR)$(gettextsrcdir)/$$file; \
	  done; \
	  chmod a+x $(DESTDIR)$(gettextsrcdir)/config.charset; \
	  dists="$(DISTFILES.generated)"; \
	  for file in $$dists; do \
	    if test -f $$file; then dir=.; else dir=$(srcdir); fi; \
	    $(INSTALL_DATA) $$dir/$$file \
			    $(DESTDIR)$(gettextsrcdir)/$$file; \
	  done; \
	  dists="$(DISTFILES.obsolete)"; \
	  for file in $$dists; do \
	    rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \
	  done; \
	else \
	  : ; \
	fi

install-strip: install

installdirs:
	if test "$(PACKAGE)" = "gettext" \
	   && test '@INTLOBJS@' = '$(GETTOBJS)'; then \
	  $(mkinstalldirs) $(DESTDIR)$(libdir) $(DESTDIR)$(includedir); \
	else \
	  : ; \
	fi
	if test '@USE_INCLUDED_LIBINTL@' = yes; then \
	  test @GLIBC21@ != no || $(mkinstalldirs) $(DESTDIR)$(libdir); \
	  $(mkinstalldirs) $(DESTDIR)$(localedir); \
	else \
	  : ; \
	fi
	if test "$(PACKAGE)" = "gettext"; then \
	  $(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \
	else \
	  : ; \
	fi

# Define this as empty until I found a useful application.
installcheck:

uninstall:
	if test "$(PACKAGE)" = "gettext" \
	   && test '@INTLOBJS@' = '$(GETTOBJS)'; then \
	  rm -f $(DESTDIR)$(includedir)/libintl.h; \
	  $(LIBTOOL) --mode=uninstall \
	    rm -f $(DESTDIR)$(libdir)/libintl.$la; \
	else \
	  : ; \
	fi
	if test '@USE_INCLUDED_LIBINTL@' = yes; then \
	  if test -f $(DESTDIR)$(libdir)/charset.alias; then \
	    temp=$(DESTDIR)$(libdir)/t-charset.alias; \
	    dest=$(DESTDIR)$(libdir)/charset.alias; \
	    sed -f ref-del.sed $$dest > $$temp; \
	    if grep '^# Packages using this file: $$' $$temp > /dev/null; then \
	      rm -f $$dest; \
	    else \
	      $(INSTALL_DATA) $$temp $$dest; \
	    fi; \
	    rm -f $$temp; \
	  fi; \
	  if test -f $(DESTDIR)$(localedir)/locale.alias; then \
	    temp=$(DESTDIR)$(localedir)/t-locale.alias; \
	    dest=$(DESTDIR)$(localedir)/locale.alias; \
	    sed -f ref-del.sed $$dest > $$temp; \
	    if grep '^# Packages using this file: $$' $$temp > /dev/null; then \
	      rm -f $$dest; \
	    else \
	      $(INSTALL_DATA) $$temp $$dest; \
	    fi; \
	    rm -f $$temp; \
	  fi; \
	else \
	  : ; \
	fi
	if test "$(PACKAGE)" = "gettext"; then \
	  for file in VERSION ChangeLog COPYING.LIB-2.0 COPYING.LIB-2.1 $(DISTFILES.common) $(DISTFILES.generated); do \
	    rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \
	  done; \
	else \
	  : ; \
	fi

info dvi:

$(OBJECTS): ../config.h libgnuintl.h
bindtextdom.$lo dcgettext.$lo dcigettext.$lo dcngettext.$lo dgettext.$lo dngettext.$lo finddomain.$lo gettext.$lo intl-compat.$lo loadmsgcat.$lo localealias.$lo ngettext.$lo textdomain.$lo: gettextP.h gmo.h loadinfo.h
dcigettext.$lo: hash-string.h
explodename.$lo l10nflist.$lo: loadinfo.h
dcigettext.$lo loadmsgcat.$lo plural.$lo plural-exp.$lo: plural-exp.h
dcigettext.$lo: eval-plural.h

tags: TAGS

TAGS: $(HEADERS) $(SOURCES)
	here=`pwd`; cd $(srcdir) && etags -o $$here/TAGS $(HEADERS) $(SOURCES)

id: ID

ID: $(HEADERS) $(SOURCES)
	here=`pwd`; cd $(srcdir) && mkid -f$$here/ID $(HEADERS) $(SOURCES)


mostlyclean:
	rm -f *.a *.la *.o *.lo core core.*
	rm -f libintl.h charset.alias ref-add.sed ref-del.sed
	rm -f -r .libs _libs

clean: mostlyclean

distclean: clean
	rm -f Makefile ID TAGS
	if test "$(PACKAGE)" = gettext; then \
	  rm -f ChangeLog.inst $(DISTFILES.normal); \
	else \
	  : ; \
	fi

maintainer-clean: distclean
	@echo "This command is intended for maintainers to use;"
	@echo "it deletes files that may require special tools to rebuild."


# GNU gettext needs not contain the file `VERSION' but contains some
# other files which should not be distributed in other packages.
distdir = ../$(PACKAGE)-$(VERSION)/$(subdir)
dist distdir: Makefile
	if test "$(PACKAGE)" = gettext; then \
	  additional="$(DISTFILES.gettext)"; \
	else \
	  additional="$(DISTFILES.normal)"; \
	fi; \
	$(MAKE) $(DISTFILES.common) $(DISTFILES.generated) $$additional; \
	for file in ChangeLog $(DISTFILES.common) $(DISTFILES.generated) $$additional; do \
	  if test -f $$file; then dir=.; else dir=$(srcdir); fi; \
	  cp -p $$dir/$$file $(distdir); \
	done

Makefile: Makefile.in ../config.status
	cd .. \
	  && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status

# Tell versions [3.59,3.63) of GNU make not to export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
jpilot-0.99.6/intl/config.charset0000755000175000001440000003341207617330413012375 #! /bin/sh
# Output a system dependent table of character encoding aliases.
#
#   Copyright (C) 2000-2002 Free Software Foundation, Inc.
#
#   This program is free software; you can redistribute it and/or modify it
#   under the terms of the GNU Library General Public License as published
#   by the Free Software Foundation; either version 2, or (at your option)
#   any later version.
#
#   This program is distributed in the hope that it will be useful,
#   but WITHOUT ANY WARRANTY; without even the implied warranty of
#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
#   Library General Public License for more details.
#
#   You should have received a copy of the GNU Library General Public
#   License along with this program; if not, write to the Free Software
#   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
#   USA.
#
# The table consists of lines of the form
#    ALIAS  CANONICAL
#
# ALIAS is the (system dependent) result of "nl_langinfo (CODESET)".
# ALIAS is compared in a case sensitive way.
#
# CANONICAL is the GNU canonical name for this character encoding.
# It must be an encoding supported by libiconv. Support by GNU libc is
# also desirable. CANONICAL is case insensitive. Usually an upper case
# MIME charset name is preferred.
# The current list of GNU canonical charset names is as follows.
#
#       name                         used by which systems         a MIME name?
#   ASCII, ANSI_X3.4-1968     glibc solaris freebsd
#   ISO-8859-1                glibc aix hpux irix osf solaris freebsd   yes
#   ISO-8859-2                glibc aix hpux irix osf solaris freebsd   yes
#   ISO-8859-3                glibc solaris                             yes
#   ISO-8859-4                osf solaris freebsd                       yes
#   ISO-8859-5                glibc aix hpux irix osf solaris freebsd   yes
#   ISO-8859-6                glibc aix hpux solaris                    yes
#   ISO-8859-7                glibc aix hpux irix osf solaris           yes
#   ISO-8859-8                glibc aix hpux osf solaris                yes
#   ISO-8859-9                glibc aix hpux irix osf solaris           yes
#   ISO-8859-13               glibc
#   ISO-8859-14               glibc
#   ISO-8859-15               glibc aix osf solaris freebsd
#   KOI8-R                    glibc solaris freebsd                     yes
#   KOI8-U                    glibc freebsd                             yes
#   KOI8-T                    glibc
#   CP437                     dos
#   CP775                     dos
#   CP850                     aix osf dos
#   CP852                     dos
#   CP855                     dos
#   CP856                     aix
#   CP857                     dos
#   CP861                     dos
#   CP862                     dos
#   CP864                     dos
#   CP865                     dos
#   CP866                     freebsd dos
#   CP869                     dos
#   CP874                     woe32 dos
#   CP922                     aix
#   CP932                     aix woe32 dos
#   CP943                     aix
#   CP949                     osf woe32 dos
#   CP950                     woe32 dos
#   CP1046                    aix
#   CP1124                    aix
#   CP1125                    dos
#   CP1129                    aix
#   CP1250                    woe32
#   CP1251                    glibc woe32
#   CP1252                    aix woe32
#   CP1253                    woe32
#   CP1254                    woe32
#   CP1255                    glibc woe32
#   CP1256                    woe32
#   CP1257                    woe32
#   GB2312                    glibc aix hpux irix solaris freebsd       yes
#   EUC-JP                    glibc aix hpux irix osf solaris freebsd   yes
#   EUC-KR                    glibc aix hpux irix osf solaris freebsd   yes
#   EUC-TW                    glibc aix hpux irix osf solaris
#   BIG5                      glibc aix hpux osf solaris freebsd        yes
#   BIG5-HKSCS                glibc solaris
#   GBK                       glibc aix osf solaris woe32 dos
#   GB18030                   glibc solaris
#   SHIFT_JIS                 hpux osf solaris freebsd                  yes
#   JOHAB                     glibc solaris woe32
#   TIS-620                   glibc aix hpux osf solaris
#   VISCII                    glibc                                     yes
#   TCVN5712-1                glibc
#   GEORGIAN-PS               glibc
#   HP-ROMAN8                 hpux
#   HP-ARABIC8                hpux
#   HP-GREEK8                 hpux
#   HP-HEBREW8                hpux
#   HP-TURKISH8               hpux
#   HP-KANA8                  hpux
#   DEC-KANJI                 osf
#   DEC-HANYU                 osf
#   UTF-8                     glibc aix hpux osf solaris                yes
#
# Note: Names which are not marked as being a MIME name should not be used in
# Internet protocols for information interchange (mail, news, etc.).
#
# Note: ASCII and ANSI_X3.4-1968 are synonymous canonical names. Applications
# must understand both names and treat them as equivalent.
#
# The first argument passed to this file is the canonical host specification,
#    CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
# or
#    CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM

host="$1"
os=`echo "$host" | sed -e 's/^[^-]*-[^-]*-\(.*\)$/\1/'`
echo "# This file contains a table of character encoding aliases,"
echo "# suitable for operating system '${os}'."
echo "# It was automatically generated from config.charset."
# List of references, updated during installation:
echo "# Packages using this file: "
case "$os" in
    linux* | *-gnu*)
	# With glibc-2.1 or newer, we don't need any canonicalization,
	# because glibc has iconv and both glibc and libiconv support all
	# GNU canonical names directly. Therefore, the Makefile does not
	# need to install the alias file at all.
	# The following applies only to glibc-2.0.x and older libcs.
	echo "ISO_646.IRV:1983 ASCII"
	;;
    aix*)
	echo "ISO8859-1 ISO-8859-1"
	echo "ISO8859-2 ISO-8859-2"
	echo "ISO8859-5 ISO-8859-5"
	echo "ISO8859-6 ISO-8859-6"
	echo "ISO8859-7 ISO-8859-7"
	echo "ISO8859-8 ISO-8859-8"
	echo "ISO8859-9 ISO-8859-9"
	echo "ISO8859-15 ISO-8859-15"
	echo "IBM-850 CP850"
	echo "IBM-856 CP856"
	echo "IBM-921 ISO-8859-13"
	echo "IBM-922 CP922"
	echo "IBM-932 CP932"
	echo "IBM-943 CP943"
	echo "IBM-1046 CP1046"
	echo "IBM-1124 CP1124"
	echo "IBM-1129 CP1129"
	echo "IBM-1252 CP1252"
	echo "IBM-eucCN GB2312"
	echo "IBM-eucJP EUC-JP"
	echo "IBM-eucKR EUC-KR"
	echo "IBM-eucTW EUC-TW"
	echo "big5 BIG5"
	echo "GBK GBK"
	echo "TIS-620 TIS-620"
	echo "UTF-8 UTF-8"
	;;
    hpux*)
	echo "iso88591 ISO-8859-1"
	echo "iso88592 ISO-8859-2"
	echo "iso88595 ISO-8859-5"
	echo "iso88596 ISO-8859-6"
	echo "iso88597 ISO-8859-7"
	echo "iso88598 ISO-8859-8"
	echo "iso88599 ISO-8859-9"
	echo "iso885915 ISO-8859-15"
	echo "roman8 HP-ROMAN8"
	echo "arabic8 HP-ARABIC8"
	echo "greek8 HP-GREEK8"
	echo "hebrew8 HP-HEBREW8"
	echo "turkish8 HP-TURKISH8"
	echo "kana8 HP-KANA8"
	echo "tis620 TIS-620"
	echo "big5 BIG5"
	echo "eucJP EUC-JP"
	echo "eucKR EUC-KR"
	echo "eucTW EUC-TW"
	echo "hp15CN GB2312"
	#echo "ccdc ?" # what is this?
	echo "SJIS SHIFT_JIS"
	echo "utf8 UTF-8"
	;;
    irix*)
	echo "ISO8859-1 ISO-8859-1"
	echo "ISO8859-2 ISO-8859-2"
	echo "ISO8859-5 ISO-8859-5"
	echo "ISO8859-7 ISO-8859-7"
	echo "ISO8859-9 ISO-8859-9"
	echo "eucCN GB2312"
	echo "eucJP EUC-JP"
	echo "eucKR EUC-KR"
	echo "eucTW EUC-TW"
	;;
    osf*)
	echo "ISO8859-1 ISO-8859-1"
	echo "ISO8859-2 ISO-8859-2"
	echo "ISO8859-4 ISO-8859-4"
	echo "ISO8859-5 ISO-8859-5"
	echo "ISO8859-7 ISO-8859-7"
	echo "ISO8859-8 ISO-8859-8"
	echo "ISO8859-9 ISO-8859-9"
	echo "ISO8859-15 ISO-8859-15"
	echo "cp850 CP850"
	echo "big5 BIG5"
	echo "dechanyu DEC-HANYU"
	echo "dechanzi GB2312"
	echo "deckanji DEC-KANJI"
	echo "deckorean EUC-KR"
	echo "eucJP EUC-JP"
	echo "eucKR EUC-KR"
	echo "eucTW EUC-TW"
	echo "GBK GBK"
	echo "KSC5601 CP949"
	echo "sdeckanji EUC-JP"
	echo "SJIS SHIFT_JIS"
	echo "TACTIS TIS-620"
	echo "UTF-8 UTF-8"
	;;
    solaris*)
	echo "646 ASCII"
	echo "ISO8859-1 ISO-8859-1"
	echo "ISO8859-2 ISO-8859-2"
	echo "ISO8859-3 ISO-8859-3"
	echo "ISO8859-4 ISO-8859-4"
	echo "ISO8859-5 ISO-8859-5"
	echo "ISO8859-6 ISO-8859-6"
	echo "ISO8859-7 ISO-8859-7"
	echo "ISO8859-8 ISO-8859-8"
	echo "ISO8859-9 ISO-8859-9"
	echo "ISO8859-15 ISO-8859-15"
	echo "koi8-r KOI8-R"
	echo "BIG5 BIG5"
	echo "Big5-HKSCS BIG5-HKSCS"
	echo "gb2312 GB2312"
	echo "GBK GBK"
	echo "GB18030 GB18030"
	echo "cns11643 EUC-TW"
	echo "5601 EUC-KR"
	echo "ko_KR.johap92 JOHAB"
	echo "eucJP EUC-JP"
	echo "PCK SHIFT_JIS"
	echo "TIS620.2533 TIS-620"
	#echo "sun_eu_greek ?" # what is this?
	echo "UTF-8 UTF-8"
	;;
    freebsd* | os2*)
	# FreeBSD 4.2 doesn't have nl_langinfo(CODESET); therefore
	# localcharset.c falls back to using the full locale name
	# from the environment variables.
	# Likewise for OS/2. OS/2 has XFree86 just like FreeBSD. Just
	# reuse FreeBSD's locale data for OS/2.
	echo "C ASCII"
	echo "US-ASCII ASCII"
	for l in la_LN lt_LN; do
	  echo "$l.ASCII ASCII"
	done
	for l in da_DK de_AT de_CH de_DE en_AU en_CA en_GB en_US es_ES \
	         fi_FI fr_BE fr_CA fr_CH fr_FR is_IS it_CH it_IT la_LN \
	         lt_LN nl_BE nl_NL no_NO pt_PT sv_SE; do
	  echo "$l.ISO_8859-1 ISO-8859-1"
	  echo "$l.DIS_8859-15 ISO-8859-15"
	done
	for l in cs_CZ hr_HR hu_HU la_LN lt_LN pl_PL sl_SI; do
	  echo "$l.ISO_8859-2 ISO-8859-2"
	done
	for l in la_LN lt_LT; do
	  echo "$l.ISO_8859-4 ISO-8859-4"
	done
	for l in ru_RU ru_SU; do
	  echo "$l.KOI8-R KOI8-R"
	  echo "$l.ISO_8859-5 ISO-8859-5"
	  echo "$l.CP866 CP866"
	done
	echo "uk_UA.KOI8-U KOI8-U"
	echo "zh_TW.BIG5 BIG5"
	echo "zh_TW.Big5 BIG5"
	echo "zh_CN.EUC GB2312"
	echo "ja_JP.EUC EUC-JP"
	echo "ja_JP.SJIS SHIFT_JIS"
	echo "ja_JP.Shift_JIS SHIFT_JIS"
	echo "ko_KR.EUC EUC-KR"
	;;
    netbsd*)
	echo "646 ASCII"
	echo "ISO8859-1 ISO-8859-1"
	echo "ISO8859-2 ISO-8859-2"
	echo "ISO8859-4 ISO-8859-4"
	echo "ISO8859-5 ISO-8859-5"
	echo "ISO8859-15 ISO-8859-15"
	echo "eucCN GB2312"
	echo "eucJP EUC-JP"
	echo "eucKR EUC-KR"
	echo "eucTW EUC-TW"
	echo "BIG5 BIG5"
	echo "SJIS SHIFT_JIS"
	;;
    beos*)
	# BeOS has a single locale, and it has UTF-8 encoding.
	echo "* UTF-8"
	;;
    msdosdjgpp*)
	# DJGPP 2.03 doesn't have nl_langinfo(CODESET); therefore
	# localcharset.c falls back to using the full locale name
	# from the environment variables.
	echo "#"
	echo "# The encodings given here may not all be correct."
	echo "# If you find that the encoding given for your language and"
	echo "# country is not the one your DOS machine actually uses, just"
	echo "# correct it in this file, and send a mail to"
	echo "# Juan Manuel Guerrero <st001906@hrz1.hrz.tu-darmstadt.de>"
	echo "# and Bruno Haible <bruno@clisp.org>."
	echo "#"
	echo "C ASCII"
	# ISO-8859-1 languages
	echo "ca CP850"
	echo "ca_ES CP850"
	echo "da CP865"    # not CP850 ??
	echo "da_DK CP865" # not CP850 ??
	echo "de CP850"
	echo "de_AT CP850"
	echo "de_CH CP850"
	echo "de_DE CP850"
	echo "en CP850"
	echo "en_AU CP850" # not CP437 ??
	echo "en_CA CP850"
	echo "en_GB CP850"
	echo "en_NZ CP437"
	echo "en_US CP437"
	echo "en_ZA CP850" # not CP437 ??
	echo "es CP850"
	echo "es_AR CP850"
	echo "es_BO CP850"
	echo "es_CL CP850"
	echo "es_CO CP850"
	echo "es_CR CP850"
	echo "es_CU CP850"
	echo "es_DO CP850"
	echo "es_EC CP850"
	echo "es_ES CP850"
	echo "es_GT CP850"
	echo "es_HN CP850"
	echo "es_MX CP850"
	echo "es_NI CP850"
	echo "es_PA CP850"
	echo "es_PY CP850"
	echo "es_PE CP850"
	echo "es_SV CP850"
	echo "es_UY CP850"
	echo "es_VE CP850"
	echo "et CP850"
	echo "et_EE CP850"
	echo "eu CP850"
	echo "eu_ES CP850"
	echo "fi CP850"
	echo "fi_FI CP850"
	echo "fr CP850"
	echo "fr_BE CP850"
	echo "fr_CA CP850"
	echo "fr_CH CP850"
	echo "fr_FR CP850"
	echo "ga CP850"
	echo "ga_IE CP850"
	echo "gd CP850"
	echo "gd_GB CP850"
	echo "gl CP850"
	echo "gl_ES CP850"
	echo "id CP850"    # not CP437 ??
	echo "id_ID CP850" # not CP437 ??
	echo "is CP861"    # not CP850 ??
	echo "is_IS CP861" # not CP850 ??
	echo "it CP850"
	echo "it_CH CP850"
	echo "it_IT CP850"
	echo "lt CP775"
	echo "lt_LT CP775"
	echo "lv CP775"
	echo "lv_LV CP775"
	echo "nb CP865"    # not CP850 ??
	echo "nb_NO CP865" # not CP850 ??
	echo "nl CP850"
	echo "nl_BE CP850"
	echo "nl_NL CP850"
	echo "nn CP865"    # not CP850 ??
	echo "nn_NO CP865" # not CP850 ??
	echo "no CP865"    # not CP850 ??
	echo "no_NO CP865" # not CP850 ??
	echo "pt CP850"
	echo "pt_BR CP850"
	echo "pt_PT CP850"
	echo "sv CP850"
	echo "sv_SE CP850"
	# ISO-8859-2 languages
	echo "cs CP852"
	echo "cs_CZ CP852"
	echo "hr CP852"
	echo "hr_HR CP852"
	echo "hu CP852"
	echo "hu_HU CP852"
	echo "pl CP852"
	echo "pl_PL CP852"
	echo "ro CP852"
	echo "ro_RO CP852"
	echo "sk CP852"
	echo "sk_SK CP852"
	echo "sl CP852"
	echo "sl_SI CP852"
	echo "sq CP852"
	echo "sq_AL CP852"
	echo "sr CP852"    # CP852 or CP866 or CP855 ??
	echo "sr_YU CP852" # CP852 or CP866 or CP855 ??
	# ISO-8859-3 languages
	echo "mt CP850"
	echo "mt_MT CP850"
	# ISO-8859-5 languages
	echo "be CP866"
	echo "be_BE CP866"
	echo "bg CP866"    # not CP855 ??
	echo "bg_BG CP866" # not CP855 ??
	echo "mk CP866"    # not CP855 ??
	echo "mk_MK CP866" # not CP855 ??
	echo "ru CP866"
	echo "ru_RU CP866"
	echo "uk CP1125"
	echo "uk_UA CP1125"
	# ISO-8859-6 languages
	echo "ar CP864"
	echo "ar_AE CP864"
	echo "ar_DZ CP864"
	echo "ar_EG CP864"
	echo "ar_IQ CP864"
	echo "ar_IR CP864"
	echo "ar_JO CP864"
	echo "ar_KW CP864"
	echo "ar_MA CP864"
	echo "ar_OM CP864"
	echo "ar_QA CP864"
	echo "ar_SA CP864"
	echo "ar_SY CP864"
	# ISO-8859-7 languages
	echo "el CP869"
	echo "el_GR CP869"
	# ISO-8859-8 languages
	echo "he CP862"
	echo "he_IL CP862"
	# ISO-8859-9 languages
	echo "tr CP857"
	echo "tr_TR CP857"
	# Japanese
	echo "ja CP932"
	echo "ja_JP CP932"
	# Chinese
	echo "zh_CN GBK"
	echo "zh_TW CP950" # not CP938 ??
	# Korean
	echo "kr CP949"    # not CP934 ??
	echo "kr_KR CP949" # not CP934 ??
	# Thai
	echo "th CP874"
	echo "th_TH CP874"
	# Other
	echo "eo CP850"
	echo "eo_EO CP850"
	;;
esac
jpilot-0.99.6/intl/locale.alias0000644000175000001440000000514107617330413012022 # Locale name alias data base.
# Copyright (C) 1996,1997,1998,1999,2000,2001 Free Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify it
# under the terms of the GNU Library General Public License as published
# by the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# Library General Public License for more details.
#
# You should have received a copy of the GNU Library General Public
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
# USA.

# The format of this file is the same as for the corresponding file of
# the X Window System, which normally can be found in
#	/usr/lib/X11/locale/locale.alias
# A single line contains two fields: an alias and a substitution value.
# All entries are case independent.

# Note: This file is far from being complete.  If you have a value for
# your own site which you think might be useful for others too, share
# it with the rest of us.  Send it using the `glibcbug' script to
# bugs@gnu.org.

# Packages using this file: 

bokmal		no_NO.ISO-8859-1
bokmċl		no_NO.ISO-8859-1
catalan		ca_ES.ISO-8859-1
croatian	hr_HR.ISO-8859-2
czech		cs_CZ.ISO-8859-2
danish          da_DK.ISO-8859-1
dansk		da_DK.ISO-8859-1
deutsch		de_DE.ISO-8859-1
dutch		nl_NL.ISO-8859-1
eesti		et_EE.ISO-8859-1
estonian	et_EE.ISO-8859-1
finnish         fi_FI.ISO-8859-1
français	fr_FR.ISO-8859-1
french		fr_FR.ISO-8859-1
galego		gl_ES.ISO-8859-1
galician	gl_ES.ISO-8859-1
german		de_DE.ISO-8859-1
greek           el_GR.ISO-8859-7
hebrew          he_IL.ISO-8859-8
hrvatski	hr_HR.ISO-8859-2
hungarian       hu_HU.ISO-8859-2
icelandic       is_IS.ISO-8859-1
italian         it_IT.ISO-8859-1
japanese	ja_JP.eucJP
japanese.euc	ja_JP.eucJP
ja_JP		ja_JP.eucJP
ja_JP.ujis	ja_JP.eucJP
japanese.sjis	ja_JP.SJIS
korean		ko_KR.eucKR
korean.euc 	ko_KR.eucKR
ko_KR		ko_KR.eucKR
lithuanian      lt_LT.ISO-8859-13
nb_NO		no_NO.ISO-8859-1
nb_NO.ISO-8859-1 no_NO.ISO-8859-1
norwegian       no_NO.ISO-8859-1
nynorsk		nn_NO.ISO-8859-1
polish          pl_PL.ISO-8859-2
portuguese      pt_PT.ISO-8859-1
romanian        ro_RO.ISO-8859-2
russian         ru_RU.ISO-8859-5
slovak          sk_SK.ISO-8859-2
slovene         sl_SI.ISO-8859-2
slovenian       sl_SI.ISO-8859-2
spanish         es_ES.ISO-8859-1
swedish         sv_SE.ISO-8859-1
thai		th_TH.TIS-620
turkish         tr_TR.ISO-8859-9
jpilot-0.99.6/intl/ref-add.sin0000644000175000001440000000210107617330413011556 # Add this package to a list of references stored in a text file.
#
#   Copyright (C) 2000 Free Software Foundation, Inc.
#
#   This program is free software; you can redistribute it and/or modify it
#   under the terms of the GNU Library General Public License as published
#   by the Free Software Foundation; either version 2, or (at your option)
#   any later version.
#
#   This program is distributed in the hope that it will be useful,
#   but WITHOUT ANY WARRANTY; without even the implied warranty of
#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
#   Library General Public License for more details.
#
#   You should have received a copy of the GNU Library General Public
#   License along with this program; if not, write to the Free Software
#   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
#   USA.
#
# Written by Bruno Haible <haible@clisp.cons.org>.
#
/^# Packages using this file: / {
  s/# Packages using this file://
  ta
  :a
  s/ @PACKAGE@ / @PACKAGE@ /
  tb
  s/ $/ @PACKAGE@ /
  :b
  s/^/# Packages using this file:/
}
jpilot-0.99.6/intl/ref-del.sin0000644000175000001440000000202407617330413011576 # Remove this package from a list of references stored in a text file.
#
#   Copyright (C) 2000 Free Software Foundation, Inc.
#
#   This program is free software; you can redistribute it and/or modify it
#   under the terms of the GNU Library General Public License as published
#   by the Free Software Foundation; either version 2, or (at your option)
#   any later version.
#
#   This program is distributed in the hope that it will be useful,
#   but WITHOUT ANY WARRANTY; without even the implied warranty of
#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
#   Library General Public License for more details.
#
#   You should have received a copy of the GNU Library General Public
#   License along with this program; if not, write to the Free Software
#   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
#   USA.
#
# Written by Bruno Haible <haible@clisp.cons.org>.
#
/^# Packages using this file: / {
  s/# Packages using this file://
  s/ @PACKAGE@ / /
  s/^/# Packages using this file:/
}
jpilot-0.99.6/intl/gmo.h0000644000175000001440000001125707617330413010510 /* Description of GNU message catalog format: general file layout.
   Copyright (C) 1995, 1997, 2000-2002 Free Software Foundation, Inc.

   This program is free software; you can redistribute it and/or modify it
   under the terms of the GNU Library General Public License as published
   by the Free Software Foundation; either version 2, or (at your option)
   any later version.

   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   Library General Public License for more details.

   You should have received a copy of the GNU Library General Public
   License along with this program; if not, write to the Free Software
   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
   USA.  */

#ifndef _GETTEXT_H
#define _GETTEXT_H 1

#include <limits.h>

/* @@ end of prolog @@ */

/* The magic number of the GNU message catalog format.  */
#define _MAGIC 0x950412de
#define _MAGIC_SWAPPED 0xde120495

/* Revision number of the currently used .mo (binary) file format.  */
#define MO_REVISION_NUMBER 0

/* The following contortions are an attempt to use the C preprocessor
   to determine an unsigned integral type that is 32 bits wide.  An
   alternative approach is to use autoconf's AC_CHECK_SIZEOF macro, but
   as of version autoconf-2.13, the AC_CHECK_SIZEOF macro doesn't work
   when cross-compiling.  */

#if __STDC__
# define UINT_MAX_32_BITS 4294967295U
#else
# define UINT_MAX_32_BITS 0xFFFFFFFF
#endif

/* If UINT_MAX isn't defined, assume it's a 32-bit type.
   This should be valid for all systems GNU cares about because
   that doesn't include 16-bit systems, and only modern systems
   (that certainly have <limits.h>) have 64+-bit integral types.  */

#ifndef UINT_MAX
# define UINT_MAX UINT_MAX_32_BITS
#endif

#if UINT_MAX == UINT_MAX_32_BITS
typedef unsigned nls_uint32;
#else
# if USHRT_MAX == UINT_MAX_32_BITS
typedef unsigned short nls_uint32;
# else
#  if ULONG_MAX == UINT_MAX_32_BITS
typedef unsigned long nls_uint32;
#  else
  /* The following line is intended to throw an error.  Using #error is
     not portable enough.  */
  "Cannot determine unsigned 32-bit data type."
#  endif
# endif
#endif


/* Header for binary .mo file format.  */
struct mo_file_header
{
  /* The magic number.  */
  nls_uint32 magic;
  /* The revision number of the file format.  */
  nls_uint32 revision;

  /* The following are only used in .mo files with major revision 0.  */

  /* The number of strings pairs.  */
  nls_uint32 nstrings;
  /* Offset of table with start offsets of original strings.  */
  nls_uint32 orig_tab_offset;
  /* Offset of table with start offsets of translated strings.  */
  nls_uint32 trans_tab_offset;
  /* Size of hash table.  */
  nls_uint32 hash_tab_size;
  /* Offset of first hash table entry.  */
  nls_uint32 hash_tab_offset;

  /* The following are only used in .mo files with minor revision >= 1.  */

  /* The number of system dependent segments.  */
  nls_uint32 n_sysdep_segments;
  /* Offset of table describing system dependent segments.  */
  nls_uint32 sysdep_segments_offset;
  /* The number of system dependent strings pairs.  */
  nls_uint32 n_sysdep_strings;
  /* Offset of table with start offsets of original sysdep strings.  */
  nls_uint32 orig_sysdep_tab_offset;
  /* Offset of table with start offsets of translated sysdep strings.  */
  nls_uint32 trans_sysdep_tab_offset;
};

/* Descriptor for static string contained in the binary .mo file.  */
struct string_desc
{
  /* Length of addressed string, not including the trailing NUL.  */
  nls_uint32 length;
  /* Offset of string in file.  */
  nls_uint32 offset;
};

/* The following are only used in .mo files with minor revision >= 1.  */

/* Descriptor for system dependent string segment.  */
struct sysdep_segment
{
  /* Length of addressed string, including the trailing NUL.  */
  nls_uint32 length;
  /* Offset of string in file.  */
  nls_uint32 offset;
};

/* Descriptor for system dependent string.  */
struct sysdep_string
{
  /* Offset of static string segments in file.  */
  nls_uint32 offset;
  /* Alternating sequence of static and system dependent segments.
     The last segment is a static segment, including the trailing NUL.  */
  struct segment_pair
  {
    /* Size of static segment.  */
    nls_uint32 segsize;
    /* Reference to system dependent string segment, or ~0 at the end.  */
    nls_uint32 sysdepref;
  } segments[1];
};

/* Marker for the end of the segments[] array.  This has the value 0xFFFFFFFF,
   regardless whether 'int' is 16 bit, 32 bit, or 64 bit.  */
#define SEGMENTS_END ((nls_uint32) ~0)

/* @@ begin of epilog @@ */

#endif	/* gettext.h  */
jpilot-0.99.6/intl/gettextP.h0000644000175000001440000001676607617330413011544 /* Header describing internals of libintl library.
   Copyright (C) 1995-1999, 2000-2002 Free Software Foundation, Inc.
   Written by Ulrich Drepper <drepper@cygnus.com>, 1995.

   This program is free software; you can redistribute it and/or modify it
   under the terms of the GNU Library General Public License as published
   by the Free Software Foundation; either version 2, or (at your option)
   any later version.

   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   Library General Public License for more details.

   You should have received a copy of the GNU Library General Public
   License along with this program; if not, write to the Free Software
   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
   USA.  */

#ifndef _GETTEXTP_H
#define _GETTEXTP_H

#include <stddef.h>		/* Get size_t.  */

#ifdef _LIBC
# include "../iconv/gconv_int.h"
#else
# if HAVE_ICONV
#  include <iconv.h>
# endif
#endif

#include "loadinfo.h"

#include "gmo.h"		/* Get nls_uint32.  */

/* @@ end of prolog @@ */

#ifndef PARAMS
# if __STDC__ || defined __GNUC__ || defined __SUNPRO_C || defined __cplusplus || __PROTOTYPES
#  define PARAMS(args) args
# else
#  define PARAMS(args) ()
# endif
#endif

#ifndef internal_function
# define internal_function
#endif

#ifndef attribute_hidden
# define attribute_hidden
#endif

/* Tell the compiler when a conditional or integer expression is
   almost always true or almost always false.  */
#ifndef HAVE_BUILTIN_EXPECT
# define __builtin_expect(expr, val) (expr)
#endif

#ifndef W
# define W(flag, data) ((flag) ? SWAP (data) : (data))
#endif


#ifdef _LIBC
# include <byteswap.h>
# define SWAP(i) bswap_32 (i)
#else
static inline nls_uint32
SWAP (i)
     nls_uint32 i;
{
  return (i << 24) | ((i & 0xff00) << 8) | ((i >> 8) & 0xff00) | (i >> 24);
}
#endif


/* In-memory representation of system dependent string.  */
struct sysdep_string_desc
{
  /* Length of addressed string, including the trailing NUL.  */
  size_t length;
  /* Pointer to addressed string.  */
  const char *pointer;
};

/* The representation of an opened message catalog.  */
struct loaded_domain
{
  /* Pointer to memory containing the .mo file.  */
  const char *data;
  /* 1 if the memory is mmap()ed, 0 if the memory is malloc()ed.  */
  int use_mmap;
  /* Size of mmap()ed memory.  */
  size_t mmap_size;
  /* 1 if the .mo file uses a different endianness than this machine.  */
  int must_swap;
  /* Pointer to additional malloc()ed memory.  */
  void *malloced;

  /* Number of static strings pairs.  */
  nls_uint32 nstrings;
  /* Pointer to descriptors of original strings in the file.  */
  const struct string_desc *orig_tab;
  /* Pointer to descriptors of translated strings in the file.  */
  const struct string_desc *trans_tab;

  /* Number of system dependent strings pairs.  */
  nls_uint32 n_sysdep_strings;
  /* Pointer to descriptors of original sysdep strings.  */
  const struct sysdep_string_desc *orig_sysdep_tab;
  /* Pointer to descriptors of translated sysdep strings.  */
  const struct sysdep_string_desc *trans_sysdep_tab;

  /* Size of hash table.  */
  nls_uint32 hash_size;
  /* Pointer to hash table.  */
  const nls_uint32 *hash_tab;
  /* 1 if the hash table uses a different endianness than this machine.  */
  int must_swap_hash_tab;

  int codeset_cntr;
#ifdef _LIBC
  __gconv_t conv;
#else
# if HAVE_ICONV
  iconv_t conv;
# endif
#endif
  char **conv_tab;

  struct expression *plural;
  unsigned long int nplurals;
};

/* We want to allocate a string at the end of the struct.  But ISO C
   doesn't allow zero sized arrays.  */
#ifdef __GNUC__
# define ZERO 0
#else
# define ZERO 1
#endif

/* A set of settings bound to a message domain.  Used to store settings
   from bindtextdomain() and bind_textdomain_codeset().  */
struct binding
{
  struct binding *next;
  char *dirname;
  int codeset_cntr;	/* Incremented each time codeset changes.  */
  char *codeset;
  char domainname[ZERO];
};

/* A counter which is incremented each time some previous translations
   become invalid.
   This variable is part of the external ABI of the GNU libintl.  */
extern int _nl_msg_cat_cntr;

#ifndef _LIBC
const char *_nl_locale_name PARAMS ((int category, const char *categoryname));
#endif

struct loaded_l10nfile *_nl_find_domain PARAMS ((const char *__dirname,
						 char *__locale,
						 const char *__domainname,
					      struct binding *__domainbinding))
     internal_function;
void _nl_load_domain PARAMS ((struct loaded_l10nfile *__domain,
			      struct binding *__domainbinding))
     internal_function;
void _nl_unload_domain PARAMS ((struct loaded_domain *__domain))
     internal_function;
const char *_nl_init_domain_conv PARAMS ((struct loaded_l10nfile *__domain_file,
					  struct loaded_domain *__domain,
					  struct binding *__domainbinding))
     internal_function;
void _nl_free_domain_conv PARAMS ((struct loaded_domain *__domain))
     internal_function;

char *_nl_find_msg PARAMS ((struct loaded_l10nfile *domain_file,
			    struct binding *domainbinding,
			    const char *msgid, size_t *lengthp))
     internal_function;

#ifdef _LIBC
extern char *__gettext PARAMS ((const char *__msgid));
extern char *__dgettext PARAMS ((const char *__domainname,
				 const char *__msgid));
extern char *__dcgettext PARAMS ((const char *__domainname,
				  const char *__msgid, int __category));
extern char *__ngettext PARAMS ((const char *__msgid1, const char *__msgid2,
				 unsigned long int __n));
extern char *__dngettext PARAMS ((const char *__domainname,
				  const char *__msgid1, const char *__msgid2,
				  unsigned long int n));
extern char *__dcngettext PARAMS ((const char *__domainname,
				   const char *__msgid1, const char *__msgid2,
				   unsigned long int __n, int __category));
extern char *__dcigettext PARAMS ((const char *__domainname,
				   const char *__msgid1, const char *__msgid2,
				   int __plural, unsigned long int __n,
				   int __category));
extern char *__textdomain PARAMS ((const char *__domainname));
extern char *__bindtextdomain PARAMS ((const char *__domainname,
				       const char *__dirname));
extern char *__bind_textdomain_codeset PARAMS ((const char *__domainname,
						const char *__codeset));
#else
extern char *libintl_gettext PARAMS ((const char *__msgid));
extern char *libintl_dgettext PARAMS ((const char *__domainname,
				       const char *__msgid));
extern char *libintl_dcgettext PARAMS ((const char *__domainname,
					const char *__msgid, int __category));
extern char *libintl_ngettext PARAMS ((const char *__msgid1,
				       const char *__msgid2,
				       unsigned long int __n));
extern char *libintl_dngettext PARAMS ((const char *__domainname,
					const char *__msgid1,
					const char *__msgid2,
					unsigned long int __n));
extern char *libintl_dcngettext PARAMS ((const char *__domainname,
					 const char *__msgid1,
					 const char *__msgid2,
					 unsigned long int __n,
					 int __category));
extern char *libintl_dcigettext PARAMS ((const char *__domainname,
					 const char *__msgid1,
					 const char *__msgid2,
					 int __plural, unsigned long int __n,
					 int __category));
extern char *libintl_textdomain PARAMS ((const char *__domainname));
extern char *libintl_bindtextdomain PARAMS ((const char *__domainname,
					     const char *__dirname));
extern char *libintl_bind_textdomain_codeset PARAMS ((const char *__domainname,
						      const char *__codeset));
#endif

/* @@ begin of epilog @@ */

#endif /* gettextP.h  */
jpilot-0.99.6/intl/hash-string.h0000644000175000001440000000357407617330413012160 /* Description of GNU message catalog format: string hashing function.
   Copyright (C) 1995, 1997, 1998, 2000, 2001 Free Software Foundation, Inc.

   This program is free software; you can redistribute it and/or modify it
   under the terms of the GNU Library General Public License as published
   by the Free Software Foundation; either version 2, or (at your option)
   any later version.

   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   Library General Public License for more details.

   You should have received a copy of the GNU Library General Public
   License along with this program; if not, write to the Free Software
   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
   USA.  */

/* @@ end of prolog @@ */

#ifndef PARAMS
# if __STDC__ || defined __GNUC__ || defined __SUNPRO_C || defined __cplusplus || __PROTOTYPES
#  define PARAMS(Args) Args
# else
#  define PARAMS(Args) ()
# endif
#endif

/* We assume to have `unsigned long int' value with at least 32 bits.  */
#define HASHWORDBITS 32


/* Defines the so called `hashpjw' function by P.J. Weinberger
   [see Aho/Sethi/Ullman, COMPILERS: Principles, Techniques and Tools,
   1986, 1987 Bell Telephone Laboratories, Inc.]  */
static unsigned long int hash_string PARAMS ((const char *__str_param));

static inline unsigned long int
hash_string (str_param)
     const char *str_param;
{
  unsigned long int hval, g;
  const char *str = str_param;

  /* Compute the hash value for the given string.  */
  hval = 0;
  while (*str != '\0')
    {
      hval <<= 4;
      hval += (unsigned long int) *str++;
      g = hval & ((unsigned long int) 0xf << (HASHWORDBITS - 4));
      if (g != 0)
	{
	  hval ^= g >> (HASHWORDBITS - 8);
	  hval ^= g;
	}
    }
  return hval;
}
jpilot-0.99.6/intl/plural-exp.h0000644000175000001440000001030407617330413012007 /* Expression parsing and evaluation for plural form selection.
   Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc.
   Written by Ulrich Drepper <drepper@cygnus.com>, 2000.

   This program is free software; you can redistribute it and/or modify it
   under the terms of the GNU Library General Public License as published
   by the Free Software Foundation; either version 2, or (at your option)
   any later version.

   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   Library General Public License for more details.

   You should have received a copy of the GNU Library General Public
   License along with this program; if not, write to the Free Software
   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
   USA.  */

#ifndef _PLURAL_EXP_H
#define _PLURAL_EXP_H

#ifndef PARAMS
# if __STDC__ || defined __GNUC__ || defined __SUNPRO_C || defined __cplusplus || __PROTOTYPES
#  define PARAMS(args) args
# else
#  define PARAMS(args) ()
# endif
#endif

#ifndef internal_function
# define internal_function
#endif

#ifndef attribute_hidden
# define attribute_hidden
#endif


/* This is the representation of the expressions to determine the
   plural form.  */
struct expression
{
  int nargs;			/* Number of arguments.  */
  enum operator
  {
    /* Without arguments:  */
    var,			/* The variable "n".  */
    num,			/* Decimal number.  */
    /* Unary operators:  */
    lnot,			/* Logical NOT.  */
    /* Binary operators:  */
    mult,			/* Multiplication.  */
    divide,			/* Division.  */
    module,			/* Modulo operation.  */
    plus,			/* Addition.  */
    minus,			/* Subtraction.  */
    less_than,			/* Comparison.  */
    greater_than,		/* Comparison.  */
    less_or_equal,		/* Comparison.  */
    greater_or_equal,		/* Comparison.  */
    equal,			/* Comparison for equality.  */
    not_equal,			/* Comparison for inequality.  */
    land,			/* Logical AND.  */
    lor,			/* Logical OR.  */
    /* Ternary operators:  */
    qmop			/* Question mark operator.  */
  } operation;
  union
  {
    unsigned long int num;	/* Number value for `num'.  */
    struct expression *args[3];	/* Up to three arguments.  */
  } val;
};

/* This is the data structure to pass information to the parser and get
   the result in a thread-safe way.  */
struct parse_args
{
  const char *cp;
  struct expression *res;
};


/* Names for the libintl functions are a problem.  This source code is used
   1. in the GNU C Library library,
   2. in the GNU libintl library,
   3. in the GNU gettext tools.
   The function names in each situation must be different, to allow for
   binary incompatible changes in 'struct expression'.  Furthermore,
   1. in the GNU C Library library, the names have a __ prefix,
   2.+3. in the GNU libintl library and in the GNU gettext tools, the names
         must follow ANSI C and not start with __.
   So we have to distinguish the three cases.  */
#ifdef _LIBC
# define FREE_EXPRESSION __gettext_free_exp
# define PLURAL_PARSE __gettextparse
# define GERMANIC_PLURAL __gettext_germanic_plural
# define EXTRACT_PLURAL_EXPRESSION __gettext_extract_plural
#elif defined (IN_LIBINTL)
# define FREE_EXPRESSION libintl_gettext_free_exp
# define PLURAL_PARSE libintl_gettextparse
# define GERMANIC_PLURAL libintl_gettext_germanic_plural
# define EXTRACT_PLURAL_EXPRESSION libintl_gettext_extract_plural
#else
# define FREE_EXPRESSION free_plural_expression
# define PLURAL_PARSE parse_plural_expression
# define GERMANIC_PLURAL germanic_plural
# define EXTRACT_PLURAL_EXPRESSION extract_plural_expression
#endif

extern void FREE_EXPRESSION PARAMS ((struct expression *exp))
     internal_function;
extern int PLURAL_PARSE PARAMS ((void *arg));
extern struct expression GERMANIC_PLURAL attribute_hidden;
extern void EXTRACT_PLURAL_EXPRESSION PARAMS ((const char *nullentry,
					       struct expression **pluralp,
					       unsigned long int *npluralsp))
     internal_function;

#if !defined (_LIBC) && !defined (IN_LIBINTL)
extern unsigned long int plural_eval PARAMS ((struct expression *pexp,
					      unsigned long int n));
#endif

#endif /* _PLURAL_EXP_H */
jpilot-0.99.6/intl/eval-plural.h0000644000175000001440000000554607617330413012156 /* Plural expression evaluation.
   Copyright (C) 2000-2002 Free Software Foundation, Inc.

   This program is free software; you can redistribute it and/or modify it
   under the terms of the GNU Library General Public License as published
   by the Free Software Foundation; either version 2, or (at your option)
   any later version.

   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   Library General Public License for more details.

   You should have received a copy of the GNU Library General Public
   License along with this program; if not, write to the Free Software
   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
   USA.  */

#ifndef STATIC
#define STATIC static
#endif

/* Evaluate the plural expression and return an index value.  */
STATIC unsigned long int plural_eval PARAMS ((struct expression *pexp,
					      unsigned long int n))
     internal_function;

STATIC
unsigned long int
internal_function
plural_eval (pexp, n)
     struct expression *pexp;
     unsigned long int n;
{
  switch (pexp->nargs)
    {
    case 0:
      switch (pexp->operation)
	{
	case var:
	  return n;
	case num:
	  return pexp->val.num;
	default:
	  break;
	}
      /* NOTREACHED */
      break;
    case 1:
      {
	/* pexp->operation must be lnot.  */
	unsigned long int arg = plural_eval (pexp->val.args[0], n);
	return ! arg;
      }
    case 2:
      {
	unsigned long int leftarg = plural_eval (pexp->val.args[0], n);
	if (pexp->operation == lor)
	  return leftarg || plural_eval (pexp->val.args[1], n);
	else if (pexp->operation == land)
	  return leftarg && plural_eval (pexp->val.args[1], n);
	else
	  {
	    unsigned long int rightarg = plural_eval (pexp->val.args[1], n);

	    switch (pexp->operation)
	      {
	      case mult:
		return leftarg * rightarg;
	      case divide:
#if !INTDIV0_RAISES_SIGFPE
		if (rightarg == 0)
		  raise (SIGFPE);
#endif
		return leftarg / rightarg;
	      case module:
#if !INTDIV0_RAISES_SIGFPE
		if (rightarg == 0)
		  raise (SIGFPE);
#endif
		return leftarg % rightarg;
	      case plus:
		return leftarg + rightarg;
	      case minus:
		return leftarg - rightarg;
	      case less_than:
		return leftarg < rightarg;
	      case greater_than:
		return leftarg > rightarg;
	      case less_or_equal:
		return leftarg <= rightarg;
	      case greater_or_equal:
		return leftarg >= rightarg;
	      case equal:
		return leftarg == rightarg;
	      case not_equal:
		return leftarg != rightarg;
	      default:
		break;
	      }
	  }
	/* NOTREACHED */
	break;
      }
    case 3:
      {
	/* pexp->operation must be qmop.  */
	unsigned long int boolarg = plural_eval (pexp->val.args[0], n);
	return plural_eval (pexp->val.args[boolarg ? 1 : 2], n);
      }
    }
  /* NOTREACHED */
  return 0;
}
jpilot-0.99.6/intl/os2compat.h0000644000175000001440000000302207617330413011624 /* OS/2 compatibility defines.
   This file is intended to be included from config.h
   Copyright (C) 2001-2002 Free Software Foundation, Inc.

   This program is free software; you can redistribute it and/or modify it
   under the terms of the GNU Library General Public License as published
   by the Free Software Foundation; either version 2, or (at your option)
   any later version.

   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   Library General Public License for more details.

   You should have received a copy of the GNU Library General Public
   License along with this program; if not, write to the Free Software
   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
   USA.  */

/* When included from os2compat.h we need all the original definitions */
#ifndef OS2_AWARE

#undef LIBDIR
#define LIBDIR			_nlos2_libdir
extern char *_nlos2_libdir;

#undef LOCALEDIR
#define LOCALEDIR		_nlos2_localedir
extern char *_nlos2_localedir;

#undef LOCALE_ALIAS_PATH
#define LOCALE_ALIAS_PATH	_nlos2_localealiaspath
extern char *_nlos2_localealiaspath;

#endif

#undef HAVE_STRCASECMP
#define HAVE_STRCASECMP 1
#define strcasecmp stricmp
#define strncasecmp strnicmp

/* We have our own getenv() which works even if library is compiled as DLL */
#define getenv _nl_getenv

/* Older versions of gettext used -1 as the value of LC_MESSAGES */
#define LC_MESSAGES_COMPAT (-1)
jpilot-0.99.6/intl/libgnuintl.h0000644000175000001440000002435507617330413012100 /* Message catalogs for internationalization.
   Copyright (C) 1995-1997, 2000-2002 Free Software Foundation, Inc.

   This program is free software; you can redistribute it and/or modify it
   under the terms of the GNU Library General Public License as published
   by the Free Software Foundation; either version 2, or (at your option)
   any later version.

   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   Library General Public License for more details.

   You should have received a copy of the GNU Library General Public
   License along with this program; if not, write to the Free Software
   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
   USA.  */

#ifndef _LIBINTL_H
#define _LIBINTL_H	1

#include <locale.h>

/* The LC_MESSAGES locale category is the category used by the functions
   gettext() and dgettext().  It is specified in POSIX, but not in ANSI C.
   On systems that don't define it, use an arbitrary value instead.
   On Solaris, <locale.h> defines __LOCALE_H (or _LOCALE_H in Solaris 2.5)
   then includes <libintl.h> (i.e. this file!) and then only defines
   LC_MESSAGES.  To avoid a redefinition warning, don't define LC_MESSAGES
   in this case.  */
#if !defined LC_MESSAGES && !(defined __LOCALE_H || (defined _LOCALE_H && defined __sun))
# define LC_MESSAGES 1729
#endif

/* We define an additional symbol to signal that we use the GNU
   implementation of gettext.  */
#define __USE_GNU_GETTEXT 1

/* Provide information about the supported file formats.  Returns the
   maximum minor revision number supported for a given major revision.  */
#define __GNU_GETTEXT_SUPPORTED_REVISION(major) \
  ((major) == 0 ? 1 : -1)

/* Resolve a platform specific conflict on DJGPP.  GNU gettext takes
   precedence over _conio_gettext.  */
#ifdef __DJGPP__
# undef gettext
#endif

/* Use _INTL_PARAMS, not PARAMS, in order to avoid clashes with identifiers
   used by programs.  Similarly, test __PROTOTYPES, not PROTOTYPES.  */
#ifndef _INTL_PARAMS
# if __STDC__ || defined __GNUC__ || defined __SUNPRO_C || defined __cplusplus || __PROTOTYPES
#  define _INTL_PARAMS(args) args
# else
#  define _INTL_PARAMS(args) ()
# endif
#endif

#ifdef __cplusplus
extern "C" {
#endif


/* We redirect the functions to those prefixed with "libintl_".  This is
   necessary, because some systems define gettext/textdomain/... in the C
   library (namely, Solaris 2.4 and newer, and GNU libc 2.0 and newer).
   If we used the unprefixed names, there would be cases where the
   definition in the C library would override the one in the libintl.so
   shared library.  Recall that on ELF systems, the symbols are looked
   up in the following order:
     1. in the executable,
     2. in the shared libraries specified on the link command line, in order,
     3. in the dependencies of the shared libraries specified on the link
        command line,
     4. in the dlopen()ed shared libraries, in the order in which they were
        dlopen()ed.
   The definition in the C library would override the one in libintl.so if
   either
     * -lc is given on the link command line and -lintl isn't, or
     * -lc is given on the link command line before -lintl, or
     * libintl.so is a dependency of a dlopen()ed shared library but not
       linked to the executable at link time.
   Since Solaris gettext() behaves differently than GNU gettext(), this
   would be unacceptable.

   The redirection happens by default through macros in C, so that &gettext
   is independent of the compilation unit, but through inline functions in
   C++, in order not to interfere with the name mangling of class fields or
   class methods called 'gettext'.  */

/* The user can define _INTL_REDIRECT_INLINE or _INTL_REDIRECT_MACROS.
   If he doesn't, we choose the method.  A third possible method is
   _INTL_REDIRECT_ASM, supported only by GCC.  */
#if !(defined _INTL_REDIRECT_INLINE || defined _INTL_REDIRECT_MACROS)
# if __GNUC__ >= 2 && (defined __STDC__ || defined __cplusplus)
#  define _INTL_REDIRECT_ASM
# else
#  ifdef __cplusplus
#   define _INTL_REDIRECT_INLINE
#  else
#   define _INTL_REDIRECT_MACROS
#  endif
# endif
#endif
/* Auxiliary macros.  */
#ifdef _INTL_REDIRECT_ASM
# define _INTL_ASM(cname) __asm__ (_INTL_ASMNAME (__USER_LABEL_PREFIX__, #cname))
# define _INTL_ASMNAME(prefix,cnamestring) _INTL_STRINGIFY (prefix) cnamestring
# define _INTL_STRINGIFY(prefix) #prefix
#else
# define _INTL_ASM(cname)
#endif

/* Look up MSGID in the current default message catalog for the current
   LC_MESSAGES locale.  If not found, returns MSGID itself (the default
   text).  */
#ifdef _INTL_REDIRECT_INLINE
extern char *libintl_gettext (const char *__msgid);
static inline char *gettext (const char *__msgid)
{
  return libintl_gettext (__msgid);
}
#else
#ifdef _INTL_REDIRECT_MACROS
# define gettext libintl_gettext
#endif
extern char *gettext _INTL_PARAMS ((const char *__msgid))
       _INTL_ASM (libintl_gettext);
#endif

/* Look up MSGID in the DOMAINNAME message catalog for the current
   LC_MESSAGES locale.  */
#ifdef _INTL_REDIRECT_INLINE
extern char *libintl_dgettext (const char *__domainname, const char *__msgid);
static inline char *dgettext (const char *__domainname, const char *__msgid)
{
  return libintl_dgettext (__domainname, __msgid);
}
#else
#ifdef _INTL_REDIRECT_MACROS
# define dgettext libintl_dgettext
#endif
extern char *dgettext _INTL_PARAMS ((const char *__domainname,
				     const char *__msgid))
       _INTL_ASM (libintl_dgettext);
#endif

/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY
   locale.  */
#ifdef _INTL_REDIRECT_INLINE
extern char *libintl_dcgettext (const char *__domainname, const char *__msgid,
				int __category);
static inline char *dcgettext (const char *__domainname, const char *__msgid,
			       int __category)
{
  return libintl_dcgettext (__domainname, __msgid, __category);
}
#else
#ifdef _INTL_REDIRECT_MACROS
# define dcgettext libintl_dcgettext
#endif
extern char *dcgettext _INTL_PARAMS ((const char *__domainname,
				      const char *__msgid,
				      int __category))
       _INTL_ASM (libintl_dcgettext);
#endif


/* Similar to `gettext' but select the plural form corresponding to the
   number N.  */
#ifdef _INTL_REDIRECT_INLINE
extern char *libintl_ngettext (const char *__msgid1, const char *__msgid2,
			       unsigned long int __n);
static inline char *ngettext (const char *__msgid1, const char *__msgid2,
			      unsigned long int __n)
{
  return libintl_ngettext (__msgid1, __msgid2, __n);
}
#else
#ifdef _INTL_REDIRECT_MACROS
# define ngettext libintl_ngettext
#endif
extern char *ngettext _INTL_PARAMS ((const char *__msgid1,
				     const char *__msgid2,
				     unsigned long int __n))
       _INTL_ASM (libintl_ngettext);
#endif

/* Similar to `dgettext' but select the plural form corresponding to the
   number N.  */
#ifdef _INTL_REDIRECT_INLINE
extern char *libintl_dngettext (const char *__domainname, const char *__msgid1,
				const char *__msgid2, unsigned long int __n);
static inline char *dngettext (const char *__domainname, const char *__msgid1,
			       const char *__msgid2, unsigned long int __n)
{
  return libintl_dngettext (__domainname, __msgid1, __msgid2, __n);
}
#else
#ifdef _INTL_REDIRECT_MACROS
# define dngettext libintl_dngettext
#endif
extern char *dngettext _INTL_PARAMS ((const char *__domainname,
				      const char *__msgid1,
				      const char *__msgid2,
				      unsigned long int __n))
       _INTL_ASM (libintl_dngettext);
#endif

/* Similar to `dcgettext' but select the plural form corresponding to the
   number N.  */
#ifdef _INTL_REDIRECT_INLINE
extern char *libintl_dcngettext (const char *__domainname,
				 const char *__msgid1, const char *__msgid2,
				 unsigned long int __n, int __category);
static inline char *dcngettext (const char *__domainname,
				const char *__msgid1, const char *__msgid2,
				unsigned long int __n, int __category)
{
  return libintl_dcngettext (__domainname, __msgid1, __msgid2, __n, __category);
}
#else
#ifdef _INTL_REDIRECT_MACROS
# define dcngettext libintl_dcngettext
#endif
extern char *dcngettext _INTL_PARAMS ((const char *__domainname,
				       const char *__msgid1,
				       const char *__msgid2,
				       unsigned long int __n,
				       int __category))
       _INTL_ASM (libintl_dcngettext);
#endif


/* Set the current default message catalog to DOMAINNAME.
   If DOMAINNAME is null, return the current default.
   If DOMAINNAME is "", reset to the default of "messages".  */
#ifdef _INTL_REDIRECT_INLINE
extern char *libintl_textdomain (const char *__domainname);
static inline char *textdomain (const char *__domainname)
{
  return libintl_textdomain (__domainname);
}
#else
#ifdef _INTL_REDIRECT_MACROS
# define textdomain libintl_textdomain
#endif
extern char *textdomain _INTL_PARAMS ((const char *__domainname))
       _INTL_ASM (libintl_textdomain);
#endif

/* Specify that the DOMAINNAME message catalog will be found
   in DIRNAME rather than in the system locale data base.  */
#ifdef _INTL_REDIRECT_INLINE
extern char *libintl_bindtextdomain (const char *__domainname,
				     const char *__dirname);
static inline char *bindtextdomain (const char *__domainname,
				    const char *__dirname)
{
  return libintl_bindtextdomain (__domainname, __dirname);
}
#else
#ifdef _INTL_REDIRECT_MACROS
# define bindtextdomain libintl_bindtextdomain
#endif
extern char *bindtextdomain _INTL_PARAMS ((const char *__domainname,
					   const char *__dirname))
       _INTL_ASM (libintl_bindtextdomain);
#endif

/* Specify the character encoding in which the messages from the
   DOMAINNAME message catalog will be returned.  */
#ifdef _INTL_REDIRECT_INLINE
extern char *libintl_bind_textdomain_codeset (const char *__domainname,
					      const char *__codeset);
static inline char *bind_textdomain_codeset (const char *__domainname,
					     const char *__codeset)
{
  return libintl_bind_textdomain_codeset (__domainname, __codeset);
}
#else
#ifdef _INTL_REDIRECT_MACROS
# define bind_textdomain_codeset libintl_bind_textdomain_codeset
#endif
extern char *bind_textdomain_codeset _INTL_PARAMS ((const char *__domainname,
						    const char *__codeset))
       _INTL_ASM (libintl_bind_textdomain_codeset);
#endif


#ifdef __cplusplus
}
#endif

#endif /* libintl.h */
jpilot-0.99.6/intl/loadinfo.h0000644000175000001440000001373707617330413011526 /* Copyright (C) 1996-1999, 2000-2002 Free Software Foundation, Inc.
   This file is part of the GNU C Library.
   Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.

   This program is free software; you can redistribute it and/or modify it
   under the terms of the GNU Library General Public License as published
   by the Free Software Foundation; either version 2, or (at your option)
   any later version.

   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   Library General Public License for more details.

   You should have received a copy of the GNU Library General Public
   License along with this program; if not, write to the Free Software
   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
   USA.  */

#ifndef _LOADINFO_H
#define _LOADINFO_H	1

/* Declarations of locale dependent catalog lookup functions.
   Implemented in

     localealias.c    Possibly replace a locale name by another.
     explodename.c    Split a locale name into its various fields.
     l10nflist.c      Generate a list of filenames of possible message catalogs.
     finddomain.c     Find and open the relevant message catalogs.

   The main function _nl_find_domain() in finddomain.c is declared
   in gettextP.h.
 */

#ifndef PARAMS
# if __STDC__ || defined __GNUC__ || defined __SUNPRO_C || defined __cplusplus || __PROTOTYPES
#  define PARAMS(args) args
# else
#  define PARAMS(args) ()
# endif
#endif

#ifndef internal_function
# define internal_function
#endif

/* Tell the compiler when a conditional or integer expression is
   almost always true or almost always false.  */
#ifndef HAVE_BUILTIN_EXPECT
# define __builtin_expect(expr, val) (expr)
#endif

/* Separator in PATH like lists of pathnames.  */
#if defined _WIN32 || defined __WIN32__ || defined __EMX__ || defined __DJGPP__
  /* Win32, OS/2, DOS */
# define PATH_SEPARATOR ';'
#else
  /* Unix */
# define PATH_SEPARATOR ':'
#endif

/* Encoding of locale name parts.  */
#define CEN_REVISION		1
#define CEN_SPONSOR		2
#define CEN_SPECIAL		4
#define XPG_NORM_CODESET	8
#define XPG_CODESET		16
#define TERRITORY		32
#define CEN_AUDIENCE		64
#define XPG_MODIFIER		128

#define CEN_SPECIFIC	(CEN_REVISION|CEN_SPONSOR|CEN_SPECIAL|CEN_AUDIENCE)
#define XPG_SPECIFIC	(XPG_CODESET|XPG_NORM_CODESET|XPG_MODIFIER)


struct loaded_l10nfile
{
  const char *filename;
  int decided;

  const void *data;

  struct loaded_l10nfile *next;
  struct loaded_l10nfile *successor[1];
};


/* Normalize codeset name.  There is no standard for the codeset
   names.  Normalization allows the user to use any of the common
   names.  The return value is dynamically allocated and has to be
   freed by the caller.  */
extern const char *_nl_normalize_codeset PARAMS ((const char *codeset,
						  size_t name_len));

/* Lookup a locale dependent file.
   *L10NFILE_LIST denotes a pool of lookup results of locale dependent
   files of the same kind, sorted in decreasing order of ->filename.
   DIRLIST and DIRLIST_LEN are an argz list of directories in which to
   look, containing at least one directory (i.e. DIRLIST_LEN > 0).
   MASK, LANGUAGE, TERRITORY, CODESET, NORMALIZED_CODESET, MODIFIER,
   SPECIAL, SPONSOR, REVISION are the pieces of the locale name, as
   produced by _nl_explode_name().  FILENAME is the filename suffix.
   The return value is the lookup result, either found in *L10NFILE_LIST,
   or - if DO_ALLOCATE is nonzero - freshly allocated, or possibly NULL.
   If the return value is non-NULL, it is added to *L10NFILE_LIST, and
   its ->next field denotes the chaining inside *L10NFILE_LIST, and
   furthermore its ->successor[] field contains a list of other lookup
   results from which this lookup result inherits.  */
extern struct loaded_l10nfile *
_nl_make_l10nflist PARAMS ((struct loaded_l10nfile **l10nfile_list,
			    const char *dirlist, size_t dirlist_len, int mask,
			    const char *language, const char *territory,
			    const char *codeset,
			    const char *normalized_codeset,
			    const char *modifier, const char *special,
			    const char *sponsor, const char *revision,
			    const char *filename, int do_allocate));

/* Lookup the real locale name for a locale alias NAME, or NULL if
   NAME is not a locale alias (but possibly a real locale name).
   The return value is statically allocated and must not be freed.  */
extern const char *_nl_expand_alias PARAMS ((const char *name));

/* Split a locale name NAME into its pieces: language, modifier,
   territory, codeset, special, sponsor, revision.
   NAME gets destructively modified: NUL bytes are inserted here and
   there.  *LANGUAGE gets assigned NAME.  Each of *MODIFIER, *TERRITORY,
   *CODESET, *SPECIAL, *SPONSOR, *REVISION gets assigned either a
   pointer into the old NAME string, or NULL.  *NORMALIZED_CODESET
   gets assigned the expanded *CODESET, if it is different from *CODESET;
   this one is dynamically allocated and has to be freed by the caller.
   The return value is a bitmask, where each bit corresponds to one
   filled-in value:
     XPG_MODIFIER, CEN_AUDIENCE  for *MODIFIER,
     TERRITORY                   for *TERRITORY,
     XPG_CODESET                 for *CODESET,
     XPG_NORM_CODESET            for *NORMALIZED_CODESET,
     CEN_SPECIAL                 for *SPECIAL,
     CEN_SPONSOR                 for *SPONSOR,
     CEN_REVISION                for *REVISION.
 */
extern int _nl_explode_name PARAMS ((char *name, const char **language,
				     const char **modifier,
				     const char **territory,
				     const char **codeset,
				     const char **normalized_codeset,
				     const char **special,
				     const char **sponsor,
				     const char **revision));

/* Split a locale name NAME into a leading language part and all the
   rest.  Return a pointer to the first character after the language,
   i.e. to the first byte of the rest.  */
extern char *_nl_find_language PARAMS ((const char *name));

#endif	/* loadinfo.h */
jpilot-0.99.6/intl/bindtextdom.c0000644000175000001440000002324007617330413012235 /* Implementation of the bindtextdomain(3) function
   Copyright (C) 1995-1998, 2000, 2001, 2002 Free Software Foundation, Inc.

   This program is free software; you can redistribute it and/or modify it
   under the terms of the GNU Library General Public License as published
   by the Free Software Foundation; either version 2, or (at your option)
   any later version.

   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   Library General Public License for more details.

   You should have received a copy of the GNU Library General Public
   License along with this program; if not, write to the Free Software
   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
   USA.  */

#ifdef HAVE_CONFIG_H
# include <config.h>
#endif

#include <stddef.h>
#include <stdlib.h>
#include <string.h>

#ifdef _LIBC
# include <libintl.h>
#else
# include "libgnuintl.h"
#endif
#include "gettextP.h"

#ifdef _LIBC
/* We have to handle multi-threaded applications.  */
# include <bits/libc-lock.h>
#else
/* Provide dummy implementation if this is outside glibc.  */
# define __libc_rwlock_define(CLASS, NAME)
# define __libc_rwlock_wrlock(NAME)
# define __libc_rwlock_unlock(NAME)
#endif

/* The internal variables in the standalone libintl.a must have different
   names than the internal variables in GNU libc, otherwise programs
   using libintl.a cannot be linked statically.  */
#if !defined _LIBC
# define _nl_default_dirname libintl_nl_default_dirname
# define _nl_domain_bindings libintl_nl_domain_bindings
#endif

/* Some compilers, like SunOS4 cc, don't have offsetof in <stddef.h>.  */
#ifndef offsetof
# define offsetof(type,ident) ((size_t)&(((type*)0)->ident))
#endif

/* @@ end of prolog @@ */

/* Contains the default location of the message catalogs.  */
extern const char _nl_default_dirname[];

/* List with bindings of specific domains.  */
extern struct binding *_nl_domain_bindings;

/* Lock variable to protect the global data in the gettext implementation.  */
__libc_rwlock_define (extern, _nl_state_lock attribute_hidden)


/* Names for the libintl functions are a problem.  They must not clash
   with existing names and they should follow ANSI C.  But this source
   code is also used in GNU C Library where the names have a __
   prefix.  So we have to make a difference here.  */
#ifdef _LIBC
# define BINDTEXTDOMAIN __bindtextdomain
# define BIND_TEXTDOMAIN_CODESET __bind_textdomain_codeset
# ifndef strdup
#  define strdup(str) __strdup (str)
# endif
#else
# define BINDTEXTDOMAIN libintl_bindtextdomain
# define BIND_TEXTDOMAIN_CODESET libintl_bind_textdomain_codeset
#endif

/* Prototypes for local functions.  */
static void set_binding_values PARAMS ((const char *domainname,
					const char **dirnamep,
					const char **codesetp));

/* Specifies the directory name *DIRNAMEP and the output codeset *CODESETP
   to be used for the DOMAINNAME message catalog.
   If *DIRNAMEP or *CODESETP is NULL, the corresponding attribute is not
   modified, only the current value is returned.
   If DIRNAMEP or CODESETP is NULL, the corresponding attribute is neither
   modified nor returned.  */
static void
set_binding_values (domainname, dirnamep, codesetp)
     const char *domainname;
     const char **dirnamep;
     const char **codesetp;
{
  struct binding *binding;
  int modified;

  /* Some sanity checks.  */
  if (domainname == NULL || domainname[0] == '\0')
    {
      if (dirnamep)
	*dirnamep = NULL;
      if (codesetp)
	*codesetp = NULL;
      return;
    }

  __libc_rwlock_wrlock (_nl_state_lock);

  modified = 0;

  for (binding = _nl_domain_bindings; binding != NULL; binding = binding->next)
    {
      int compare = strcmp (domainname, binding->domainname);
      if (compare == 0)
	/* We found it!  */
	break;
      if (compare < 0)
	{
	  /* It is not in the list.  */
	  binding = NULL;
	  break;
	}
    }

  if (binding != NULL)
    {
      if (dirnamep)
	{
	  const char *dirname = *dirnamep;

	  if (dirname == NULL)
	    /* The current binding has be to returned.  */
	    *dirnamep = binding->dirname;
	  else
	    {
	      /* The domain is already bound.  If the new value and the old
		 one are equal we simply do nothing.  Otherwise replace the
		 old binding.  */
	      char *result = binding->dirname;
	      if (strcmp (dirname, result) != 0)
		{
		  if (strc