OSDN Git Service

Peter Kjellerstedt writes:
[uclinux-h8/uClibc.git] / libc / unistd / Makefile
index ee34021..a8d9747 100644 (file)
@@ -25,26 +25,28 @@ TOPDIR=../../
 include $(TOPDIR)Rules.mak
 DIRS:=
 
-CSRC=execl.c execlp.c execv.c execvep.c execvp.c execle.c getcwd.c \
+CSRC=execl.c execlp.c execv.c execvep.c execvp.c execle.c \
        sleep.c usleep.c getpass.c sysconf_src.c getlogin.c \
-       fpathconf.c confstr.c pathconf.c swab.c usershell.c
-ifeq ($(strip $(HAS_MMU)),true)
+       fpathconf.c confstr.c pathconf.c swab.c usershell.c \
+       getsubopt.c
+ifeq ($(strip $(UCLIBC_HAS_MMU)),y)
     CSRC+=daemon.c
 endif
+ifeq ($(strip $(UCLIBC_HAS_GNU_GETOPT)),y)
+       CSRC += getopt.c
+else
+       CSRC += getopt-susv3.c
+endif
 
 # TESTING -- comment this out if it breaks for you
-ifeq ($(TARGET_ARCH), $(NATIVE_ARCH))
+ifeq ($(TARGET_ARCH), $(HOST_ARCH))
        SYSCONF = sysconf_native
 else
        SYSCONF = sysconf_$(TARGET_ARCH).c
 endif
 
 COBJS=$(patsubst %.c,%.o, $(CSRC))
-
-MSRC=getopt.c
-MOBJ=_gnu_getopt_internal.o gnu_getopt_long.o gnu_getopt_long_only.o
-
-OBJS=$(COBJS) $(MOBJ)
+OBJS=$(COBJS)
 
 all: $(SYSCONF) $(OBJS) $(LIBC)
 
@@ -55,8 +57,8 @@ ar-target: $(OBJS)
 
 # We are cross-compiling so use the generic sysconf.c.
 sysconf_$(TARGET_ARCH).c: sysconf.c
-       @echo warning: sysconf_$(NATIVE_ARCH).c is older then sysconf.c so using generic sysconf.c
-       @echo To build sysconf_$(NATIVE_ARCH).c run gen_sysconf \> sysconf_$(NATIVE_ARCH).c on
+       @echo warning: sysconf_$(HOST_ARCH).c is older then sysconf.c so using generic sysconf.c
+       @echo To build sysconf_$(HOST_ARCH).c run gen_sysconf \> sysconf_$(HOST_ARCH).c on
        @echo your target platform, place in the unistd directory, and rebuild
        cp -f sysconf.c sysconf_$(TARGET_ARCH).c
 
@@ -77,14 +79,14 @@ gen_sysconf_tester.o: sysconf_tester.o getpagesize_tester.o
                cp -f sysconf.c sysconf_src.c ;\
        else \
                set -e -x; \
-               if ../extra/gcc-uClibc/gcc-uClibc-$(NATIVE_ARCH) -static \
+               if ../extra/gcc-uClibc/gcc-uClibc-$(HOST_ARCH) -static \
                        -D_UCLIBC_GENERATE_SYSCONF_MAIN sysconf.c sysconf_tester.o \
-                       -o gen_sysconf && ./gen_sysconf > sysconf_$(NATIVE_ARCH).c ;\
+                       -o gen_sysconf && ./gen_sysconf > sysconf_$(HOST_ARCH).c ;\
                then \
-                       echo successfully built sysconf_$(NATIVE_ARCH).c ;\
+                       echo successfully built sysconf_$(HOST_ARCH).c ;\
                else \
                        echo warning: build of gen_sysconf failed so using generic sysconf.c ;\
-                       cp -f sysconf.c sysconf_$(NATIVE_ARCH).c ;\
+                       cp -f sysconf.c sysconf_$(HOST_ARCH).c ;\
                fi ;\
        fi
 
@@ -98,10 +100,6 @@ $(COBJS): %.o : %.c
        $(CC) $(CFLAGS) -c $< -o $@
        $(STRIPTOOL) -x -R .note -R .comment $*.o
 
-$(MOBJ): $(MSRC)
-       $(CC) $(CFLAGS) -DL_$* $< -c -o $*.o
-       $(STRIPTOOL) -x -R .note -R .comment $*.o
-
 $(OBJ): Makefile
 
 subdirs: $(patsubst %, _dir_%, $(DIRS))
@@ -117,5 +115,5 @@ $(patsubst %, _dirclean_%, $(DIRS)) : dummy
 dummy:
 
 clean:
-       rm -f *.[oa] *~ core gen_sysconf sysconf_*.c
+       $(RM) *.[oa] *~ core gen_sysconf sysconf_*.c