Fix sign errors, make JMK2 show relative paths
diff --git a/share/jmk/jmk.m4 b/share/jmk/jmk.m4
index aa3ad79..ee4fef7 100644
--- a/share/jmk/jmk.m4
+++ b/share/jmk/jmk.m4
@@ -45,7 +45,7 @@
$1, `debug', `CFLAGS += -g
ASMFLAGS += -Fdwarf',
$1, `32', `CFLAGS += -m32',
- $1, `warn', `CFLAGS += -Wall -Wextra -Wno-unused-function -Wno-unused-variable -Wno-incompatible-pointer-types',
+ $1, `warn', `CFLAGS += -Wall -Wextra -Wno-unused-function -Wno-unused-variable -Wno-incompatible-pointer-types -Wno-unused-parameter',
$1, `nasm', `ASM = nasm',
$1, `glossaries', `LATEX_MAKE_GLOSSARIES = 1',
$1, xelatex, `LATEXC = xelatex')')
diff --git a/share/jmk/jmk.tcl b/share/jmk/jmk.tcl
index 13f3fca..2c949f4 100644
--- a/share/jmk/jmk.tcl
+++ b/share/jmk/jmk.tcl
@@ -145,6 +145,8 @@
variable obj [regsub -- {(.+)\.\w+} $src {\1.o}]
set ::objs "$::objs $obj"
+ set relpath [exec sh -c "realpath --relative-to '$::jmk_makefile_dir' '$src'"]
+
if {[string match *.c $src]} {
variable cc $::cc
if {[string match *distcc* $cc]} {
@@ -157,9 +159,14 @@
rule $obj $src {}
}
- log CC $src
+ log CC $relpath
cc "-c $::first_src -o $::target"
puts ""
+ } elseif {[string match *.s $src]} {
+ log ASM $relpath
+ rule $obj $src {
+ asm "$::asmflags $::first_src -o $::target"
+ }
}
}
}
@@ -214,11 +221,6 @@
# cc "-c $::first_src -o $::target"
# }
- rule .s.o {} {
- log ASM $::first_src
- asm "$::asmflags $::first_src -o $::target"
- }
-
rule clean {} {
shell "rm -f **/*.o **/*.a *.so $::jmk_target $::objs"
@@ -243,7 +245,7 @@
}
proc warn {} {
- cflags -Wall -Wno-unused-function -Wno-unused-variable -Wno-incompatible-pointer-types -Wno-sign-compare
+ cflags -Wall
}
proc 32 {} {