This one is against the current archive (so it contains the one I send the
other day). It should fix the AIX problems. Andreas, could you please try
it? Thanks.

Michael

diff -rcN ecpg/ChangeLog ecpg.mm/ChangeLog
*** ecpg/ChangeLog	Tue Aug 25 19:11:36 1998
--- ecpg.mm/ChangeLog	Fri Aug 28 15:37:46 1998
***************
*** 297,299 ****
--- 297,313 ----
  	- Cleaned up memory allocation in ecpglib.c
  	- Set library version to 2.6
  
+ Wed Aug 26 16:17:39 CEST 1998
+ 
+ 	- Sync preproc.y with gram.y
+ 
+ Thu Aug 27 15:32:23 CEST 1998
+ 
+ 	- Fix some minor glitches that the AIX compiler complains about
+ 	- Added patchlevel to library
+ 
+ Fri Aug 28 15:36:58 CEST 1998
+ 
+ 	- Removed one line of code that AIX complains about since it was not
+ 	  needed anyway
+ 	- Set library version to 2.6.1
diff -rcN ecpg/lib/Makefile.in ecpg.mm/lib/Makefile.in
*** ecpg/lib/Makefile.in	Tue Aug 25 19:11:37 1998
--- ecpg.mm/lib/Makefile.in	Thu Aug 27 15:34:39 1998
***************
*** 5,10 ****
--- 5,11 ----
  
  SO_MAJOR_VERSION=2
  SO_MINOR_VERSION=6
+ SO_PATCHLEVEL=1
  
  PORTNAME=@PORTNAME@
  
***************
*** 19,39 ****
    LINUX_ELF=@LINUX_ELF@
    ifdef LINUX_ELF
      install-shlib-dep := install-shlib
!     shlib := libecpg.so.$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
      LDFLAGS_SL = -shared -soname libecpg.so.$(SO_MAJOR_VERSION)
    endif
  endif
  ifeq ($(PORTNAME), bsd)
    ifdef BSD_SHLIB
      install-shlib-dep := install-shlib
!     shlib := libecpg.so.$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
      LDFLAGS_SL = -x -Bshareable -Bforcearchive
      CFLAGS += $(CFLAGS_SL)
    endif
  endif
  #ifeq ($(PORTNAME), solaris)
  #  install-shlib-dep := install-shlib
! #  shlib := libecpg.so.$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
  #  LDFLAGS_SL = -G -z text
  #  CFLAGS += $(CFLAGS_SL)
  #endif
--- 20,40 ----
    LINUX_ELF=@LINUX_ELF@
    ifdef LINUX_ELF
      install-shlib-dep := install-shlib
!     shlib := libecpg.so.$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION).$(SO_PATCHLEVEL)
      LDFLAGS_SL = -shared -soname libecpg.so.$(SO_MAJOR_VERSION)
    endif
  endif
  ifeq ($(PORTNAME), bsd)
    ifdef BSD_SHLIB
      install-shlib-dep := install-shlib
!     shlib := libecpg.so.$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION).$(SO_PATCHLEVEL)
      LDFLAGS_SL = -x -Bshareable -Bforcearchive
      CFLAGS += $(CFLAGS_SL)
    endif
  endif
  #ifeq ($(PORTNAME), solaris)
  #  install-shlib-dep := install-shlib
! #  shlib := libecpg.so.$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION).$(SO_PATCHLEVEL)
  #  LDFLAGS_SL = -G -z text
  #  CFLAGS += $(CFLAGS_SL)
  #endif
