[uClibc-cvs] uClibc/extra/gcc-uClibc gcc-uClibc.c,1.50,1.51

Erik Andersen andersen at codepoet.org
Thu Dec 12 21:58:45 UTC 2002


Update of /var/cvs/uClibc/extra/gcc-uClibc
In directory winder:/tmp/cvs-serv14961

Modified Files:
	gcc-uClibc.c 
Log Message:
When -shared is specified, meaning they wish to create a shared
library, we need to disable adding start files (i.e. crt0) since
it isn't supposed to be creating an executable, just a shared lib.
 -Erik


Index: gcc-uClibc.c
===================================================================
RCS file: /var/cvs/uClibc/extra/gcc-uClibc/gcc-uClibc.c,v
retrieving revision 1.50
retrieving revision 1.51
diff -u -d -r1.50 -r1.51
--- gcc-uClibc.c	27 Nov 2002 23:34:05 -0000	1.50
+++ gcc-uClibc.c	12 Dec 2002 21:58:41 -0000	1.51
@@ -289,6 +289,7 @@
 						use_static_linking = 1;
 					}
 					if (strcmp("-shared",argv[i]) == 0) {
+						use_start = 0;
 						use_pic = 1;
 					}
 					break;
@@ -444,13 +445,15 @@
 		//gcc_argv[i++] = "-Wl,--end-group";
 	    }
 #ifdef __UCLIBC_CTOR_DTOR__
-	    if (ctor_dtor) {
-		if (use_pic) {
-		    gcc_argv[i++] = LIBGCC_DIR "crtendS.o" ;
-		} else {
-		    gcc_argv[i++] = LIBGCC_DIR "crtend.o" ;
+	    if (use_start) {
+		if (ctor_dtor) {
+		    if (use_pic) {
+			gcc_argv[i++] = LIBGCC_DIR "crtendS.o" ;
+		    } else {
+			gcc_argv[i++] = LIBGCC_DIR "crtend.o" ;
+		    }
+		    gcc_argv[i++] = crtn_path[use_build_dir];
 		}
-		gcc_argv[i++] = crtn_path[use_build_dir];
 	    }
 #endif
 	} else {




More information about the uClibc-cvs mailing list