Thread

  1. Open portability issues

    Zeugswetter Andreas IZ5 <andreas.zeugswetter@telecom.at> — 1998-09-04T19:10:52Z

    Open portability issues:
    
    /usr/local should be searched for lib and include for all ports if present 
    (currently not working, I have libreadline there)
    
    the stream functions on AIX need a size_t for addrlen's in fe-connect.c and pqcomm.c.
    
    lock.c still has an incompatible TPRINTF(flags, args...) definition
    
    the long long int printf format in int8.h is %lld on AIX
    
    AIX 4.2.1 and 4.3.1 need one other simpler Makefile, another template
    and must not include dynloader.c
    
       
    Andreas
    
    PS: all unsigned char problems are gone. 
    keep it cidr not inet !!
    and no, the heaptuple.c fix did not fix the pg_class index problem
    sorry i am off to weekend now
    
    begin 600 aix_42
    M05)/4%0Z8W)S"D-&3$%'4SHM<6-H87)S/7-I9VYE9" M<6UA>&UE;3TX,3DR
    M("UQ:&%L=#UW("UQ<W)C;7-G("UQ8VAE8VL]9&EV>F5R;R M<6QO;F=L;VYG
    M"E-(05)%1%],24(Z"D%,3#H*4U)#2%])3D,Z"E-20TA?3$E".@I54T5?3$]#
    K04Q%.FYO"D1,4U5&1DE8.BYS;PI91DQ!1U,Z+60*64%#0SH*0T,Z>&QC"D]#
    `
    end
    
    begin 600 Makefile.aix4
    M34M?3D]?3$]21$52/2!T<G5E"@HE)"A$3%-51D9)6"DZ("4N;PH))"A,1"D@
    J+4<@+6)E>'!A;&P@+6)N;V5N=')Y("UO("1 ("0\("0H3$1&3$%'4RD*
    `
    end
    
    begin 600 .similar
    M86QP:&$M9&5C+6]S9CUA;'!H80IA;'!H82UU;FMN;W=N+6QI;G5X+6=N=3UL
    M:6YU>%]A;'!H80IH<'!A,2XQ+6AP+6AP=7@Q,"XR,#UH<'5X7V-C"FAP<&$Q
    M+C$M<W1R871U<RUS>7-V-#US=G(T"FDS.#8M;F5X="UN97AT<W1E<#,];F5X
    M='-T97 *:3,X-BUP8RUB<V1I,BXP/6)S9&E?,BXP"FDS.#8M<&,M8G-D:3(N
    M,3UB<V1I7S(N,0II,S@V+7!C+6)S9&DS+C ]8G-D:5\S+C *:3,X-BUP8RUL
    M:6YU>"UG;G4];&EN=7A?:3,X-@II,S@V+7!C+7-O;&%R:7,R+C8]<V]L87)I
    M<U]I,S@V7V=C8PII,S@V+7!C+7-U;F]S-3US;VQA<FES7VDS.#9?9V-C"FDS
    M.#8M=6YK;F]W;BUF<F5E8G-D/69R965B<V0*:3,X-BUU;FMN;W=N+6YE=&)S
    M9#UN971B<V0*:30X-BUP8RUL:6YU>"UG;G4];&EN=7A?:3,X-@II-3@V+7!C
    M+6QI;G5X+6=N=3UL:6YU>%]I,S@V"FDU.#8M<&,M<V-O,RXR=CUS8V\*:38X
    M-BUP8RUL:6YU>"UG;G4];&EN=7A?:3,X-@IM:7!S+7-G:2UI<FEX/6ER:7@U
    M"G!O=V5R<&,M:6)M+6%I>#,N,BXU/6%I>%\S,C4*<&]W97)P8RUI8FTM86EX
    M-"XQ+C0N,#UA:7A?-#$*<&]W97)P8RUI8FTM86EX-"XQ+C4N,#UA:7A?-#$*
    M<&]W97)P8RUI8FTM86EX-"XR+C$N,#UA:7A?-#(*<&]W97)P8RUI8FTM86EX
    M-"XS+C$N,#UA:7A?-#(*<&]W97)P8RUU;FMN;W=N+6QI;G5X+6=N=3UL:6YU
    M>%]P<&,*<W!A<F,M<W5N+7-O;&%R:7,]<V]L87)I<U]S<&%R8U]G8V,*<W!A
    M<F,M<W5N+7-U;F]S-#US=6YO<S1?9V-C"G-P87)C+7-U;BUS=6YO<S4]<V]L
    M87)I<U]S<&%R8U]G8V,*<W!A<F,M=6YK;F]W;BUL:6YU>"UG;G4];&EN=7A?
    &<W!A<F,*
    `
    end
    
    
    
  2. Re: [HACKERS] Open portability issues

    Brook Milligan <brook@trillium.nmsu.edu> — 1998-09-04T21:53:26Z

       Open portability issues:
    
       /usr/local should be searched for lib and include for all ports if present 
       (currently not working, I have libreadline there)
    
    See the INSTALL file for using configure.
    
           --with-includes=DIRS
                              Include DIRS in list of directories searched
                              for header files.  (Typical use will need
                              --with-includes=/usr/local/include)
    
           --with-libs=DIRS
           --with-libraries=DIRS
                              Include DIRS in list of directories searched
                              for archive libraries.  (Typical use will need
                              --with-libraries=/usr/local/lib)
    
    Cheers,
    Brook
    
    
  3. Re: [HACKERS] Open portability issues

    Thomas Lockhart <lockhart@alumni.caltech.edu> — 1998-09-05T01:00:00Z

    > the long long int printf format in int8.h is %lld on AIX
    
    This is on my list. %lld will work with gcc also, so since we don't have
    very many reported successful ports for int8, we should just change it
    for now.
    
                        - Tom
    
    
  4. Re: [HACKERS] Open portability issues

    Massimo Dal Zotto <dz@cs.unitn.it> — 1998-09-07T19:15:27Z

    > 
    > 
    > Open portability issues:
    > 
    > /usr/local should be searched for lib and include for all ports if present 
    > (currently not working, I have libreadline there)
    > 
    > the stream functions on AIX need a size_t for addrlen's in fe-connect.c and pqcomm.c.
    > 
    > lock.c still has an incompatible TPRINTF(flags, args...) definition
    
    Please apply this patch:
    
    *** src/backend/storage/lmgr/lock.c.orig	Wed Aug 26 09:00:55 1998
    --- src/backend/storage/lmgr/lock.c	Mon Sep  7 14:44:53 1998
    *************** static int WaitOnLock(LOCKMETHOD lockmet
    *** 136,153 ****
      		 xidentP->holders[5], \
      		 xidentP->nHolding)
      
    - #define LOCK_TPRINTF(lock, args...) \
    -     if (((LOCKDEBUG(LOCK_LOCKMETHOD(*(lock))) >= 1) \
    - 	     && (lock->tag.relId >= lockDebugOidMin)) \
    - 	    || (lock->tag.relId == lockDebugRelation)) \
    - 	    TPRINTF(TRACE_ALL, args)
    - 
      #else	/* !LOCK_MGR_DEBUG */
      #define LOCK_PRINT(where,lock,type)
      #define LOCK_PRINT_AUX(where,lock,type)
      #define XID_PRINT(where,xidentP)
      #define XID_PRINT_AUX(where,xidentP)
    - #define LOCK_TPRINTF(lock, args...)
      #endif	/* !LOCK_MGR_DEBUG */
      
      static char *lock_types[] = {
    --- 136,146 ----
    *************** LockRelease(LOCKMETHOD lockmethod, LOCKT
    *** 1200,1206 ****
      	}
      	else
      	{
    ! 		LOCK_TPRINTF(lock, "LockRelease: no wakeup needed");
      	}
      
      	SpinRelease(masterLock);
    --- 1193,1202 ----
      	}
      	else
      	{
    ! 		if (((LOCKDEBUG(LOCK_LOCKMETHOD(*(lock))) >= 1) \
    ! 			 && (lock->tag.relId >= lockDebugOidMin)) \
    ! 			|| (lock->tag.relId == lockDebugRelation))
    ! 			TPRINTF(TRACE_ALL, "LockRelease: no wakeup needed");
      	}
      
      	SpinRelease(masterLock);
    
    
    -- 
    Massimo Dal Zotto
    
    +----------------------------------------------------------------------+
    |  Massimo Dal Zotto                email:  dz@cs.unitn.it             |
    |  Via Marconi, 141                 phone:  ++39-461-534251            |
    |  38057 Pergine Valsugana (TN)     www:  http://www.cs.unitn.it/~dz/  |
    |  Italy                            pgp:  finger dz@tango.cs.unitn.it  |
    +----------------------------------------------------------------------+
    
    
  5. Re: [HACKERS] Open portability issues

    Bruce Momjian <maillist@candle.pha.pa.us> — 1998-09-09T18:32:19Z

    Patch applied.
    
    
    [Charset iso-8859-1 unsupported, filtering to ASCII...]
    > > 
    > > 
    > > Open portability issues:
    > > 
    > > /usr/local should be searched for lib and include for all ports if present 
    > > (currently not working, I have libreadline there)
    > > 
    > > the stream functions on AIX need a size_t for addrlen's in fe-connect.c and pqcomm.c.
    > > 
    > > lock.c still has an incompatible TPRINTF(flags, args...) definition
    > 
    > Please apply this patch:
    > 
    > *** src/backend/storage/lmgr/lock.c.orig	Wed Aug 26 09:00:55 1998
    > --- src/backend/storage/lmgr/lock.c	Mon Sep  7 14:44:53 1998
    > *************** static int WaitOnLock(LOCKMETHOD lockmet
    > *** 136,153 ****
    >   		 xidentP->holders[5], \
    >   		 xidentP->nHolding)
    >   
    > - #define LOCK_TPRINTF(lock, args...) \
    > -     if (((LOCKDEBUG(LOCK_LOCKMETHOD(*(lock))) >= 1) \
    > - 	     && (lock->tag.relId >= lockDebugOidMin)) \
    > - 	    || (lock->tag.relId == lockDebugRelation)) \
    > - 	    TPRINTF(TRACE_ALL, args)
    > - 
    >   #else	/* !LOCK_MGR_DEBUG */
    >   #define LOCK_PRINT(where,lock,type)
    >   #define LOCK_PRINT_AUX(where,lock,type)
    >   #define XID_PRINT(where,xidentP)
    >   #define XID_PRINT_AUX(where,xidentP)
    > - #define LOCK_TPRINTF(lock, args...)
    >   #endif	/* !LOCK_MGR_DEBUG */
    >   
    >   static char *lock_types[] = {
    > --- 136,146 ----
    > *************** LockRelease(LOCKMETHOD lockmethod, LOCKT
    > *** 1200,1206 ****
    >   	}
    >   	else
    >   	{
    > ! 		LOCK_TPRINTF(lock, "LockRelease: no wakeup needed");
    >   	}
    >   
    >   	SpinRelease(masterLock);
    > --- 1193,1202 ----
    >   	}
    >   	else
    >   	{
    > ! 		if (((LOCKDEBUG(LOCK_LOCKMETHOD(*(lock))) >= 1) \
    > ! 			 && (lock->tag.relId >= lockDebugOidMin)) \
    > ! 			|| (lock->tag.relId == lockDebugRelation))
    > ! 			TPRINTF(TRACE_ALL, "LockRelease: no wakeup needed");
    >   	}
    >   
    >   	SpinRelease(masterLock);
    > 
    > 
    > -- 
    > Massimo Dal Zotto
    > 
    > +----------------------------------------------------------------------+
    > |  Massimo Dal Zotto                email:  dz@cs.unitn.it             |
    > |  Via Marconi, 141                 phone:  ++39-461-534251            |
    > |  38057 Pergine Valsugana (TN)     www:  http://www.cs.unitn.it/~dz/  |
    > |  Italy                            pgp:  finger dz@tango.cs.unitn.it  |
    > +----------------------------------------------------------------------+
    > 
    > 
    
    
    -- 
    Bruce Momjian                          |  830 Blythe Avenue
    maillist@candle.pha.pa.us              |  Drexel Hill, Pennsylvania 19026
      +  If your life is a hard drive,     |  (610) 353-9879(w)
      +  Christ can be your backup.        |  (610) 853-3000(h)
    
    
  6. Re: Open portability issues

    Bruce Momjian <maillist@candle.pha.pa.us> — 1998-09-09T18:47:41Z

    > 
    > Open portability issues:
    > 
    > /usr/local should be searched for lib and include for all ports if present 
    > (currently not working, I have libreadline there)
    
    I actually us a flag to configure:
    
            --with-includes="/u/readline" \
            --with-libraries="/u/readline /usr/contrib/lib"
    
    Should we be poking around in /usr/local by default?  Comments?
    
    > 
    > the stream functions on AIX need a size_t for addrlen's in fe-connect.c and pqcomm.c.
    
    This has come up before.  AIX wants size_t for certain structures like
    getsockname().  I believe the third parameter on AIX is size_t, while it
    used to be int on my machine, but is not socklen_t.  Is this correct? 
    The 'int' code works fine for me, but I can see why AIX is having a
    problem, and perhaps it is time for configure to check on the various
    types.
    
    	getsockname(int s, struct sockaddr *name, socklen_t *namelen);
    
    Can you confirm this?
    
    > 
    > lock.c still has an incompatible TPRINTF(flags, args...) definition
    
    Massimo has fixed this.
    
    > 
    > the long long int printf format in int8.h is %lld on AIX
    > 
    > AIX 4.2.1 and 4.3.1 need one other simpler Makefile, another template
    > and must not include dynloader.c
    
    Done.  Files added.
    
    
    > 
    > PS: all unsigned char problems are gone. 
    > keep it cidr not inet !!
    > and no, the heaptuple.c fix did not fix the pg_class index problem
    > sorry i am off to weekend now
    > 
    > begin 600 aix_42
    > M05)/4%0Z8W)S"D-&3$%'4SHM<6-H87)S/7-I9VYE9" M<6UA>&UE;3TX,3DR
    > M("UQ:&%L=#UW("UQ<W)C;7-G("UQ8VAE8VL]9&EV>F5R;R M<6QO;F=L;VYG
    > M"E-(05)%1%],24(Z"D%,3#H*4U)#2%])3D,Z"E-20TA?3$E".@I54T5?3$]#
    > K04Q%.FYO"D1,4U5&1DE8.BYS;PI91DQ!1U,Z+60*64%#0SH*0T,Z>&QC"D]#
    > `
    > end
    > 
    > begin 600 Makefile.aix4
    > M34M?3D]?3$]21$52/2!T<G5E"@HE)"A$3%-51D9)6"DZ("4N;PH))"A,1"D@
    > J+4<@+6)E>'!A;&P@+6)N;V5N=')Y("UO("1 ("0\("0H3$1&3$%'4RD*
    > `
    > end
    > 
    > begin 600 .similar
    > M86QP:&$M9&5C+6]S9CUA;'!H80IA;'!H82UU;FMN;W=N+6QI;G5X+6=N=3UL
    > M:6YU>%]A;'!H80IH<'!A,2XQ+6AP+6AP=7@Q,"XR,#UH<'5X7V-C"FAP<&$Q
    > M+C$M<W1R871U<RUS>7-V-#US=G(T"FDS.#8M;F5X="UN97AT<W1E<#,];F5X
    > M='-T97 *:3,X-BUP8RUB<V1I,BXP/6)S9&E?,BXP"FDS.#8M<&,M8G-D:3(N
    > M,3UB<V1I7S(N,0II,S@V+7!C+6)S9&DS+C ]8G-D:5\S+C *:3,X-BUP8RUL
    > M:6YU>"UG;G4];&EN=7A?:3,X-@II,S@V+7!C+7-O;&%R:7,R+C8]<V]L87)I
    > M<U]I,S@V7V=C8PII,S@V+7!C+7-U;F]S-3US;VQA<FES7VDS.#9?9V-C"FDS
    > M.#8M=6YK;F]W;BUF<F5E8G-D/69R965B<V0*:3,X-BUU;FMN;W=N+6YE=&)S
    > M9#UN971B<V0*:30X-BUP8RUL:6YU>"UG;G4];&EN=7A?:3,X-@II-3@V+7!C
    > M+6QI;G5X+6=N=3UL:6YU>%]I,S@V"FDU.#8M<&,M<V-O,RXR=CUS8V\*:38X
    > M-BUP8RUL:6YU>"UG;G4];&EN=7A?:3,X-@IM:7!S+7-G:2UI<FEX/6ER:7@U
    > M"G!O=V5R<&,M:6)M+6%I>#,N,BXU/6%I>%\S,C4*<&]W97)P8RUI8FTM86EX
    > M-"XQ+C0N,#UA:7A?-#$*<&]W97)P8RUI8FTM86EX-"XQ+C4N,#UA:7A?-#$*
    > M<&]W97)P8RUI8FTM86EX-"XR+C$N,#UA:7A?-#(*<&]W97)P8RUI8FTM86EX
    > M-"XS+C$N,#UA:7A?-#(*<&]W97)P8RUU;FMN;W=N+6QI;G5X+6=N=3UL:6YU
    > M>%]P<&,*<W!A<F,M<W5N+7-O;&%R:7,]<V]L87)I<U]S<&%R8U]G8V,*<W!A
    > M<F,M<W5N+7-U;F]S-#US=6YO<S1?9V-C"G-P87)C+7-U;BUS=6YO<S4]<V]L
    > M87)I<U]S<&%R8U]G8V,*<W!A<F,M=6YK;F]W;BUL:6YU>"UG;G4];&EN=7A?
    > &<W!A<F,*
    > `
    > end
    > 
    > 
    
    
    -- 
    Bruce Momjian                          |  830 Blythe Avenue
    maillist@candle.pha.pa.us              |  Drexel Hill, Pennsylvania 19026
      +  If your life is a hard drive,     |  (610) 353-9879(w)
      +  Christ can be your backup.        |  (610) 853-3000(h)
    
    
  7. Re: [HACKERS] Re: Open portability issues

    Brook Milligan <brook@trillium.nmsu.edu> — 1998-09-09T20:09:56Z

       > Open portability issues:
       > 
       > /usr/local should be searched for lib and include for all ports if present 
       > (currently not working, I have libreadline there)
    
       I actually us a flag to configure:
    
    	   --with-includes="/u/readline" \
    	   --with-libraries="/u/readline /usr/contrib/lib"
    
       Should we be poking around in /usr/local by default?  Comments?
    
    No!  The configure options (including the /usr/local typical usage)
    are clearly outlined in INSTALL and easy to use.  In fact, arbitrary
    series of space-separated directories can be given as you illustrate.
    
    The configuration stuff works fine now.  Why mung it up again?  If we
    make searching /usr/local a default, we need a way to prevent that if
    the wrong stuff is in /usr/local.  It makes sense to simply specify
    where to look, document what to do, and be done.
    
    Cheers,
    Brook
    
    
  8. Re: [HACKERS] Re: Open portability issues

    Marc Fournier <scrappy@hub.org> — 1998-09-10T03:32:14Z

    On Wed, 9 Sep 1998, Bruce Momjian wrote:
    
    > > 
    > > Open portability issues:
    > > 
    > > /usr/local should be searched for lib and include for all ports if present 
    > > (currently not working, I have libreadline there)
    > 
    > I actually us a flag to configure:
    > 
    >         --with-includes="/u/readline" \
    >         --with-libraries="/u/readline /usr/contrib/lib"
    > 
    > Should we be poking around in /usr/local by default?  Comments?
    
    	No...unless someone can point me at a package that explicitly goes
    out and looking /usr/local.  I've yet to have a problem with any package
    I've installed not being able to find libraries and include files that are
    installed in /usr/local ... if someone is having a problem, they should be
    directed to look at *fixing* their system in the first place, as they are
    definitely going to have more problems then just with PostgreSQL...
    
    
    Marc G. Fournier                                
    Systems Administrator @ hub.org 
    primary: scrappy@hub.org           secondary: scrappy@{freebsd|postgresql}.org