Parlib is no PIC-capable
[akaros.git] / user / parlib / Makefile
index c3cbd54..9a553cf 100644 (file)
@@ -3,7 +3,7 @@ CFLAGS_USER += -static -fomit-frame-pointer -g
 LIBNAME = parlib
 # DEPLIBS passed in from the top-level Makefile
 DEPLIBS := $(DEPLIBS)
-DEPLIBAS = $(patsubst %, $(XCC_TARGET_ROOT)/lib/lib%.a, $(DEPLIBS))
+DEPLIBAS = $(patsubst %, $(XCC_TARGET_LIB)/lib%.a, $(DEPLIBS))
 
 SRCDIR := 
 OBJDIR := $(SRCDIR)obj
@@ -11,6 +11,7 @@ INCDIR = $(SRCDIR)include
 
 INCS = -I. -I$(INCDIR) 
 FINALLIB = $(OBJDIR)/lib$(LIBNAME).a
+FINALLIB-INSTALL = $(XCC_TARGET_LIB)/lib$(LIBNAME).a
 
 uc = $(shell echo $(1) | tr a-z A-Z)
 
@@ -25,26 +26,29 @@ OBJS    := $(patsubst %.c, $(OBJDIR)/%.o, $(CFILES)) \
 all: $(FINALLIB)
        @:
 
-$(OBJDIR)/$(ARCH)/%.o: $(SRCDIR)$(ARCH)/%.S $(HEADERS)
+$(OBJDIR)/$(ARCH)/%.o: $(SRCDIR)$(ARCH)/%.S $(HEADERS) $(DEPLIBAS)
        @echo + as [$(LIBUCNAME)] $<
        @mkdir -p $(@D)
        $(Q)$(CC) $(CFLAGS_USER) $(INCS) -o $@ -c $<
 
-$(OBJDIR)/%.o: $(SRCDIR)%.c $(HEADERS)
+$(OBJDIR)/%.o: $(SRCDIR)%.c $(HEADERS) $(DEPLIBAS)
        @echo + cc [$(LIBUCNAME)] $<
        @mkdir -p $(@D)
        $(Q)$(CC) $(CFLAGS_USER) $(INCS) -o $@ -c $<
 
-$(FINALLIB): $(OBJS) $(DEPLIBAS)
+$(FINALLIB): $(OBJS)
        @echo + ar [$(LIBUCNAME)] $@
        @mkdir -p $(@D)
        $(Q)$(AR) rc $@ $(OBJS)
 
-install: $(FINALLIB)
-       @cp $(FINALLIB) $(XCC_TARGET_ROOT)/lib/
-       @cp -R $(INCDIR)/* $(XCC_TARGET_ROOT)/sys-include/
-       @rm -rf $(XCC_TARGET_ROOT)/sys-include/parlib  
-       @ln -fs . $(XCC_TARGET_ROOT)/sys-include/parlib  
+$(FINALLIB-INSTALL): $(FINALLIB)
+       @cp $(FINALLIB) $@
+       @cp -R $(INCDIR)/* $(XCC_TARGET_INCLUDE)/
+       @rm -rf $(XCC_TARGET_INCLUDE)/parlib
+       @ln -fs . $(XCC_TARGET_INCLUDE)/parlib
+
+install: $(FINALLIB-INSTALL)
+       @echo > /dev/null
 
 clean: 
        @echo + clean [$(LIBUCNAME)]