projects
/
makefiles.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
40d34f0
)
.dファイル作成時に遅延変数が正しく評価されない問題を修正
author
j8takagi
<j8takagi@nifty.com>
Thu, 5 Dec 2013 02:49:02 +0000
(11:49 +0900)
committer
j8takagi
<j8takagi@nifty.com>
Thu, 5 Dec 2013 02:49:50 +0000
(11:49 +0900)
latex_mk/latex.mk
patch
|
blob
|
history
diff --git
a/latex_mk/latex.mk
b/latex_mk/latex.mk
index
f157113
..
b8c069a
100644
(file)
--- a/
latex_mk/latex.mk
+++ b/
latex_mk/latex.mk
@@
-80,10
+80,10
@@
LATEXINTEXT := .bbl .glo .idx .ind .lof .lot .out .toc
# .blg: BiBTeXログ
LOGEXT := .log .ilg .blg
# .blg: BiBTeXログ
LOGEXT := .log .ilg .blg
-ALLINTE
RFILES = $(addprefix *,.aux $(LATEXINTEXT) $(LOGEXT) .fls .d .*_prev)
+ALLINTE
XT := .aux .dvi $(LATEXINTEXT) $(LOGEXT) .fls .d .*_prev
# make完了後、中間ファイルを残す
# make完了後、中間ファイルを残す
-.SECONDARY: $(
wildcard ALLINTERFILES
)
+.SECONDARY: $(
foreach t,$(TEXTARGETS),$(addprefix $(basename $t),$(ALLINTEXT))
)
# ファイル名から拡張子を除いた部分
BASE = $(basename $<)
# ファイル名から拡張子を除いた部分
BASE = $(basename $<)
@@
-110,14
+110,14
@@
OUTFILESre = $(eval OUTPUTFILES := \
# $(BASE).texで読み込まれる中間ファイルを$(BASE).flsから取得する
# .idxは、.indへ置換
# $(BASE).texで読み込まれる中間ファイルを$(BASE).flsから取得する
# .idxは、.indへ置換
-LATEXINT
ER
FILES = \
+LATEXINTFILES = \
$(sort $(subst .idx,.ind, \
$(filter $(addprefix $(BASE),$(LATEXINTEXT)),$(INPUTFILES) $(OUTPUTFILES)) \
))
$(sort $(subst .idx,.ind, \
$(filter $(addprefix $(BASE),$(LATEXINTEXT)),$(INPUTFILES) $(OUTPUTFILES)) \
))
-LATEXINT
ERFILES_PREV = $(addsuffix _prev,$(LATEXINTER
FILES))
+LATEXINT
FILES_PREV = $(addsuffix _prev,$(LATEXINT
FILES))
-# TeXファイル - .tex
+#
分割され、\includeや\inputで読み込まれる
TeXファイル - .tex
TEXFILES = $(filter %.tex,$(INPUTFILES))
# 対応する画像ファイルの拡張子
TEXFILES = $(filter %.tex,$(INPUTFILES))
# 対応する画像ファイルの拡張子
@@
-139,8
+139,7
@@
GRAPHICFILESre = $(eval GRAPHICFILES := \
))
# そのほかの読み込みファイル
))
# そのほかの読み込みファイル
-OTHERFILES = \
- $(sort $(filter-out %.aux $(LATEXINTERFILES) $(TEXFILES) $(GRAPHICFILES),$(INPUTFILES)))
+OTHERFILES = $(sort $(filter-out %.aux $(LATEXINTFILES) $(TEXFILES) $(GRAPHICFILES),$(INPUTFILES)))
# \bibliography命令で読み込まれる文献データベースファイルをTeXファイルから検索する
BIBDB = $(BIBDBre)
# \bibliography命令で読み込まれる文献データベースファイルをTeXファイルから検索する
BIBDB = $(BIBDBre)
@@
-182,7
+181,7
@@
COMPILE.dvi = \
($(SED) -n -e '/^Output written on toc_hyperref.dvi/,$$p' $(BASE).log; exit 1)
# ターゲットファイルと必須ファイルを比較し、内容が異なる場合はターゲットファイルの内容を必須ファイルに置き換える
($(SED) -n -e '/^Output written on toc_hyperref.dvi/,$$p' $(BASE).log; exit 1)
# ターゲットファイルと必須ファイルを比較し、内容が異なる場合はターゲットファイルの内容を必須ファイルに置き換える
-CMPPREV = $(CMP) $@ $< || $(CP) -p -v $< $@
+CMPPREV = $(CMP) $@ $<
&& $(ECHO) '$@ is up to date.'
|| $(CP) -p -v $< $@
######################################################################
# .dファイルの生成と読み込み
######################################################################
# .dファイルの生成と読み込み
@@
-205,20
+204,26
@@
GENERETE.fls = \
# 依存関係を.dファイルに書き出す
%.d: %.fls
# 依存関係を.dファイルに書き出す
%.d: %.fls
+ # 変数の展開
+ @$(ECHO) "extract LATEXINTFILES:$(LATEXINTFILES) TEXFILES:$(TEXFILES) GRAPHICFILES:$(GRAPHICFILES) BIBDB:$(BIBDB)"
# .dファイルの依存関係
@$(ECHO) '$(BASE).d: $(BASE).tex $(BASE).fls' >$@
# .dファイルの依存関係
@$(ECHO) '$(BASE).d: $(BASE).tex $(BASE).fls' >$@
+ # 中間ファイルの依存関係
+ $(if $(sort $(LATEXINTFILES) $(BIBDB)),@( \
+ $(ECHO); \
+ $(ECHO) '# LaTeX Intermediate Files'; \
+ $(ECHO) '$(BASE).dvi:: $(sort $(LATEXINTFILES_PREV) $(if $(BIBDB),$(BASE).bbl_prev))'; \
+ $(ECHO) ' @$$(COMPILE.tex)'; \
+ $(ECHO); \
+ $(ECHO) '$(BASE).dvi:: $(BASE).aux'; \
+ $(ECHO) ' @$$(COMPILES.tex)'; \
+ ) >>$@)
# \includeまたは\input命令で読み込まれるTeXファイルの依存関係
$(if $(TEXFILES),@( \
$(ECHO); \
$(ECHO) '# Files called from \include or \input - .tex'; \
$(ECHO) '$(BASE).aux: $(TEXFILES)'; \
) >>$@)
# \includeまたは\input命令で読み込まれるTeXファイルの依存関係
$(if $(TEXFILES),@( \
$(ECHO); \
$(ECHO) '# Files called from \include or \input - .tex'; \
$(ECHO) '$(BASE).aux: $(TEXFILES)'; \
) >>$@)
- # そのほかのファイル(TEXMFROOT以外にあるスタイルファイルなど)の依存関係
- $(if $(OTHERFILES),@( \
- $(ECHO); \
- $(ECHO) '# Other files'; \
- $(ECHO) '$(BASE).aux: $(OTHERFILES)'; \
- ) >>$@)
# 画像ファイルの依存関係
$(if $(GRAPHICFILES),@( \
$(ECHO); \
# 画像ファイルの依存関係
$(if $(GRAPHICFILES),@( \
$(ECHO); \
@@
-236,15
+241,11
@@
GENERETE.fls = \
$(ECHO) '# Bibliography files: .aux, BIBDB -> .bbl -> .div'; \
$(ECHO) '$(BASE).bbl: $(BIBDB) $(BASE).tex'; \
) >>$@)
$(ECHO) '# Bibliography files: .aux, BIBDB -> .bbl -> .div'; \
$(ECHO) '$(BASE).bbl: $(BIBDB) $(BASE).tex'; \
) >>$@)
- # 中間ファイルの依存関係
- $(if $(sort $(LATEXINTERFILES) $(BIBDB)),@( \
- $(ECHO); \
- $(ECHO) '# LaTeX Intermediate Files'; \
- $(ECHO) '$(BASE).dvi:: $(sort $(LATEXINTERFILES_PREV) $(if $(BIBDB),$(BASE).bbl_prev))'; \
- $(ECHO) ' @$$(COMPILE.tex)'; \
+ # そのほかのファイル(TEXMFROOT以外にあるスタイルファイルなど)の依存関係
+ $(if $(OTHERFILES),@( \
$(ECHO); \
$(ECHO); \
- $(ECHO) '
$(BASE).dvi:: $(BASE).aux
'; \
- $(ECHO) '
@$$(COMPILES.tex
)'; \
+ $(ECHO) '
# Other files
'; \
+ $(ECHO) '
$(BASE).aux: $(OTHERFILES
)'; \
) >>$@)
@$(ECHO) '$@ is generated by scanning $(BASE).tex and $(BASE).fls.'
) >>$@)
@$(ECHO) '$@ is generated by scanning $(BASE).tex and $(BASE).fls.'
@@
-387,7
+388,7
@@
tex-xbb:
# 中間ファイルの削除
tex-clean:
# 中間ファイルの削除
tex-clean:
- $(RM) $(
ALLINTERFILES
)
+ $(RM) $(
addprefix *,$(ALLINTEXT)
)
$(RM) -r $(FLSDIR)
ifeq (,$(filter %.dvi,$(TEXTARGETS)))
$(RM) *.dvi
$(RM) -r $(FLSDIR)
ifeq (,$(filter %.dvi,$(TEXTARGETS)))
$(RM) *.dvi