4 # bsd.emacs.mk - 19990829 Shigeyuki Fukushima.
7 Emacs_Include= bsd.emacs.mk
8 Emacs_Include_MAINTAINER= ashish@FreeBSD.org
10 EMACS_PORT_NAME?= emacs24
13 # This file for ports which depend on emacs family.
14 # Define EMACS_PORT_NAME variable before bsd.port.[pre.]mk
15 # and it will automatically include this file.
17 # This file exports the following common variables:
20 # emacsen's command-line basename.
21 # ex.) "emacs" when emacsen is a emacs-20.6.
25 # ex.) "20.6" when emacsen is a emacs-20.6.
28 # emacsen's major version.
29 # ex.) "20" when emacsen is a emacs-20.6.
32 # emacsen's library directory name without ${PREFIX}.
33 # ex.) "share/emacs" when emacsen is a emacs-20.6.
35 # EMACS_LIBDIR_WITH_VER:
36 # emacsen's version specific library directory name
38 # ex.) "share/emacs/20.6" when emacsen is a emacs-20.6.
41 # emacsen's command-line filename. (full path)
42 # ex.) "/usr/local/bin/emacs-20.6" when emacsen is a
43 # emacs-20.6 and ${PREFIX} is "/usr/local".
46 # emacsen's site-lisp directory name without ${PREFIX}.
47 # ex.) "share/emacs/site-lisp" when emacsen is a emacs-20.6.
49 # EMACS_VERSION_SITE_LISPDIR:
50 # emacsen's version specific site-lisp directory name
52 # ex.) "share/emacs/20.6/site-lisp" when emacsen is a
55 # EMACS_NO_BUILD_DEPENDS:
56 # If set "YES" to this variable, port does not
57 # build-depend on EMACS_PORT_NAME's emacsen.
59 # EMACS_NO_RUN_DEPENDS:
60 # If set "YES" to this variable, port does not
61 # run-depend on EMACS_PORT_NAME's emacsen.
64 EMACS_MASTERDIR_PKGFILES?= NO
67 .if (${EMACS_PORT_NAME} == "emacs23")
71 EMACS_LIBDIR?= share/${EMACS_NAME}
72 EMACS_LIBDIR_WITH_VER?= share/${EMACS_NAME}/${EMACS_VER}
73 EMACS_PORTSDIR= ${PORTSDIR}/editors/emacs
76 EMACS_NO_SUBDIRSEL= NO
77 .if (${EMACS_MASTERDIR_PKGFILES} == "YES")
78 COMMENTFILE?= ${PKGDIR}/pkg-comment.${EMACS_PORT_NAME}
79 DESCR?= ${PKGDIR}/pkg-descr.${EMACS_PORT_NAME}
80 PLIST?= ${PKGDIR}/pkg-plist.${EMACS_PORT_NAME}
84 .elif (${EMACS_PORT_NAME} == "emacs24")
88 EMACS_LIBDIR?= share/${EMACS_NAME}
89 EMACS_LIBDIR_WITH_VER?= share/${EMACS_NAME}/${EMACS_VER}
90 EMACS_PORTSDIR= ${PORTSDIR}/editors/emacs
93 EMACS_NO_SUBDIRSEL= NO
94 .if (${EMACS_MASTERDIR_PKGFILES} == "YES")
95 COMMENTFILE?= ${PKGDIR}/pkg-comment.${EMACS_PORT_NAME}
96 DESCR?= ${PKGDIR}/pkg-descr.${EMACS_PORT_NAME}
97 PLIST?= ${PKGDIR}/pkg-plist.${EMACS_PORT_NAME}
100 # Emacs-24.x (development version)
101 .elif (${EMACS_PORT_NAME} == "emacs-devel")
105 EMACS_LIBDIR?= share/${EMACS_NAME}
106 EMACS_LIBDIR_WITH_VER?= share/${EMACS_NAME}/${EMACS_VER}
107 EMACS_PORTSDIR= ${PORTSDIR}/editors/emacs-devel
108 EMACS_COMMON_PORT= NO
110 EMACS_NO_SUBDIRSEL= NO
111 .if (${EMACS_MASTERDIR_PKGFILES} == "YES")
112 COMMENTFILE?= ${PKGDIR}/pkg-comment.${EMACS_PORT_NAME}
113 DESCR?= ${PKGDIR}/pkg-descr.${EMACS_PORT_NAME}
114 PLIST?= ${PKGDIR}/pkg-plist.${EMACS_PORT_NAME}
119 @${ECHO} "Makefile error: Bad value of EMACS_PORT_NAME: ${EMACS_PORT_NAME}."
120 @${ECHO} "Valid values are:"
121 @${ECHO} " Emacs family: emacs23 emacs24 emacs-devel"
130 # find where emacsen is installed
131 # look for it in PREFIX first and fall back to LOCALBASE then
132 .if exists(/bin/${EMACS_NAME}-${EMACS_VER})
133 EMACS_BASE?= ${PREFIX}
135 EMACS_BASE?= ${LOCALBASE}
137 # emacsen command-line filename
138 EMACS_CMD?= ${EMACS_BASE}/bin/${EMACS_NAME}-${EMACS_VER}
139 # emacsen core elisp filename
140 EMACS_CORE_DIR= ${EMACS_LIBDIR_WITH_VER}/lisp/${EMACS_CORE_SUBDIR}
141 EMACS_COREEL= ${EMACS_BASE}/${EMACS_CORE_DIR}/startup.el
142 # emacsen libdir without ${LOCALBASE}
143 EMACS_SITE_LISPDIR?= ${EMACS_LIBDIR}/site-lisp
144 EMACS_VERSION_SITE_LISPDIR?= ${EMACS_LIBDIR_WITH_VER}/site-lisp
146 # build&run-dependency
147 EMACS_NO_BUILD_DEPENDS?= NO
148 EMACS_NO_RUN_DEPENDS?= NO
149 .if (${EMACS_NO_BUILD_DEPENDS} == "NO")
150 BUILD_DEPENDS+= ${EMACS_CMD}:${EMACS_PORTSDIR}
152 .if (${EMACS_NO_RUN_DEPENDS} == "NO")
153 .if defined(EMACS_COMMON_PORT) && (${EMACS_COMMON_PORT} == "YES")
154 RUN_DEPENDS+= ${EMACS_COREEL}:${EMACS_PORTSDIR}-common
156 RUN_DEPENDS+= ${EMACS_CMD}:${EMACS_PORTSDIR}
160 # environments for build
161 MAKE_ARGS+= EMACS=${EMACS_CMD}
162 SCRIPTS_ENV+= EMACS_LIBDIR=${EMACS_LIBDIR} \
163 EMACS_VER=${EMACS_VER} \
164 EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
165 EMACS_SITE_LISPDIR=${EMACS_SITE_LISPDIR} \
166 EMACS_VERSION_SITE_LISPDIR=${EMACS_VERSION_SITE_LISPDIR}
167 # pkg/PLIST substrings
168 PLIST_SUB+= EMACS_LIBDIR=${EMACS_LIBDIR} \
169 EMACS_VER=${EMACS_VER} \
170 EMACS_LIBDIR_WITH_VER=${EMACS_LIBDIR_WITH_VER} \
171 EMACS_SITE_LISPDIR=${EMACS_SITE_LISPDIR} \
172 EMACS_VERSION_SITE_LISPDIR=${EMACS_VERSION_SITE_LISPDIR}