]> git.mdlowis.com Git - proto/aos.git/commitdiff
added lib dependencies to binaries
authormike lowis <mike@mdlowis.com>
Tue, 6 Apr 2021 03:15:07 +0000 (23:15 -0400)
committermike lowis <mike@mdlowis.com>
Tue, 6 Apr 2021 03:15:07 +0000 (23:15 -0400)
Makefile
config.mk
genrules.sh
rules.mk

index 96e64a21b27368c75c47725b8d8b9115febb2e53..58addd35b1d6f19b90a7c8f3c1f7902d0849f407 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -8,6 +8,7 @@ clean:
 rules:
        ./genrules.sh
 
+bins: libs
+
 include config.mk
 include rules.mk
-
index cb3948464e435a34fbd0f5016311767cee78870b..9f5b5a57d8dfc49a7b69a1f51e8adcef55201129 100644 (file)
--- a/config.mk
+++ b/config.mk
@@ -1,3 +1,5 @@
+MAKEFLAGS = -j8
+
 CC = cc
 CFLAGS = -g -Wall -Wextra -Werror
 CPPFLAGS = -Iinc/ -I/usr/include/freetype2
index 2c1f3c6d4d2b319bd64239189634975bf6f465a9..28e91f6eaa5ecba670258de63d8b72f80c3cf338 100755 (executable)
@@ -2,12 +2,13 @@
 
 rm -rf build/
 printf "" > rules.mk
-
+libs=""
 {
     # Generate rules for all libraries
     for lib in lib/*; do
         libdir="$(dirname "$lib")"
         libname="$(basename "$lib")"
+        libs="$libs build/$libdir/lib$libname.a"
         for f in "$lib"/*; do
             mkdir -p "build/$(dirname "$f")"
             printf "%s\n" "build/${f%.c}.o: $f config.mk"
@@ -15,18 +16,19 @@ printf "" > rules.mk
             printf "%s\n" "build/$libdir/lib$libname.a: build/${f%.c}.o"
             printf "%sinclude %s\n" '-' "build/${f%.c}.d"
         done
-            printf "%s\n"   "build/$libdir/lib$libname.a:"
-            printf "\t\$(ARCHIVE)\n"
-            printf "%s\n"   "libs: build/$libdir/lib$libname.a"
+        printf "%s\n"   "build/$libdir/lib$libname.a:"
+        printf "\t\$(ARCHIVE)\n"
+        printf "%s\n"   "libs: build/$libdir/lib$libname.a"
         mkdir -p "build/$libdir/"
     done
-    
+    printf "libs = %s\n" "$libs" 
+
     # Generate rules for simple binaries
     for bin in bin/*.c; do
         mkdir -p "build/bin/"
         printf "%s\n" "build/${bin%.c}.o: $bin"
         printf "\t\$(OBJECT)\n"
-        printf "%s\n" "build/${bin%.c}: build/${bin%.c}.o"
+        printf "%s\n" "build/${bin%.c}: build/${bin%.c}.o \$(libs)"
         printf "\t\$(BINARY)\n"
         printf "%s\n" "bins: build/${bin%.c}"
     done
index 92e6b1b769a5e2cb12a1a5c0484b8b381dfc43e5..d8c04e867444a0a797c1f0e52eb0375df513424e 100644 (file)
--- a/rules.mk
+++ b/rules.mk
@@ -147,43 +147,44 @@ build/lib/libui.a: build/lib/ui/window_show.o
 build/lib/libui.a:
        $(ARCHIVE)
 libs: build/lib/libui.a
+libs =  build/lib/liba.a build/lib/libnet.a build/lib/libui.a
 build/bin/dial.o: bin/dial.c
        $(OBJECT)
-build/bin/dial: build/bin/dial.o
+build/bin/dial: build/bin/dial.o $(libs)
        $(BINARY)
 bins: build/bin/dial
 build/bin/edit.o: bin/edit.c
        $(OBJECT)
-build/bin/edit: build/bin/edit.o
+build/bin/edit: build/bin/edit.o $(libs)
        $(BINARY)
 bins: build/bin/edit
 build/bin/init.o: bin/init.c
        $(OBJECT)
-build/bin/init: build/bin/init.o
+build/bin/init: build/bin/init.o $(libs)
        $(BINARY)
 bins: build/bin/init
 build/bin/listen.o: bin/listen.c
        $(OBJECT)
-build/bin/listen: build/bin/listen.o
+build/bin/listen: build/bin/listen.o $(libs)
        $(BINARY)
 bins: build/bin/listen
 build/bin/pick.o: bin/pick.c
        $(OBJECT)
-build/bin/pick: build/bin/pick.o
+build/bin/pick: build/bin/pick.o $(libs)
        $(BINARY)
 bins: build/bin/pick
 build/bin/screenlock.o: bin/screenlock.c
        $(OBJECT)
-build/bin/screenlock: build/bin/screenlock.o
+build/bin/screenlock: build/bin/screenlock.o $(libs)
        $(BINARY)
 bins: build/bin/screenlock
 build/bin/shell.o: bin/shell.c
        $(OBJECT)
-build/bin/shell: build/bin/shell.o
+build/bin/shell: build/bin/shell.o $(libs)
        $(BINARY)
 bins: build/bin/shell
 build/bin/winmgr.o: bin/winmgr.c
        $(OBJECT)
-build/bin/winmgr: build/bin/winmgr.o
+build/bin/winmgr: build/bin/winmgr.o $(libs)
        $(BINARY)
 bins: build/bin/winmgr