summaryrefslogtreecommitdiff
path: root/graphics/freetype2
diff options
context:
space:
mode:
authorjlam <jlam@pkgsrc.org>2004-03-10 17:57:14 +0000
committerjlam <jlam@pkgsrc.org>2004-03-10 17:57:14 +0000
commitd0b4c54eb698e718080690cf98ab5b8bbb4001e0 (patch)
tree1226d07b8f66083168895189decc88848b70903f /graphics/freetype2
parent9d61fef8537aed11013bf556e319b2d8e398a11b (diff)
downloadpkgsrc-d0b4c54eb698e718080690cf98ab5b8bbb4001e0.tar.gz
Split out the code that deals with checking whether the software is
built-in or not into a separate builtin.mk file. The code to deal checking for built-in software is much simpler to deal with in pkgsrc. The buildlink3.mk file for a package will be of the usual format regardless of the package, which makes it simpler for packagers to update a package. The builtin.mk file for a package must define a single yes/no variable USE_BUILTIN.<pkg> that is used by bsd.buildlink3.mk to decide whether to use the built-in software or to use the pkgsrc software.
Diffstat (limited to 'graphics/freetype2')
-rw-r--r--graphics/freetype2/buildlink3.mk105
-rw-r--r--graphics/freetype2/builtin.mk66
2 files changed, 75 insertions, 96 deletions
diff --git a/graphics/freetype2/buildlink3.mk b/graphics/freetype2/buildlink3.mk
index 87a506b7c7a..9c2a3435a74 100644
--- a/graphics/freetype2/buildlink3.mk
+++ b/graphics/freetype2/buildlink3.mk
@@ -1,110 +1,23 @@
-# $NetBSD: buildlink3.mk,v 1.20 2004/02/29 00:22:43 recht Exp $
+# $NetBSD: buildlink3.mk,v 1.21 2004/03/10 17:57:14 jlam Exp $
BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH}+
FREETYPE2_BUILDLINK3_MK:= ${FREETYPE2_BUILDLINK3_MK}+
-.include "../../mk/bsd.prefs.mk"
-
-.if !empty(FREETYPE2_BUILDLINK3_MK:M+)
-BUILDLINK_PACKAGES+= freetype2
-BUILDLINK_DEPENDS.freetype2+= freetype2>=2.1.3
-BUILDLINK_PKGSRCDIR.freetype2?= ../../graphics/freetype2
-BUILDLINK_INCDIRS.freetype2?= include/freetype2
-.endif # FREETYPE2_BUILDLINK3_MK
-
-BUILDLINK_CHECK_BUILTIN.freetype2?= NO
-
-_FREETYPE2_FREETYPE_H= ${X11BASE}/include/freetype2/freetype/freetype.h
-_X11_TMPL= ${X11BASE}/lib/X11/config/X11.tmpl
-
-.if !defined(BUILDLINK_IS_BUILTIN.freetype2)
-BUILDLINK_IS_BUILTIN.freetype2= NO
-. if exists(${_FREETYPE2_FREETYPE_H}) && exists(${_X11_TMPL})
-_IS_BUILTIN.freetype2!= \
- if ${GREP} -q BuildFreetype2Library ${_X11_TMPL}; then \
- ${ECHO} "YES"; \
- else \
- ${ECHO} "NO"; \
- fi
-BUILDLINK_IS_BUILTIN.freetype2= ${_IS_BUILTIN.freetype2}
-. if !empty(BUILDLINK_CHECK_BUILTIN.freetype2:M[nN][oO]) && \
- !empty(_IS_BUILTIN.freetype2:M[yY][eE][sS])
-#
-# Create an appropriate package name for the built-in freetype2 distributed
-# with the system. This package name can be used to check against
-# BUILDLINK_DEPENDS.<pkg> to see if we need to install the pkgsrc version
-# or if the built-in one is sufficient.
-#
-_FREETYPE2_MAJOR!= \
- ${AWK} '/\#define[ ]*FREETYPE_MAJOR/ { print $$3 }' ${_FREETYPE2_FREETYPE_H}
-_FREETYPE2_MINOR!= \
- ${AWK} '/\#define[ ]*FREETYPE_MINOR/ { print "."$$3 }' ${_FREETYPE2_FREETYPE_H}
-_FREETYPE2_PATCH!= \
- ${AWK} 'BEGIN { patch=0; } /\#define[ ]*FREETYPE_PATCH/ { patch=$$3; } END { print "."patch; }' ${_FREETYPE2_FREETYPE_H}
-_FREETYPE2_VERSION= ${_FREETYPE2_MAJOR}${_FREETYPE2_MINOR}${_FREETYPE2_PATCH}
-_FREETYPE2_PKG= freetype2-${_FREETYPE2_VERSION}
-BUILDLINK_IS_BUILTIN.freetype2?= YES
-. for _depend_ in ${BUILDLINK_DEPENDS.freetype2}
-. if !empty(BUILDLINK_IS_BUILTIN.freetype2:M[yY][eE][sS])
-BUILDLINK_IS_BUILTIN.freetype2!= \
- if ${PKG_ADMIN} pmatch '${_depend_}' ${_FREETYPE2_PKG}; then \
- ${ECHO} "YES"; \
- else \
- ${ECHO} "NO"; \
- fi
-. endif
-. endfor
-. endif
-. endif
-MAKEFLAGS+= BUILDLINK_IS_BUILTIN.freetype2=${BUILDLINK_IS_BUILTIN.freetype2}
+.if !empty(BUILDLINK_DEPTH:M+)
+BUILDLINK_DEPENDS+= freetype2
.endif
-.if !empty(BUILDLINK_CHECK_BUILTIN.freetype2:M[yY][eE][sS])
-BUILDLINK_USE_BUILTIN.freetype2= YES
-.endif
-
-.if !defined(BUILDLINK_USE_BUILTIN.freetype2)
-. if !empty(BUILDLINK_IS_BUILTIN.freetype2:M[yY][eE][sS]I)
-BUILDLINK_USE_BUILTIN.freetype2= YES
-. else
-BUILDLINK_USE_BUILTIN.freetype2= NO
-. endif
-
-. if !empty(PREFER_NATIVE:M[yY][eE][sS]) && \
- !empty(BUILDLINK_IS_BUILTIN.freetype2:M[yY][eE][sS])
-BUILDLINK_USE_BUILTIN.freetype2= YES
-. endif
-. if !empty(PREFER_PKGSRC:M[yY][eE][sS])
-BUILDLINK_USE_BUILTIN.freetype2= NO
-. endif
-. if !empty(PREFER_NATIVE:Mfreetype2) && \
- !empty(BUILDLINK_IS_BUILTIN.freetype2:M[yY][eE][sS])
-BUILDLINK_USE_BUILTIN.freetype2= YES
-. endif
-. if !empty(PREFER_PKGSRC:Mfreetype2)
-BUILDLINK_USE_BUILTIN.freetype2= NO
-. endif
-.endif
-
-.if !empty(BUILDLINK_USE_BUILTIN.freetype2:M[nN][oO])
-#
-# If we depend on the package, depend on the latest version with a library
-# major number bump.
-#
-BUILDLINK_DEPENDS.freetype2+= freetype2>=2.1.3
-. if !empty(BUILDLINK_DEPTH:M+)
-BUILDLINK_DEPENDS+= freetype2
-. endif
-.endif
+BUILDLINK_PACKAGES:= ${BUILDLINK_PACKAGES:Nfreetype2}
+BUILDLINK_PACKAGES+= freetype2
.if !empty(FREETYPE2_BUILDLINK3_MK:M+)
-. if !empty(BUILDLINK_USE_BUILTIN.freetype2:M[yY][eE][sS])
-BUILDLINK_PREFIX.freetype2= ${X11BASE}
-USE_X11= yes
-. endif
+BUILDLINK_DEPENDS.freetype2+= freetype2>=2.1.0
+BUILDLINK_PKGSRCDIR.freetype2?= ../../graphics/freetype2
+BUILDLINK_INCDIRS.freetype2?= include/freetype2
FREETYPE_CONFIG?= ${BUILDLINK_PREFIX.freetype2}/bin/freetype-config
CONFIGURE_ENV+= FREETYPE_CONFIG="${FREETYPE_CONFIG}"
+
.endif # FREETYPE2_BUILDLINK3_MK
BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH:S/+$//}
diff --git a/graphics/freetype2/builtin.mk b/graphics/freetype2/builtin.mk
new file mode 100644
index 00000000000..10ab50c29ce
--- /dev/null
+++ b/graphics/freetype2/builtin.mk
@@ -0,0 +1,66 @@
+# $NetBSD: builtin.mk,v 1.1 2004/03/10 17:57:14 jlam Exp $
+
+_FREETYPE2_FREETYPE_H= ${X11BASE}/include/freetype2/freetype/freetype.h
+_X11_TMPL= ${X11BASE}/lib/X11/config/X11.tmpl
+
+.if !defined(IS_BUILTIN.freetype2)
+IS_BUILTIN.freetype2= no
+. if exists(${_FREETYPE2_FREETYPE_H}) && exists(${_X11_TMPL})
+IS_BUILTIN.freetype2!= \
+ if ${GREP} -q BuildFreetype2Library ${_X11_TMPL}; then \
+ ${ECHO} "yes"; \
+ else \
+ ${ECHO} "no"; \
+ fi
+. if !empty(IS_BUILTIN.freetype2:M[yY][eE][sS])
+#
+# Create an appropriate package name for the built-in freetype2 distributed
+# with the system. This package name can be used to check against
+# BUILDLINK_DEPENDS.<pkg> to see if we need to install the pkgsrc version
+# or if the built-in one is sufficient.
+#
+_FREETYPE2_MAJOR!= \
+ ${AWK} '/\#define[ ]*FREETYPE_MAJOR/ { print $$3 }' ${_FREETYPE2_FREETYPE_H}
+_FREETYPE2_MINOR!= \
+ ${AWK} '/\#define[ ]*FREETYPE_MINOR/ { print "."$$3 }' ${_FREETYPE2_FREETYPE_H}
+_FREETYPE2_PATCH!= \
+ ${AWK} 'BEGIN { patch=0; } /\#define[ ]*FREETYPE_PATCH/ { patch=$$3; } END { print "."patch; }' ${_FREETYPE2_FREETYPE_H}
+_FREETYPE2_VERSION= ${_FREETYPE2_MAJOR}${_FREETYPE2_MINOR}${_FREETYPE2_PATCH}
+BUILTIN_PKG.freetype2= freetype2-${_FREETYPE2_VERSION}
+MAKEFLAGS+= BUILTIN_PKG.freetype2=${BUILTIN_PKG.freetype2}
+. endif
+. endif
+MAKEFLAGS+= IS_BUILTIN.freetype2=${IS_BUILTIN.freetype2}
+.endif
+
+CHECK_BUILTIN.freetype2?= no
+.if !empty(CHECK_BUILTIN.freetype2:M[yY][eE][sS])
+USE_BUILTIN.freetype2= yes
+.endif
+
+.if !defined(USE_BUILTIN.freetype2)
+USE_BUILTIN.freetype2?= ${IS_BUILTIN.freetype2}
+
+. if defined(BUILTIN_PKG.freetype2)
+USE_BUILTIN.freetype2= yes
+. for _depend_ in ${BUILDLINK_DEPENDS.freetype2}
+. if !empty(USE_BUILTIN.freetype2:M[yY][eE][sS])
+USE_BUILTIN.freetype2!= \
+ if ${PKG_ADMIN} pmatch '${_depend_}' ${BUILTIN_PKG.freetype2}; then \
+ ${ECHO} "yes"; \
+ else \
+ ${ECHO} "no"; \
+ fi
+. endif
+. endfor
+. endif
+.endif # USE_BUILTIN.freetype2
+
+.if !empty(USE_BUILTIN.freetype2:M[nN][oO])
+BUILDLINK_DEPENDS.freetype2+= freetype2>=2.1.3
+.endif
+
+.if !empty(USE_BUILTIN.freetype2:M[yY][eE][sS])
+BUILDLINK_PREFIX.freetype2= ${X11BASE}
+USE_X11= yes
+.endif