add build.ninja, adjust Makefile

laumann
Sep 23, 2022, 9:27 PM
ZYOEB24JLLX7AJG4K4OT3CQKWN6HWHENEN2L5QKUNFUFP5SSZMLAC

Dependencies

Change contents

  • file addition: build.ninja (----------)
    [5.1]
    # TODO Figure out how to deal with pkg-config for -lxyz
    ninja_required_version = 1.1
    cflags = -Wall -g -D_POSIX_C_SOURCE=200809L -std=c99
    CC = /usr/bin/x86_64-pc-linux-gnu-gcc
    #PKG_CONFIG = pkg-config
    rule cc
    depfile = $out.d
    command = $CC -MD -MF $out.d $cflags -c $in -o $out
    description = CC $out
    build ani.o: cc ani.c
    build init.o: cc init.c
    build change.o: cc change.c
    build vendor/zstdseek/zstdseek_compress.o: cc vendor/zstdseek/zstdseek_compress.c
    build vendor/zstdseek/zstdseek_decompress.o: cc vendor/zstdseek/zstdseek_decompress.c
    build vendor/blake3/blake3.o: cc vendor/blake3/blake3.c
    build vendor/blake3/blake3_dispatch.o: cc vendor/blake3/blake3_dispatch.c
    build vendor/blake3/blake3_portable.o: cc vendor/blake3/blake3_portable.c
    build base32.o: cc base32.c
    build bincode.o: cc bincode.c
    build scaffold.o: cc scaffold.c
    build hash.o: cc hash.c
    rule link
    command = $CC $cflags -o $out $ldflags $in $asm $libs
    description = LD $out
    build ani: link ani.o init.o change.o vendor/zstdseek/zstdseek_compress.o $
    vendor/zstdseek/zstdseek_decompress.o vendor/blake3/blake3.o $
    vendor/blake3/blake3_dispatch.o vendor/blake3/blake3_portable.o base32.o $
    bincode.o scaffold.o hash.o
    asm = vendor/blake3/blake3_avx2_x86-64_unix.S $
    vendor/blake3/blake3_avx512_x86-64_unix.S $
    vendor/blake3/blake3_sse2_x86-64_unix.S $
    vendor/blake3/blake3_sse41_x86-64_unix.S
    libs = -lzstd -lxxhash
  • replacement in Makefile at line 44
    [2.31][2.31:32]()
    [2.31]
    [3.724]
    build:
    @ninja
  • replacement in Makefile at line 47
    [3.731][3.731:751](),[3.751][2.33:51]()
    @$(RM) ani $(OBJS)
    .PHONY: clean fmt
    [3.731]
    [3.765]
    @ninja -t clean
    graph:
    @ninja -t graph ani | dot -Tpng -o depgraph.png
  • edit in Makefile at line 51
    [3.766]
    .PHONY: clean fmt build graph