1
0
mirror of git://projects.qi-hardware.com/eda-tools.git synced 2024-11-23 18:59:41 +02:00
eda-tools/sch2fig/Makefile
2016-07-30 21:50:02 -03:00

76 lines
1.9 KiB
Makefile

#
# Makefile - build sch2fig
#
# Written 2016 by Werner Almesberger
# Copyright 2016 by Werner Almesberger
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
NAME = sch2fig
OBJS = main.o sch.o lib.o fig.o gfx.o dwg.o text.o misc.o
CFLAGS = -g -O -Wall -Wextra -Wno-unused-parameter -Wshadow
LIBS = -lm
include ../common/Makefile.c-common
.PHONY: test neo900 sch test diff view newref
all:: $(NAME)
$(NAME): $(OBJS)
$(CC) -o $(NAME) $(OBJS) $(LIBS)
#----- Test sheet -------------------------------------------------------------
sch:
eeschema test.sch
test: $(NAME)
./$(NAME) test.lib test.sch >out.fig
fig2dev -L png -m 2 out.fig _out.png
[ ! -r ref.png ] || \
compare -metric AE ref.png _out.png _diff.png || \
qiv -t -R -D _diff.png ref.png _out.png
testref:
./$(NAME) test.lib test.sch | fig2dev -L png -m 2 >ref.png
clean::
rm -f out.fig _out.png _diff.png
#----- Render Neo900 schematics -----------------------------------------------
NEO900_HW = ../../../n9/ee/hw
KICAD_LIBS = ../../kicad-libs/components
SHEET ?= 12
neo900: $(NAME)
./$(NAME) $(NEO900_HW)/neo900.lib \
$(KICAD_LIBS)/powered.lib \
$(NEO900_HW)/neo900_SS_$(SHEET).sch \
>out.fig
neo900.pdf: $(NAME) sch2pdf neo900-template.fig
./sch2pdf -o $@ -t neo900-template.fig \
$(NEO900_HW)/neo900.lib $(KICAD_LIBS)/powered.lib \
$(NEO900_HW)/neo900.sch
#----- Regression test based on Neo900 schematics -----------------------------
diff: $(NAME)
test/genpng test out
test/comp test || $(MAKE) view
view:
qiv -t -R -D `echo test/_diff*.png | \
sed 's/\([^ ]*\)_diff\([^ ]*\)/\1_diff\2 \1ref\2 \1out\2/g'`
newref:
test/genpng test ref