rule gen command = lua5.2 setup.lua $dir generator = 1 # toolchain rule cc command = $cc -MMD -MF $out.d $cflags -c -o $out $in depfile = $out.d deps = gcc description = CC $out rule cpp command = $cc -MMD -MF $out.d $cflags -E -P -o $out $in depfile = $out.d deps = gcc description = CPP $out rule as command = $as $asflags -o $out $in rule link command = $cc $ldflags -o $out $in $ldlibs rule ar command = rm -f $out && $ar crs $out $in rule ld command = $ld -o $out $in rule objcopy command = $objcopy $objcopyflags $in $out rule lines command = ln -f $rspfile $out rspfile = $out.tmp rspfile_content = $in_newline # TODO: Enable dependency-tracking for nasm when # https://bugzilla.nasm.us/show_bug.cgi?id=3392280#c6 is fixed. rule nasm command = nasm $nasmflags -o $out $in rule mc command = $mc $mcflags -o $out $in rule muse command = muse $museflags -o $out $in rule probe command = sh ./scripts/probe.sh $var $cc $cflags $ldflags -o /dev/null -x c $in >$out.tmp && mv $out.tmp $out rule probesize command = sh ./scripts/probe-size.sh $var $cc $cflags -c -o /dev/null -x c $in >$out.tmp && mv $out.tmp $out # misc tools rule touch command = touch $out rule empty command = >$out rule copy command = ln -f $in $out rule cat command = cat $in >$out.tmp && mv $out.tmp $out rule mergeperms command = sort -k 2 -m $in >$out.tmp && mv $out.tmp $out rule gzip command = gzip -c -9 -n <$in >$out.tmp && mv $out.tmp $out rule yacc command = yacc $yaccflags $in rule sed command = sed $expr $in >$out.tmp && mv $out.tmp $out rule awk command = awk $expr $in >$out.tmp && mv $out.tmp $out rule grep command = grep $expr $in >$out.tmp && mv $out.tmp $out rule tic command = tic $ticflags $in rule waylandproto command = wayland-scanner $type <$in >$out.tmp && mv $out.tmp $out rule githash command = sh ./scripts/hash.sh $repo $args $in >$out.tmp && mv $out.tmp $out rule gittree command = sh ./scripts/tree.sh $repo $repo_tag $in $out restat = 1 rule gitcommit command = sh ./scripts/commit.sh $repo $repo_branch $repo_tag $out rule gitarchive command = git -C $repo archive -o $$PWD/$out $repo_tag rule gitinit command = git init $repo_flags $repo && touch $out rule fetchcurl command = sh ./scripts/fetch-curl.sh $dir && touch $out restat = 1 generator = 1 pool = console rule fetchgit command = sh ./scripts/fetch-git.sh $dir && touch $out restat = 1 generator = 1 pool = console rule fetchlocal command = sh ./$dir/fetch.sh $dir && touch $out restat = 1 generator = 1 pool = console