diff -rcN ecpg/lib/ecpglib.c ecpg.mm/lib/ecpglib.c
*** ecpg/lib/ecpglib.c	Tue Aug 25 19:11:38 1998
--- ecpg.mm/lib/ecpglib.c	Fri Aug 28 14:45:59 1998
***************
*** 701,707 ****
                                                                   }
                                                                   else
                                                                   {
!                                                                          strncpy((char *) (var->value + var->offset * act_tuple), pval, var->varcharsize);
                                                                           if (var->varcharsize < strlen(pval))
                                                                           {
                                                                                   /* truncation */
--- 701,707 ----
                                                                   }
                                                                   else
                                                                   {
!                                                                          strncpy((char *) ((long)var->value + var->offset * act_tuple), pval, var->varcharsize);
                                                                           if (var->varcharsize < strlen(pval))
                                                                           {
                                                                                   /* truncation */
***************
*** 731,737 ****
                                                   case ECPGt_varchar:
                                                           {
                                                                   struct ECPGgeneric_varchar *variable =
! 								 (struct ECPGgeneric_varchar *) (var->value + var->offset * act_tuple);
      
  								 if (var->varcharsize == 0)
  								   strncpy(variable->arr, pval, strlen(pval));
--- 731,737 ----
                                                   case ECPGt_varchar:
                                                           {
                                                                   struct ECPGgeneric_varchar *variable =
! 								 (struct ECPGgeneric_varchar *) ((long)var->value + var->offset * act_tuple);
      
  								 if (var->varcharsize == 0)
  								   strncpy(variable->arr, pval, strlen(pval));
***************
*** 828,834 ****
  		free(notify);
  	}
  
- 	va_end(ap);
  	return status;
  }
  
--- 828,833 ----
diff -rcN ecpg/preproc/preproc.y ecpg.mm/preproc/preproc.y
*** ecpg/preproc/preproc.y	Wed Aug 26 20:19:42 1998
--- ecpg.mm/preproc/preproc.y	Wed Aug 26 16:17:29 1998
***************
*** 566,572 ****
                  LANCOMPILER, LISTEN, UNLISTEN, LOAD, LOCK_P, LOCATION, MAXVALUE, MINVALUE, MOVE,
                  NEW, NONE, NOTHING, NOTNULL, OIDS, OPERATOR, PROCEDURAL,
                  RECIPE, RENAME, RESET, RETURNS, ROW, RULE,
!                 SEQUENCE, SETOF, SHOW, START, STATEMENT, STDIN, STDOUT, TRUSTED,
                  VACUUM, VERBOSE, VERSION, ENCODING
  
  /* Keywords (obsolete; retain through next version for parser - thomas 1997-12-0 4) */
--- 566,572 ----
                  LANCOMPILER, LISTEN, UNLISTEN, LOAD, LOCK_P, LOCATION, MAXVALUE, MINVALUE, MOVE,
                  NEW, NONE, NOTHING, NOTNULL, OIDS, OPERATOR, PROCEDURAL,
                  RECIPE, RENAME, RESET, RETURNS, ROW, RULE,
!                 SERIAL, SEQUENCE, SETOF, SHOW, START, STATEMENT, STDIN, STDOUT, TRUSTED,
                  VACUUM, VERBOSE, VERSION, ENCODING
  
  /* Keywords (obsolete; retain through next version for parser - thomas 1997-12-0 4) */
***************
*** 1083,1088 ****
--- 1083,1092 ----
  				{
  					$$ = cat3_str($1, $2, $3);
  				}
+ 	| ColId SERIAL
+ 		{
+ 			$$ = make2_str($1, make1_str(" serial"));
+ 		}
  		;
  
  ColQualifier:  ColQualList	{ $$ = $1; }
***************
*** 3795,3800 ****
--- 3799,3805 ----
  		| PRIVILEGES					{ $$ = make1_str("privileges"); }
  		| RECIPE						{ $$ = make1_str("recipe"); }
  		| ROW							{ $$ = make1_str("row"); }
+ 		| SERIAL						{ $$ = make1_str("serial"); }
  		| START							{ $$ = make1_str("start"); }
  		| STATEMENT						{ $$ = make1_str("statement"); }
  		| TIME							{ $$ = make1_str("time"); }

-- 
Michael Meskes			meskes@online-club.de, meskes@debian.org
Go SF49ers! Go Rhein Fire!	Use Debian GNU/Linux! 

Fri, 28 Aug 1998 15:40:16 +0200
Michael Meskes <meskes@online-club.de>
ecpg patches

Applied


On Fri, 28 Aug 1998, Michael Meskes wrote:

> This one is against the current archive (so it contains the one I send the
> other day). It should fix the AIX problems. Andreas, could you please try
> it? Thanks.
> 
> Michael
> 
> diff -rcN ecpg/ChangeLog ecpg.mm/ChangeLog
> *** ecpg/ChangeLog	Tue Aug 25 19:11:36 1998
> --- ecpg.mm/ChangeLog	Fri Aug 28 15:37:46 1998
> ***************
> *** 297,299 ****
> --- 297,313 ----
>   	- Cleaned up memory allocation in ecpglib.c
>   	- Set library version to 2.6
>   
> + Wed Aug 26 16:17:39 CEST 1998
> + 
> + 	- Sync preproc.y with gram.y
> + 
> + Thu Aug 27 15:32:23 CEST 1998
> + 
> + 	- Fix some minor glitches that the AIX compiler complains about
> + 	- Added patchlevel to library
> + 
> + Fri Aug 28 15:36:58 CEST 1998
> + 
> + 	- Removed one line of code that AIX complains about since it was not
> + 	  needed anyway
> + 	- Set library version to 2.6.1
> diff -rcN ecpg/lib/Makefile.in ecpg.mm/lib/Makefile.in
> *** ecpg/lib/Makefile.in	Tue Aug 25 19:11:37 1998
> --- ecpg.mm/lib/Makefile.in	Thu Aug 27 15:34:39 1998
> ***************
> *** 5,10 ****
> --- 5,11 ----
>   
>   SO_MAJOR_VERSION=2
>   SO_MINOR_VERSION=6
> + SO_PATCHLEVEL=1
>   
>   PORTNAME=@PORTNAME@
>   
> ***************
> *** 19,39 ****
>     LINUX_ELF=@LINUX_ELF@
>     ifdef LINUX_ELF
>       install-shlib-dep := install-shlib
> !     shlib := libecpg.so.$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
>       LDFLAGS_SL = -shared -soname libecpg.so.$(SO_MAJOR_VERSION)
>     endif
>   endif
>   ifeq ($(PORTNAME), bsd)
>     ifdef BSD_SHLIB
>       install-shlib-dep := install-shlib
> !     shlib := libecpg.so.$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
>       LDFLAGS_SL = -x -Bshareable -Bforcearchive
>       CFLAGS += $(CFLAGS_SL)
>     endif
>   endif
>   #ifeq ($(PORTNAME), solaris)
>   #  install-shlib-dep := install-shlib
> ! #  shlib := libecpg.so.$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
>   #  LDFLAGS_SL = -G -z text
>   #  CFLAGS += $(CFLAGS_SL)
>   #endif
> --- 20,40 ----
>     LINUX_ELF=@LINUX_ELF@
>     ifdef LINUX_ELF
>       install-shlib-dep := install-shlib
> !     shlib := libecpg.so.$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION).$(SO_PATCHLEVEL)
>       LDFLAGS_SL = -shared -soname libecpg.so.$(SO_MAJOR_VERSION)
>     endif
>   endif
>   ifeq ($(PORTNAME), bsd)
>     ifdef BSD_SHLIB
>       install-shlib-dep := install-shlib
> !     shlib := libecpg.so.$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION).$(SO_PATCHLEVEL)
>       LDFLAGS_SL = -x -Bshareable -Bforcearchive
>       CFLAGS += $(CFLAGS_SL)
>     endif
>   endif
>   #ifeq ($(PORTNAME), solaris)
>   #  install-shlib-dep := install-shlib
> ! #  shlib := libecpg.so.$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION).$(SO_PATCHLEVEL)
>   #  LDFLAGS_SL = -G -z text
>   #  CFLAGS += $(CFLAGS_SL)
>   #endif
> diff -rcN ecpg/lib/ecpglib.c ecpg.mm/lib/ecpglib.c
> *** ecpg/lib/ecpglib.c	Tue Aug 25 19:11:38 1998
> --- ecpg.mm/lib/ecpglib.c	Fri Aug 28 14:45:59 1998
> ***************
> *** 701,707 ****
>                                                                    }
>                                                                    else
>                                                                    {
> !                                                                          strncpy((char *) (var->value + var->offset * act_tuple), pval, var->varcharsize);
>                                                                            if (var->varcharsize < strlen(pval))
>                                                                            {
>                                                                                    /* truncation */
> --- 701,707 ----
>                                                                    }
>                                                                    else
>                                                                    {
> !                                                                          strncpy((char *) ((long)var->value + var->offset * act_tuple), pval, var->varcharsize);
>                                                                            if (var->varcharsize < strlen(pval))
>                                                                            {
>                                                                                    /* truncation */
> ***************
> *** 731,737 ****
>                                                    case ECPGt_varchar:
>                                                            {
>                                                                    struct ECPGgeneric_varchar *variable =
> ! 								 (struct ECPGgeneric_varchar *) (var->value + var->offset * act_tuple);
>       
>   								 if (var->varcharsize == 0)
>   								   strncpy(variable->arr, pval, strlen(pval));
> --- 731,737 ----
>                                                    case ECPGt_varchar:
>                                                            {
>                                                                    struct ECPGgeneric_varchar *variable =
> ! 								 (struct ECPGgeneric_varchar *) ((long)var->value + var->offset * act_tuple);
>       
>   								 if (var->varcharsize == 0)
>   								   strncpy(variable->arr, pval, strlen(pval));
> ***************
> *** 828,834 ****
>   		free(notify);
>   	}
>   
> - 	va_end(ap);
>   	return status;
>   }
>   
> --- 828,833 ----
> diff -rcN ecpg/preproc/preproc.y ecpg.mm/preproc/preproc.y
> *** ecpg/preproc/preproc.y	Wed Aug 26 20:19:42 1998
> --- ecpg.mm/preproc/preproc.y	Wed Aug 26 16:17:29 1998
> ***************
> *** 566,572 ****
>                   LANCOMPILER, LISTEN, UNLISTEN, LOAD, LOCK_P, LOCATION, MAXVALUE, MINVALUE, MOVE,
>                   NEW, NONE, NOTHING, NOTNULL, OIDS, OPERATOR, PROCEDURAL,
>                   RECIPE, RENAME, RESET, RETURNS, ROW, RULE,
> !                 SEQUENCE, SETOF, SHOW, START, STATEMENT, STDIN, STDOUT, TRUSTED,
>                   VACUUM, VERBOSE, VERSION, ENCODING
>   
>   /* Keywords (obsolete; retain through next version for parser - thomas 1997-12-0 4) */
> --- 566,572 ----
>                   LANCOMPILER, LISTEN, UNLISTEN, LOAD, LOCK_P, LOCATION, MAXVALUE, MINVALUE, MOVE,
>                   NEW, NONE, NOTHING, NOTNULL, OIDS, OPERATOR, PROCEDURAL,
>                   RECIPE, RENAME, RESET, RETURNS, ROW, RULE,
> !                 SERIAL, SEQUENCE, SETOF, SHOW, START, STATEMENT, STDIN, STDOUT, TRUSTED,
>                   VACUUM, VERBOSE, VERSION, ENCODING
>   
>   /* Keywords (obsolete; retain through next version for parser - thomas 1997-12-0 4) */
> ***************
> *** 1083,1088 ****
> --- 1083,1092 ----
>   				{
>   					$$ = cat3_str($1, $2, $3);
>   				}
> + 	| ColId SERIAL
> + 		{
> + 			$$ = make2_str($1, make1_str(" serial"));
> + 		}
>   		;
>   
>   ColQualifier:  ColQualList	{ $$ = $1; }
> ***************
> *** 3795,3800 ****
> --- 3799,3805 ----
>   		| PRIVILEGES					{ $$ = make1_str("privileges"); }
>   		| RECIPE						{ $$ = make1_str("recipe"); }
>   		| ROW							{ $$ = make1_str("row"); }
> + 		| SERIAL						{ $$ = make1_str("serial"); }
>   		| START							{ $$ = make1_str("start"); }
>   		| STATEMENT						{ $$ = make1_str("statement"); }
>   		| TIME							{ $$ = make1_str("time"); }
> 
> -- 
> Michael Meskes			meskes@online-club.de, meskes@debian.org
> Go SF49ers! Go Rhein Fire!	Use Debian GNU/Linux! 
> 


Fri, 28 Aug 1998 13:47:47 -0400 (EDT)
The Hermit Hacker <scrappy@hub.org>
Re: [HACKERS] ecpg patches