55 lines
1.4 KiB
Makefile
55 lines
1.4 KiB
Makefile
|
## Copyright 2021 Ian Jauslin
|
||
|
##
|
||
|
## Licensed under the Apache License, Version 2.0 (the "License");
|
||
|
## you may not use this file except in compliance with the License.
|
||
|
## You may obtain a copy of the License at
|
||
|
##
|
||
|
## http://www.apache.org/licenses/LICENSE-2.0
|
||
|
##
|
||
|
## Unless required by applicable law or agreed to in writing, software
|
||
|
## distributed under the License is distributed on an "AS IS" BASIS,
|
||
|
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
|
## See the License for the specific language governing permissions and
|
||
|
## limitations under the License.
|
||
|
|
||
|
PROJECTNAME=$(basename $(wildcard *.tex))
|
||
|
LIBS=$(notdir $(wildcard libs/*))
|
||
|
|
||
|
PDFS=$(addsuffix .pdf, $(PROJECTNAME))
|
||
|
SYNCTEXS=$(addsuffix .synctex.gz, $(PROJECTNAME))
|
||
|
|
||
|
all: $(PROJECTNAME)
|
||
|
|
||
|
$(PROJECTNAME): $(LIBS)
|
||
|
pdflatex -file-line-error $@.tex
|
||
|
pdflatex -file-line-error $@.tex
|
||
|
pdflatex -synctex=1 $@.tex
|
||
|
|
||
|
$(PROJECTNAME).aux: $(LIBS)
|
||
|
pdflatex -file-line-error -draftmode $(PROJECTNAME).tex
|
||
|
|
||
|
|
||
|
$(SYNCTEXS): $(LIBS)
|
||
|
pdflatex -synctex=1 $(patsubst %.synctex.gz, %.tex, $@)
|
||
|
|
||
|
|
||
|
libs: $(LIBS)
|
||
|
|
||
|
$(LIBS):
|
||
|
ln -fs libs/$@ ./
|
||
|
|
||
|
|
||
|
clean-aux:
|
||
|
rm -f $(addsuffix .aux, $(PROJECTNAME))
|
||
|
rm -f $(addsuffix .log, $(PROJECTNAME))
|
||
|
rm -f $(addsuffix .out, $(PROJECTNAME))
|
||
|
rm -f $(addsuffix .toc, $(PROJECTNAME))
|
||
|
|
||
|
clean-libs:
|
||
|
rm -f $(LIBS)
|
||
|
|
||
|
clean-tex:
|
||
|
rm -f $(PDFS) $(SYNCTEXS)
|
||
|
|
||
|
clean: clean-aux clean-tex clean-libs
|