瀏覽代碼

Makefile: fix a bug with ORG_ADD_CONTRIB

* lisp/Makefile: The added files from contrib need to be known before
  LISPF is constructed.  Also, make all variables simply defined to
  avoid recursive evaluation.
Achim Gratz 12 年之前
父節點
當前提交
ca5d5e9c9b
共有 1 個文件被更改,包括 19 次插入13 次删除
  1. 19 13
      lisp/Makefile

+ 19 - 13
lisp/Makefile

@@ -4,13 +4,23 @@ ifeq ($(MAKELEVEL), 0)
   $(error This make needs to be started as a sub-make from the toplevel directory.)
   $(error This make needs to be started as a sub-make from the toplevel directory.)
 endif
 endif
 
 
-LISPV = org-version.el
-LISPI = org-loaddefs.el
-LISPA = $(LISPV) $(LISPI)
-LISPB = $(LISPA:%el=%elc) org-install.elc
-LISPF = $(filter-out $(LISPA),$(sort $(wildcard *.el)))
-LISPC = $(filter-out $(LISPB) $(LISPN:%el=%elc),$(LISPF:%el=%elc))
-_ORGCM_ = dirall single source slint1 slint2
+ifneq ($(ORG_ADD_CONTRIB),)
+  _ORG_ADD_EL_ := \
+	$(notdir \
+	$(wildcard \
+	$(addsuffix .el, \
+	$(addprefix ../contrib/lisp/, \
+	$(basename \
+	$(notdir $(ORG_ADD_CONTRIB)))))))
+endif
+
+LISPV 	:= org-version.el
+LISPI 	:= org-loaddefs.el
+LISPA 	:= $(LISPV) $(LISPI)
+LISPB 	:= $(LISPA:%el=%elc) org-install.elc
+LISPF 	:= $(filter-out $(LISPA),$(sort $(wildcard *.el) $(_ORG_ADD_EL_)))
+LISPC 	:= $(filter-out $(LISPB) $(LISPN:%el=%elc),$(LISPF:%el=%elc))
+_ORGCM_ := dirall single source slint1 slint2
 -include local.mk
 -include local.mk
 
 
 .PHONY:	all compile compile-dirty \
 .PHONY:	all compile compile-dirty \
@@ -51,11 +61,7 @@ slint1:
 
 
 addcontrib:
 addcontrib:
 ifneq ($(ORG_ADD_CONTRIB),)
 ifneq ($(ORG_ADD_CONTRIB),)
-	$(CP) $(wildcard \
-		$(addsuffix .el, \
-		$(addprefix ../contrib/lisp/, \
-		$(basename \
-		$(notdir $(ORG_ADD_CONTRIB)))))) .
+	$(CP) $(addprefix ../contrib/lisp/,$(_ORG_ADD_EL_)) .
 endif
 endif
 
 
 autoloads:	cleanauto addcontrib $(LISPI) $(LISPV)
 autoloads:	cleanauto addcontrib $(LISPI) $(LISPV)
@@ -70,7 +76,7 @@ $(LISPI):	$(LISPV) $(LISPF)
 	@$(RM) $(@)
 	@$(RM) $(@)
 	@$(MAKE_ORG_INSTALL)
 	@$(MAKE_ORG_INSTALL)
 
 
-install:	$(LISPF) compile
+install:	 compile $(LISPF)
 	if [ ! -d $(DESTDIR)$(lispdir) ] ; then \
 	if [ ! -d $(DESTDIR)$(lispdir) ] ; then \
 	  $(MKDIR) $(DESTDIR)$(lispdir) ; \
 	  $(MKDIR) $(DESTDIR)$(lispdir) ; \
 	fi ;
 	fi ;