Skip to content

Commit f331a57

Browse files
committed
fix OpenCL build on Mac
1 parent 0c3c3ea commit f331a57

File tree

1 file changed

+34
-17
lines changed

1 file changed

+34
-17
lines changed

configure.ac

+34-17
Original file line numberDiff line numberDiff line change
@@ -168,9 +168,10 @@ if test "$enable_embedded" = "yes"; then
168168
fi
169169
170170
# check whether to build OpenMP support
171+
AM_CONDITIONAL(OPENMP, false)
171172
AC_OPENMP
172173
AS_IF([test "x$OPENMP_CFLAGS" != "x"],
173-
AM_CONDITIONAL([OPENMP], test "x$OPENMP_CFLAGS" != "x")
174+
AM_CONDITIONAL([OPENMP], true)
174175
AC_SUBST(AM_CPPFLAGS,"$OPENMP_CXXFLAGS")
175176
AC_DEFINE([OPENMP], [], [Defined when compiled with OpenMP support])
176177
)
@@ -188,10 +189,39 @@ have_opencl=false
188189
AC_CHECK_HEADERS(CL/cl.h, have_opencl=true, [
189190
AC_CHECK_HEADERS(OpenCL/cl.h, have_opencl=true, have_opencl=false)
190191
])
191-
have_opencl_lib=false
192-
AC_CHECK_LIB(OpenCL, clGetPlatformIDs, have_opencl_lib=true, have_opencl_lib=false)
192+
193193
have_tiff=false
194194
AC_CHECK_HEADERS(tiffio.h, have_tiff=true, have_tiff=false)
195+
196+
# https://lists.apple.com/archives/unix-porting/2009/Jan/msg00026.html
197+
m4_define([MY_CHECK_FRAMEWORK],
198+
[AC_CACHE_CHECK([if -framework $1 works],[my_cv_framework_$1],
199+
[save_LIBS="$LIBS"
200+
LIBS="$LIBS -framework $1"
201+
AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
202+
[my_cv_framework_$1=yes],
203+
[my_cv_framework_$1=no])
204+
LIBS="$save_LIBS"
205+
])
206+
if test "$my_cv_framework_$1"="yes"; then
207+
AC_DEFINE(AS_TR_CPP([HAVE_FRAMEWORK_$1]),1,
208+
[Define if you have the $1 framework])
209+
AS_TR_CPP([FRAMEWORK_$1])="-framework $1"
210+
AC_SUBST(AS_TR_CPP([FRAMEWORK_$1]))
211+
fi]
212+
)
213+
214+
have_opencl_lib=false
215+
if test $host_os != Darwin; then
216+
AC_CHECK_LIB(OpenCL, clGetPlatformIDs, have_opencl_lib=true, have_opencl_lib=false)
217+
else
218+
echo "checking for OpenCL framework"
219+
MY_CHECK_FRAMEWORK([OpenCL])
220+
if test $my_cv_framework_OpenCL = yes; then
221+
have_opencl_lib=true
222+
fi
223+
fi
224+
195225
if test "$enable_opencl" = "yes"; then
196226
if !($have_opencl); then
197227
AC_MSG_ERROR(Required OpenCL headers not found!)
@@ -264,19 +294,6 @@ if test -d $curwd/gnu/lib ; then
264294
LDFLAGS="$LDFLAGS -L$curwd/gnu/lib"
265295
fi
266296

267-
# Special cases
268-
case "$host" in
269-
*-darwin* | *-macos10*)
270-
if test -d /opt/local ; then
271-
CPPFLAGS="$CPPFLAGS -I/opt/local/include"
272-
LDFLAGS="$LDFLAGS -L/opt/local/lib"
273-
elif test -d /sw ; then
274-
CPPFLAGS="$CPPFLAGS -I/sw/include"
275-
LDFLAGS="$LDFLAGS -L/sw/lib"
276-
fi
277-
;;
278-
esac
279-
280297
# ----------------------------------------
281298
# Check Compiler Characteristics and
282299
# configure automake. The two appear to
@@ -393,7 +410,7 @@ AC_ARG_VAR(LIBLEPT_HEADERSDIR,[Leptonica headers directory])
393410

394411
have_lept=no
395412
if test "$LIBLEPT_HEADERSDIR" = "" ; then
396-
LIBLEPT_HEADERSDIR="/usr/local/include /usr/include"
413+
LIBLEPT_HEADERSDIR="/usr/local/include /usr/include /opt/local/include/leptonica"
397414
fi
398415
for incd in $LIBLEPT_HEADERSDIR
399416
do

0 commit comments

Comments
 (0)