[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-core-devel
Subject: admin patch for mac os x
From: Benjamin Reed <ranger () befunk ! com>
Date: 2003-06-27 1:44:40
[Download RAW message or body]
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Here's another patch for the admin dir for OSX.
What it does:
- -------------
- - renames the funky OSX environ bit to an AH_VERBATIM
- - adds Sam Magnuson's --enable-mac bits for using Qt/Mac
~ (the code for the rest of KDE to handle that properly is still
~ being worked on)
- - adds LIB_XRENDER to the list of things $kde_use_qt_emb (and
~ $kde_use_qt_mac) nullifies since it can be found even if you
~ didn't want to link against it
- - adds a define for apple's nonstandard pam/pam_appl.h because
~ of conflicts with the osx "Security" framework on
~ case-insensitive filesystems (most mac systems)
- - adds a case to find the apple-provided JDK and link against
~ the JavaVM framework
Comments are welcome, the pam thing is a bit ugly, if you know of a
better way to handle it gracefully, I'm all ears. Other than that most
of this should be pretty straightforward.
- --
Benjamin Reed a.k.a. Ranger Rick -- http://ranger.befunk.com/
Standards are the industry's way of codifying obsolescence.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (Darwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQE++6GHUu+jZtP2Zf4RArnnAJ4kpV6JrqB6bGkg/HHSCEC1B23VDACeOsm5
kpc63B35gJUshf3zW9iGpaQ=
=mNCE
-----END PGP SIGNATURE-----
["admin-darwin.patch" (text/plain)]
Index: acinclude.m4.in
===================================================================
RCS file: /home/kde/kde-common/admin/acinclude.m4.in,v
retrieving revision 2.370
diff -u -r2.370 acinclude.m4.in
--- acinclude.m4.in 26 Jun 2003 07:55:24 -0000 2.370
+++ acinclude.m4.in 27 Jun 2003 01:37:20 -0000
@@ -720,10 +720,6 @@
AC_CHECK_FUNC(shmat, ,
AC_CHECK_LIB(ipc, shmat, X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc"))
- # darwin needs this to initialize the environment
- AC_CHECK_HEADERS(crt_externs.h)
- AC_CHECK_FUNC(_NSGetEnviron, [AC_DEFINE(HAVE_NSGETENVIRON, 1, [Define if your system needs \
_NSGetEnviron to set up the environment])])
-
# more headers that need to be explicitly included on darwin
AC_CHECK_HEADERS(sys/types.h stdint.h)
@@ -733,7 +729,7 @@
# CoreAudio framework
AC_CHECK_HEADER(CoreAudio/CoreAudio.h, [
AC_DEFINE(HAVE_COREAUDIO, 1, [Define if you have the CoreAudio API])
- FRAMEWORK_COREAUDIO="-framework CoreAudio"
+ FRAMEWORK_COREAUDIO="-Xlinker -framework -Xlinker CoreAudio"
])
AC_CHECK_RES_INIT
@@ -757,7 +753,20 @@
KDE_CHECK_TYPES
KDE_CHECK_LIBDL
KDE_CHECK_STRLCPY
-
+
+# darwin needs this to initialize the environment
+AC_CHECK_HEADERS(crt_externs.h)
+AC_CHECK_FUNC(_NSGetEnviron, [AC_DEFINE(HAVE_NSGETENVIRON, 1, [Define if your system needs \
_NSGetEnviron to set up the environment])]) +
+AH_VERBATIM(_DARWIN_ENVIRON,
+[
+#if defined(HAVE_NSGETENVIRON) && defined(HAVE_CRT_EXTERNS_H)
+# include <sys/time.h>
+# include <crt_externs.h>
+# define environ (*_NSGetEnviron())
+#endif
+])
+
AH_VERBATIM(_AIX_STRINGS_H_BZERO,
[
/*
@@ -821,7 +830,14 @@
kde_use_qt_emb_palm=no
)
-if test "$kde_use_qt_emb" = "no"; then
+AC_ARG_ENABLE(
+ mac,
+ [ --enable-mac link to Qt/Mac (don't use X)],
+ kde_use_qt_mac=$enableval,
+ kde_use_qt_mac=no
+)
+
+if test "$kde_use_qt_emb" = "no" && test "$kde_use_qt_mac" = "no"; then
AC_MSG_CHECKING(for X)
AC_LANG_SAVE
@@ -980,7 +996,7 @@
LIB_XEXT="-lXext"
QTE_NORTTI=""
-else
+elif test "$kde_use_qt_emb" = "yes"; then
dnl We're using QT Embedded
CPPFLAGS=-DQWS
CXXFLAGS="$CXXFLAGS -fno-rtti"
@@ -988,6 +1004,30 @@
X_PRE_LIBS=""
LIB_X11=""
LIB_XEXT=""
+ LIB_XRENDER=""
+ LIBSM=""
+ X_INCLUDES=""
+ X_LDFLAGS=""
+ x_includes=""
+ x_libraries=""
+ AC_SUBST(X_PRE_LIBS)
+ AC_SUBST(LIB_X11)
+ AC_SUBST(LIB_XEXT)
+ AC_SUBST(LIB_XRENDER)
+ AC_SUBST(LIBSM)
+ AC_SUBST(X_INCLUDES)
+ AC_SUBST(X_LDFLAGS)
+ AC_SUBST(x_includes)
+ AC_SUBST(x_libraries)
+elif test "$kde_use_qt_mac" = "yes"; then
+ dnl We're using QT/Mac (I use QT_MAC so that qglobal.h doesn't *have* to
+ dnl be included to get the information) --Sam
+ CXXFLAGS="$CXXFLAGS -DQT_MAC -no-cpp-precomp"
+ CFLAGS="$CFLAGS -DQT_MAC -no-cpp-precomp"
+ X_PRE_LIBS=""
+ LIB_X11=""
+ LIB_XEXT=""
+ LIB_XRENDER=""
LIBSM=""
X_INCLUDES=""
X_LDFLAGS=""
@@ -995,6 +1035,8 @@
x_libraries=""
AC_SUBST(X_PRE_LIBS)
AC_SUBST(LIB_X11)
+ AC_SUBST(LIB_XEXT)
+ AC_SUBST(LIB_XRENDER)
AC_SUBST(LIBSM)
AC_SUBST(X_INCLUDES)
AC_SUBST(X_LDFLAGS)
@@ -1161,7 +1203,7 @@
CXXFLAGS="$CXXFLAGS -I$qt_includes"
LDFLAGS="$LDFLAGS $X_LDFLAGS"
-if test "x$kde_use_qt_emb" != "xyes"; then
+if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then
LIBS="$LIBQT -lXext -lX11 $LIBSOCKET"
else
LIBS="$LIBQT $LIBSOCKET"
@@ -1328,7 +1370,7 @@
AC_MSG_CHECKING([for Qt])
-if test "x$kde_use_qt_emb" != "xyes"; then
+if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then
LIBQT="$LIBQT $X_PRE_LIBS -lXext -lX11 $LIBSM $LIBSOCKET"
fi
ac_qt_includes=NO ac_qt_libraries=NO ac_qt_bindir=NO
@@ -1392,6 +1434,12 @@
if test -n "`$try 2> /dev/null`"; then qt_libdir=$dir; break; else echo "tried $dir" \
>&AC_FD_CC ; fi done
fi
+for a in $qt_libdir/lib`echo ${kde_int_qt} | sed 's,^-l,,'`_incremental.*; do
+ if test -e "$a"; then
+ LIBQT="$LIBQT ${kde_int_qt}_incremental"
+ break
+ fi
+done
ac_qt_libraries="$qt_libdir"
@@ -1489,12 +1537,18 @@
KDE_CHECK_QT_JPEG
-if test "x$kde_use_qt_emb" != "xyes"; then
-LIB_QT="$kde_int_qt $LIBJPEG_QT "'$(LIBPNG) -lXext $(LIB_X11) $(LIBSM)'
+if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then
+LIB_QT="$kde_int_qt $LIBJPEG_QT "'$(LIBZ) $(LIBPNG) -lXext $(LIB_X11) $(LIBSM)'
else
-LIB_QT="$kde_int_qt $LIBJPEG_QT "'$(LIBPNG)'
+LIB_QT="$kde_int_qt $LIBJPEG_QT "'$(LIBZ) $(LIBPNG)'
fi
test -z "$KDE_MT_LIBS" || LIB_QT="$LIB_QT $KDE_MT_LIBS"
+for a in $qt_libdir/lib`echo ${kde_int_qt} | sed 's,^-l,,'`_incremental.*; do
+ if test -e "$a"; then
+ LIB_QT="$LIB_QT ${kde_int_qt}_incremental"
+ break
+ fi
+done
AC_SUBST(LIB_QT)
AC_SUBST(LIB_QPE)
@@ -2301,7 +2355,7 @@
[AC_MSG_CHECKING([for giflib])
AC_CACHE_VAL(ac_cv_lib_gif,
[ac_save_LIBS="$LIBS"
-if test "x$kde_use_qt_emb" != "xyes"; then
+if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then
LIBS="$all_libraries -lgif -lX11 $LIBSOCKET"
else
LIBS="$all_libraries -lgif"
@@ -2515,7 +2569,7 @@
AC_LANG_SAVE
AC_LANG_CPLUSPLUS
kde_save_LIBS="$LIBS"
-if test "x$kde_use_qt_emb" != "xyes"; then
+if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then
LIBS="$all_libraries $USER_LDFLAGS -l$1 $LIBJPEG $LIBZ -lX11 $LIBSOCKET -lm"
else
LIBS="$all_libraries $USER_LDFLAGS -l$1 $LIBJPEG $LIBZ -lm"
@@ -2574,7 +2628,7 @@
AC_CACHE_VAL(ac_cv_lib_png,
[
kde_save_LIBS="$LIBS"
-if test "x$kde_use_qt_emb" != "xyes"; then
+if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then
LIBS="$LIBS $all_libraries $USER_LDFLAGS -lpng $LIBZ -lm -lX11 $LIBSOCKET"
else
LIBS="$LIBS $all_libraries $USER_LDFLAGS -lpng $LIBZ -lm"
@@ -3349,7 +3403,7 @@
AC_LANG_C
ac_save_ldflags="$LDFLAGS"
ac_save_cflags="$CFLAGS"
- if test "x$kde_use_qt_emb" != "xyes"; then
+ if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then
LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS $LDFLAGS $XPM_LDFLAGS $all_libraries -lXpm \
-lX11 -lXext $LIBZ $LIBSOCKET" else
LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS $LDFLAGS $XPM_LDFLAGS $all_libraries -lXpm \
$LIBZ $LIBSOCKET" @@ -3405,7 +3459,7 @@
dnl 'yes' means DPMS_LIB="", '-lXdpms' means DPMS_LIB="-lXdpms".
AC_CACHE_VAL(ac_cv_have_dpms,
[
- if test "x$kde_use_qt_emb" = "xyes"; then
+ if test "x$kde_use_qt_emb" = "xyes" || test "x$kde_use_qt_mac" = "xyes"; then
AC_MSG_RESULT(no)
ac_cv_have_dpms="no"
else
@@ -3498,7 +3552,7 @@
ac_save_ldflags="$LDFLAGS"
ac_save_cxxflags="$CXXFLAGS"
LDFLAGS="$LDFLAGS $GL_LDFLAGS $X_LDFLAGS $all_libraries -lMesaGL -lMesaGLU"
- test "x$kde_use_qt_emb" != xyes && LDFLAGS="$LDFLAGS -lX11"
+ test "x$kde_use_qt_mac" != xyes && test "x$kde_use_qt_emb" != xyes && LDFLAGS="$LDFLAGS \
-lX11" LDFLAGS="$LDFLAGS $LIB_XEXT -lm $LIBSOCKET"
CXXFLAGS="$CFLAGS $X_INCLUDES"
test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS"
@@ -3508,7 +3562,7 @@
ac_cv_have_gl="mesa", ac_cv_have_gl="no")
if test "x$ac_cv_have_gl" = "xno"; then
LDFLAGS="$ac_save_ldflags $X_LDFLAGS $GL_LDFLAGS $all_libraries -lGLU -lGL"
- test "x$kde_use_qt_emb" != xyes && LDFLAGS="$LDFLAGS -lX11"
+ test "x$kde_use_qt_mac" != xyes && test "x$kde_use_qt_emb" != xyes && LDFLAGS="$LDFLAGS \
-lX11" LDFLAGS="$LDFLAGS $LIB_XEXT -lm $LIBSOCKET"
CXXFLAGS="$ac_save_cflags $X_INCLUDES"
test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS"
@@ -3579,7 +3633,15 @@
AC_CHECK_LIB(pam, pam_start,
[ AC_CHECK_HEADER(security/pam_appl.h,
[ use_pam=yes
- pam_service=kde ])
+ pam_header=security/pam_appl.h
+ pam_service=kde ],
+ [ AC_CHECK_HEADER(pam/pam_appl.h,
+ [ use_pam=yes
+ pam_header=pam/pam_appl.h
+ pam_service=kde
+ AC_DEFINE(HAVE_PAM_PAM_APPL_H, 1, [Define if your pam headers are in pam/ instead of \
security/]) + ])
+ ])
], , $LIBDL)
ac_cv_path_pam="use_pam=$use_pam pam_service=$pam_service"
])
@@ -3597,8 +3659,8 @@
dnl test whether struct pam_message is const (Linux) or not (Sun)
AC_MSG_CHECKING(for const pam_message)
- AC_EGREP_HEADER([struct pam_message], security/pam_appl.h,
- [ AC_EGREP_HEADER([const struct pam_message], security/pam_appl.h,
+ AC_EGREP_HEADER([struct pam_message], $pam_header,
+ [ AC_EGREP_HEADER([const struct pam_message], $pam_header,
[AC_MSG_RESULT([const: Linux-type PAM])],
[AC_MSG_RESULT([nonconst: Sun-type PAM])
AC_DEFINE(PAM_MESSAGE_NONCONST, 1, [Define if your PAM support takes \
non-const arguments (Solaris)])] @@ -4932,7 +4994,18 @@
AC_DEFINE_UNQUOTED(PATH_JAVA, "$kde_java_bindir/java", [Define where your java \
executable is]) AC_MSG_RESULT([java JRE in $kde_java_bindir])
fi
-else # no
+elif test -d "/Library/Java/Home"; then
+ kde_java_bindir="/Library/Java/Home/bin"
+ jni_includes="-I/Library/Java/Home/include"
+
+ JAVAC=$kde_java_bindir/javac
+ JAVAH=$kde_java_bindir/javah
+ JAR=$kde_java_bindir/jar
+ JVMLIBS="-Xlinker -framework -Xlinker JavaVM"
+
+ AC_DEFINE_UNQUOTED(PATH_JAVA, "$kde_java_bindir/java", [Define where your java executable \
is]) + AC_MSG_RESULT([Apple Java Framework])
+else
AC_MSG_RESULT([none found])
fi
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic