Figure out where to install-libs
authorKevin Klues <klueska@cs.berkeley.edu>
Tue, 11 Nov 2014 19:38:38 +0000 (11:38 -0800)
committerBarret Rhoden <brho@cs.berkeley.edu>
Wed, 31 Dec 2014 18:03:08 +0000 (13:03 -0500)
Working towards getting crosstools working to build our cross compiler,
they use the sysroot-style installation.  We need to install our libs in
a different place depending on which style we are using.

Makefile
user/benchutil/Makefile
user/bsd/Makefile
user/iplib/Makefile
user/ndblib/Makefile
user/parlib/Makefile
user/pthread/Makefile

index 9977989..5789fcf 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -310,8 +310,16 @@ KERNEL_LD ?= kernel.ld
 gcc-lib := $(shell $(CC) -print-libgcc-file-name 2>/dev/null)
 NOSTDINC_FLAGS += -nostdinc -isystem \
                   $(shell $(CC) -print-file-name=include 2>/dev/null)
 gcc-lib := $(shell $(CC) -print-libgcc-file-name 2>/dev/null)
 NOSTDINC_FLAGS += -nostdinc -isystem \
                   $(shell $(CC) -print-file-name=include 2>/dev/null)
-XCC_TARGET_ROOT := $(dir $(shell which $(CC) 2> /dev/null))../$(patsubst %-,%,\
-                                                               $(CROSS_COMPILE))
+XCC_TARGET_ROOT := $(shell $(CC) --print-sysroot 2> /dev/null)
+ifeq ($(XCC_TARGET_ROOT),)
+       XCC_TARGET_ROOT := $(dir $(shell which $(CC) 2> \
+                           /dev/null))../$(patsubst %-,%, $(CROSS_COMPILE))
+       XCC_TARGET_LIB := $(XCC_TARGET_ROOT)/lib/
+       XCC_TARGET_INCLUDE := $(XCC_TARGET_ROOT)/sys-include/
+else
+       XCC_TARGET_LIB := $(XCC_TARGET_ROOT)/usr/lib/
+       XCC_TARGET_INCLUDE := $(XCC_TARGET_ROOT)/usr/include/
+endif
 
 CFLAGS_KERNEL += -O2 -pipe -MD
 CFLAGS_KERNEL += -std=gnu99 -fgnu89-inline
 
 CFLAGS_KERNEL += -O2 -pipe -MD
 CFLAGS_KERNEL += -std=gnu99 -fgnu89-inline
@@ -343,7 +351,7 @@ KBUILD_CHECKSRC := 0
 export AKAROSINCLUDE CROSS_COMPILE
 export CC CPP AS AR LD OBJCOPY OBJDUMP NM STRIP
 export CFLAGS_KERNEL AFLAGS_KERNEL
 export AKAROSINCLUDE CROSS_COMPILE
 export CC CPP AS AR LD OBJCOPY OBJDUMP NM STRIP
 export CFLAGS_KERNEL AFLAGS_KERNEL
-export NOSTDINC_FLAGS XCC_TARGET_ROOT
+export NOSTDINC_FLAGS XCC_TARGET_ROOT XCC_TARGET_LIB XCC_TARGET_INCLUDE
 export KBUILD_BUILTIN KBUILD_CHECKSRC
 
 CFLAGS_USER += -O2 -std=gnu99 -fno-stack-protector -fgnu89-inline
 export KBUILD_BUILTIN KBUILD_CHECKSRC
 
 CFLAGS_USER += -O2 -std=gnu99 -fno-stack-protector -fgnu89-inline
index d70805e..39480ba 100644 (file)
@@ -11,7 +11,7 @@ INCDIR = $(SRCDIR)include
 
 INCS = -I. -I$(INCDIR) 
 FINALLIB = $(OBJDIR)/lib$(LIBNAME).a
 
 INCS = -I. -I$(INCDIR) 
 FINALLIB = $(OBJDIR)/lib$(LIBNAME).a
-FINALLIB-INSTALL = $(XCC_TARGET_ROOT)/lib/lib$(LIBNAME).a
+FINALLIB-INSTALL = $(XCC_TARGET_LIB)/lib$(LIBNAME).a
 
 uc = $(shell echo $(1) | tr a-z A-Z)
 
 
 uc = $(shell echo $(1) | tr a-z A-Z)
 
@@ -42,10 +42,10 @@ $(FINALLIB): $(OBJS)
        $(Q)$(AR) rc $@ $(OBJS)
 
 $(FINALLIB-INSTALL): $(FINALLIB)
        $(Q)$(AR) rc $@ $(OBJS)
 
 $(FINALLIB-INSTALL): $(FINALLIB)
-       @cp $(FINALLIB) $(XCC_TARGET_ROOT)/lib/
-       @cp -R $(INCDIR)/* $(XCC_TARGET_ROOT)/sys-include/
-       @rm -rf $(XCC_TARGET_ROOT)/sys-include/benchutil
-       @ln -fs . $(XCC_TARGET_ROOT)/sys-include/benchutil
+       @cp $(FINALLIB) $@
+       @cp -R $(INCDIR)/* $(XCC_TARGET_INCLUDE)/
+       @rm -rf $(XCC_TARGET_INCLUDE)/benchutil
+       @ln -fs . $(XCC_TARGET_INCLUDE)/benchutil
 
 install: $(FINALLIB-INSTALL)
        @echo > /dev/null
 
 install: $(FINALLIB-INSTALL)
        @echo > /dev/null
index cf9d723..fbad739 100644 (file)
@@ -11,7 +11,7 @@ INCDIR = .
 
 INCS = -I. -I$(INCDIR)
 FINALLIB = $(OBJDIR)/lib$(LIBNAME).a
 
 INCS = -I. -I$(INCDIR)
 FINALLIB = $(OBJDIR)/lib$(LIBNAME).a
-FINALLIB-INSTALL = $(XCC_TARGET_ROOT)/lib/lib$(LIBNAME).a
+FINALLIB-INSTALL = $(XCC_TARGET_LIB)/lib$(LIBNAME).a
 
 uc = $(shell echo $(1) | tr a-z A-Z)
 
 
 uc = $(shell echo $(1) | tr a-z A-Z)
 
@@ -42,7 +42,7 @@ $(FINALLIB): $(OBJS)
        $(Q)$(AR) rc $@ $(OBJS)
 
 $(FINALLIB-INSTALL): $(FINALLIB)
        $(Q)$(AR) rc $@ $(OBJS)
 
 $(FINALLIB-INSTALL): $(FINALLIB)
-       @cp $(FINALLIB) $(XCC_TARGET_ROOT)/lib/
+       @cp $(FINALLIB) $@
 
 install: $(FINALLIB-INSTALL)
        @echo > /dev/null
 
 install: $(FINALLIB-INSTALL)
        @echo > /dev/null
index 3620144..424efd1 100644 (file)
@@ -11,7 +11,7 @@ INCDIR = $(SRCDIR)include
 
 INCS = -I. -I$(INCDIR)
 FINALLIB = $(OBJDIR)/lib$(LIBNAME).a
 
 INCS = -I. -I$(INCDIR)
 FINALLIB = $(OBJDIR)/lib$(LIBNAME).a
-FINALLIB-INSTALL = $(XCC_TARGET_ROOT)/lib/lib$(LIBNAME).a
+FINALLIB-INSTALL = $(XCC_TARGET_LIB)/lib$(LIBNAME).a
 
 uc = $(shell echo $(1) | tr a-z A-Z)
 
 
 uc = $(shell echo $(1) | tr a-z A-Z)
 
@@ -42,10 +42,10 @@ $(FINALLIB): $(OBJS)
        $(Q)$(AR) rc $@ $(OBJS)
 
 $(FINALLIB-INSTALL): $(FINALLIB)
        $(Q)$(AR) rc $@ $(OBJS)
 
 $(FINALLIB-INSTALL): $(FINALLIB)
-       @cp $(FINALLIB) $(XCC_TARGET_ROOT)/lib/
-       @cp -R $(INCDIR)/* $(XCC_TARGET_ROOT)/sys-include/
-       @rm -rf $(XCC_TARGET_ROOT)/sys-include/iplib  
-       @ln -fs . $(XCC_TARGET_ROOT)/sys-include/iplib  
+       @cp $(FINALLIB) $@
+       @cp -R $(INCDIR)/* $(XCC_TARGET_INCLUDE)/
+       @rm -rf $(XCC_TARGET_INCLUDE)/iplib
+       @ln -fs . $(XCC_TARGET_INCLUDE)/iplib
 
 install: $(FINALLIB-INSTALL)
        @echo > /dev/null
 
 install: $(FINALLIB-INSTALL)
        @echo > /dev/null
index f8b2f27..13d9938 100644 (file)
@@ -11,7 +11,7 @@ INCDIR = $(SRCDIR)include
 
 INCS = -I. -I$(INCDIR)
 FINALLIB = $(OBJDIR)/lib$(LIBNAME).a
 
 INCS = -I. -I$(INCDIR)
 FINALLIB = $(OBJDIR)/lib$(LIBNAME).a
-FINALLIB-INSTALL = $(XCC_TARGET_ROOT)/lib/lib$(LIBNAME).a
+FINALLIB-INSTALL = $(XCC_TARGET_LIB)/lib$(LIBNAME).a
 
 uc = $(shell echo $(1) | tr a-z A-Z)
 
 
 uc = $(shell echo $(1) | tr a-z A-Z)
 
@@ -42,10 +42,10 @@ $(FINALLIB): $(OBJS)
        $(Q)$(AR) rc $@ $(OBJS)
 
 $(FINALLIB-INSTALL): $(FINALLIB)
        $(Q)$(AR) rc $@ $(OBJS)
 
 $(FINALLIB-INSTALL): $(FINALLIB)
-       @cp $(FINALLIB) $(XCC_TARGET_ROOT)/lib/
-       @cp -R $(INCDIR)/* $(XCC_TARGET_ROOT)/sys-include/
-       @rm -rf $(XCC_TARGET_ROOT)/sys-include/libip  
-       @ln -fs . $(XCC_TARGET_ROOT)/sys-include/libip  
+       @cp $(FINALLIB) $@
+       @cp -R $(INCDIR)/* $(XCC_TARGET_INCLUDE)/
+       @rm -rf $(XCC_TARGET_INCLUDE)/libip
+       @ln -fs . $(XCC_TARGET_INCLUDE)/libip
 
 install: $(FINALLIB-INSTALL)
        @echo > /dev/null
 
 install: $(FINALLIB-INSTALL)
        @echo > /dev/null
index e298e54..9ad899d 100644 (file)
@@ -11,7 +11,7 @@ INCDIR = $(SRCDIR)include
 
 INCS = -I. -I$(INCDIR) 
 FINALLIB = $(OBJDIR)/lib$(LIBNAME).a
 
 INCS = -I. -I$(INCDIR) 
 FINALLIB = $(OBJDIR)/lib$(LIBNAME).a
-FINALLIB-INSTALL = $(XCC_TARGET_ROOT)/lib/lib$(LIBNAME).a
+FINALLIB-INSTALL = $(XCC_TARGET_LIB)/lib$(LIBNAME).a
 
 uc = $(shell echo $(1) | tr a-z A-Z)
 
 
 uc = $(shell echo $(1) | tr a-z A-Z)
 
@@ -43,9 +43,9 @@ $(FINALLIB): $(OBJS)
 
 $(FINALLIB-INSTALL): $(FINALLIB)
        @cp $(FINALLIB) $@
 
 $(FINALLIB-INSTALL): $(FINALLIB)
        @cp $(FINALLIB) $@
-       @cp -R $(INCDIR)/* $(XCC_TARGET_ROOT)/sys-include/
-       @rm -rf $(XCC_TARGET_ROOT)/sys-include/parlib  
-       @ln -fs . $(XCC_TARGET_ROOT)/sys-include/parlib  
+       @cp -R $(INCDIR)/* $(XCC_TARGET_INCLUDE)/
+       @rm -rf $(XCC_TARGET_INCLUDE)/parlib
+       @ln -fs . $(XCC_TARGET_INCLUDE)/parlib
 
 install: $(FINALLIB-INSTALL)
        @echo > /dev/null
 
 install: $(FINALLIB-INSTALL)
        @echo > /dev/null
index 5ecefbd..7734b61 100644 (file)
@@ -11,7 +11,7 @@ INCDIR = $(SRCDIR).
 
 INCS = -I$(INCDIR) 
 FINALLIB = $(OBJDIR)/lib$(LIBNAME).a
 
 INCS = -I$(INCDIR) 
 FINALLIB = $(OBJDIR)/lib$(LIBNAME).a
-FINALLIB-INSTALL = $(XCC_TARGET_ROOT)/lib/lib$(LIBNAME).a
+FINALLIB-INSTALL = $(XCC_TARGET_LIB)/lib$(LIBNAME).a
 
 uc = $(shell echo $(1) | tr a-z A-Z)
 
 
 uc = $(shell echo $(1) | tr a-z A-Z)
 
@@ -35,7 +35,7 @@ $(FINALLIB): $(OBJS)
 
 $(FINALLIB-INSTALL): $(FINALLIB)
        @cp $(FINALLIB) $@
 
 $(FINALLIB-INSTALL): $(FINALLIB)
        @cp $(FINALLIB) $@
-       @cp -R $(INCDIR)/*.h $(XCC_TARGET_ROOT)/sys-include/
+       @cp -R $(INCDIR)/*.h $(XCC_TARGET_INCLUDE)/
 
 install: $(FINALLIB-INSTALL)
        @echo > /dev/null
 
 install: $(FINALLIB-INSTALL)
        @echo > /dev/null