Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

This Makefile fragment is meant to be included by packages that

require a libjpeg implementation.  jpeg.buildlink3.mk will:

      * set JPEGBASE to the base directory of the libjpeg files;
      * set JPEG_TYPE to the libjpeg implementation used.

There are three variables that can be used to tweak the selection of
the libjpeg implementation:

JPEG_DEFAULT is a user-settable variable whose value is the default
      libjpeg implementation to use.

JPEG_ACCEPTED is a package-settable list of libjpeg implementations
      that may be used by the package.

This .mk is broadly based on fam.buildlink3.mk,v 1.7, and
currently supports selection between the default "graphics/jpeg"
and the alternative "graphics/libjpeg-turbo".
  • Loading branch information...
commit ca43e60024ff7c4949a413abe5dcf32d584cfe4e 1 parent 2d060cb
dsainty authored
Showing with 58 additions and 0 deletions.
  1. +58 −0 mk/jpeg.buildlink3.mk
View
58 mk/jpeg.buildlink3.mk
@@ -0,0 +1,58 @@
+# $NetBSD: jpeg.buildlink3.mk,v 1.1 2010/12/19 11:22:59 dsainty Exp $
+#
+# This Makefile fragment is meant to be included by packages that
+# require a libjpeg implementation. jpeg.buildlink3.mk will:
+#
+# * set JPEGBASE to the base directory of the libjpeg files;
+# * set JPEG_TYPE to the libjpeg implementation used.
+#
+# There are three variables that can be used to tweak the selection of
+# the libjpeg implementation:
+#
+# JPEG_DEFAULT is a user-settable variable whose value is the default
+# libjpeg implementation to use.
+#
+# JPEG_ACCEPTED is a package-settable list of libjpeg implementations
+# that may be used by the package.
+#
+
+MK_JPEG_BUILDLINK3_MK:= ${MK_JPEG_BUILDLINK3_MK}+
+
+.include "bsd.fast.prefs.mk"
+
+.if !empty(MK_JPEG_BUILDLINK3_MK:M+)
+
+# This is an exhaustive list of all of the libjpeg implementations
+# that may be used with jpeg.buildlink3.mk, in order of precedence.
+#
+_JPEG_PKGS?= jpeg libjpeg-turbo
+
+JPEG_DEFAULT?= jpeg
+JPEG_ACCEPTED?= ${_JPEG_PKGS}
+
+_JPEG_DEFAULT= ${JPEG_DEFAULT}
+_JPEG_ACCEPTED= ${JPEG_ACCEPTED}
+
+_JPEG_TYPE?= ${_JPEG_DEFAULT}
+
+. if !empty(_JPEG_ACCEPTED:M${_JPEG_TYPE})
+JPEG_TYPE= ${_JPEG_TYPE}
+. else
+JPEG_TYPE= none
+. endif
+
+BUILD_DEFS+= JPEG_DEFAULT
+BUILD_DEFS_EFFECTS+= JPEGBASE JPEG_TYPE
+
+.if ${JPEG_TYPE} == "none"
+PKG_FAIL_REASON= \
+ "${_JPEG_TYPE} is not an acceptable libjpeg type for ${PKGNAME}."
+.elif ${JPEG_TYPE} == "jpeg"
+. include "../../graphics/jpeg/buildlink3.mk"
+.elif ${JPEG_TYPE} == "libjpeg-turbo"
+. include "../../graphics/libjpeg-turbo/buildlink3.mk"
+.endif
+
+JPEGBASE= ${BUILDLINK_PREFIX.${JPEG_TYPE}}
+
+.endif # MK_JPEG_BUILDLINK3_MK
Please sign in to comment.
Something went wrong with that request. Please try again.