[omniORB] omniorb with gcc 4.4 : getline, getopt, EOF
Michael
omniorb at bindone.de
Wed May 6 15:50:20 BST 2009
This doesn't seem to be a gcc 4.4 issue, but depend on the standard C
library shipped with your OS. Should be fixed anyway :)
Jiang Wei wrote:
> $ gcc --version
> gcc (GCC) 4.4.0 20090427 (Red Hat 4.4.0-3)
>
>
> $ configure & make
> ... ...
> make[3]: Entering directory `/home/jw/omni/build/src/tool/omkdepend'
> gcc -c -O -DDEBUG -I. -I../../../../src/tool/omkdepend -I../../../include -
> I../../../../include -D__OSVERSION__=2 -D__linux__ -D__x86__ -o include.o
> ../../../../src/tool/omkdepend/include.c
> In file included from ../../../../src/tool/omkdepend/include.c:31:
> ../../../../src/tool/omkdepend/def.h:132: error: conflicting types for
> 'getline'
> /usr/include/stdio.h:653: note: previous declaration of 'getline' was here
>
>
> $ rename getline to get_line, and make
> ...
> ../../../../../src/appl/utils/catior/catior.cc: In function 'int main(int,
> char**)':
> ../../../../../src/appl/utils/catior/catior.cc:363: error: 'EOF' was not
> declared in thi
>
> ../../../../../src/appl/utils/convertior/convertior.cc: In function 'int
> main(int, char**)':
> ../../../../../src/appl/utils/convertior/convertior.cc:153: error: 'EOF' was
> not declared in this scope
>
>
> $ man getopt
>
> The getopt() function was once specified to return EOF instead of -1.
> This was changed by IEEE Std 1003.2-1992 ("POSIX.2") to decouple getopt()
> from <stdio.h>.
>
> $ change EOF to -1 & make , Successed.
>
> $ cvs diff -u
>
>
> Index: src/appl/utils/catior/catior.cc
> ===================================================================
> RCS file: /cvsroot/omniorb/omni/src/appl/utils/catior/Attic/catior.cc,v
> retrieving revision 1.14.2.3
> diff -u -r1.14.2.3 catior.cc
> --- src/appl/utils/catior/catior.cc 22 May 2005 12:39:44 -0000
> 1.14.2.3
> +++ src/appl/utils/catior/catior.cc 6 May 2009 12:38:04 -0000
> @@ -360,7 +360,7 @@
> int hexflag = 0;
> int omniflag = 0;
>
> - while((c = getopt(argc,argv,"xo")) != EOF) {
> + while((c = getopt(argc,argv,"xo")) != -1) {
> switch(c) {
> case 'x':
> hexflag = 1;
> Index: src/appl/utils/convertior/convertior.cc
> ===================================================================
> RCS file:
> /cvsroot/omniorb/omni/src/appl/utils/convertior/Attic/convertior.cc,v
> retrieving revision 1.11.2.3
> diff -u -r1.11.2.3 convertior.cc
> --- src/appl/utils/convertior/convertior.cc 22 May 2005 12:39:43 -0000
> 1.11.2.3
> +++ src/appl/utils/convertior/convertior.cc 6 May 2009 12:38:04 -0000
> @@ -150,7 +150,7 @@
>
> int c;
>
> - while((c = getopt(argc,argv,"x")) != EOF)
> + while((c = getopt(argc,argv,"x")) != -1)
> {
> switch(c)
> {
> Index: src/tool/omkdepend/def.h
> ===================================================================
> RCS file: /cvsroot/omniorb/omni/src/tool/omkdepend/Attic/def.h,v
> retrieving revision 1.4.2.4
> diff -u -r1.4.2.4 def.h
> --- src/tool/omkdepend/def.h 12 Dec 2008 12:13:19 -0000 1.4.2.4
> +++ src/tool/omkdepend/def.h 6 May 2009 12:38:04 -0000
> @@ -129,7 +129,7 @@
>
> char *copy();
> char *base_name();
> -char *getline();
> +char *get_line();
> struct symtab *slookup();
> struct symtab *isdefined();
> struct symtab *fdefined();
> Index: src/tool/omkdepend/main.c
> ===================================================================
> RCS file: /cvsroot/omniorb/omni/src/tool/omkdepend/Attic/main.c,v
> retrieving revision 1.8.2.3
> diff -u -r1.8.2.3 main.c
> --- src/tool/omkdepend/main.c 29 Dec 2008 14:38:31 -0000 1.8.2.3
> +++ src/tool/omkdepend/main.c 6 May 2009 12:38:04 -0000
> @@ -470,7 +470,7 @@
> * Get the next line. We only return lines beginning with '#' since that
> * is all this program is ever interested in.
> */
> -char *getline(filep)
> +char *get_line(filep)
> register struct filepointer *filep;
> {
> register char *p, /* walking pointer */
> Index: src/tool/omkdepend/parse.c
> ===================================================================
> RCS file: /cvsroot/omniorb/omni/src/tool/omkdepend/Attic/parse.c,v
> retrieving revision 1.2.2.3
> diff -u -r1.2.2.3 parse.c
> --- src/tool/omkdepend/parse.c 29 Dec 2008 14:38:31 -0000 1.2.2.3
> +++ src/tool/omkdepend/parse.c 6 May 2009 12:38:04 -0000
> @@ -45,7 +45,7 @@
> register int type;
> boolean recfailOK;
>
> - while (line = getline(filep)) {
> + while (line = get_line(filep)) {
> switch(type = deftype(line, filep, file_red, file, TRUE)) {
> case IF:
> doif:
> @@ -170,7 +170,7 @@
> register char *line;
> register int type;
>
> - while (line = getline(filep)) {
> + while (line = get_line(filep)) {
> switch(type = deftype(line, filep, file_red, file, FALSE)) {
> case IF:
> case IFFALSE:
>
>
> _______________________________________________
> omniORB-list mailing list
> omniORB-list at omniorb-support.com
> http://www.omniorb-support.com/mailman/listinfo/omniorb-list
More information about the omniORB-list
mailing list