patch 9.1.1561: configure: wayland test can be improved
Commit:
https://github.com/vim/vim/commit/138381bde006e035fb42b52e714b4c6b3760a406
Author: Christoffer Aasted <[email protected]>
Date: Thu Jul 17 21:11:06 2025 +0200
patch 9.1.1561: configure: wayland test can be improved
Problem: configure: wayland test can be improved
Solution: Define $WAYLAND_CFLAGS, simplify the wayland tests
(Christoffer Aasted).
closes: #17772
Signed-off-by: Christoffer Aasted <[email protected]>
Signed-off-by: Christian Brabandt <[email protected]>
diff --git a/src/Makefile b/src/Makefile
index 0cf9f8836..175f659d6 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -3646,19 +3646,19 @@ objects/window.o: window.c
$(CCC) -o $@ window.c
objects/wayland.o: wayland.c
- $(CCC) -o $@ wayland.c
+ $(CCC) $(WAYLAND_CFLAGS) -o $@ wayland.c
objects/wlr-data-control-unstable-v1.o:
auto/wayland/wlr-data-control-unstable-v1.c
- $(CCC) -o $@ auto/wayland/wlr-data-control-unstable-v1.c
+ $(CCC) $(WAYLAND_CFLAGS) -o $@
auto/wayland/wlr-data-control-unstable-v1.c
objects/ext-data-control-v1.o: auto/wayland/ext-data-control-v1.c
- $(CCC) -o $@ auto/wayland/ext-data-control-v1.c
+ $(CCC) $(WAYLAND_CFLAGS) -o $@ auto/wayland/ext-data-control-v1.c
objects/xdg-shell.o: auto/wayland/xdg-shell.c
- $(CCC) -o $@ auto/wayland/xdg-shell.c
+ $(CCC) $(WAYLAND_CFLAGS) -o $@ auto/wayland/xdg-shell.c
objects/primary-selection-unstable-v1.o:
auto/wayland/primary-selection-unstable-v1.c
- $(CCC) -o $@ auto/wayland/primary-selection-unstable-v1.c
+ $(CCC) $(WAYLAND_CFLAGS) -o $@
auto/wayland/primary-selection-unstable-v1.c
objects/netbeans.o: netbeans.c
$(CCC) -o $@ netbeans.c
diff --git a/src/auto/configure b/src/auto/configure
index a4123a3fd..d01f38c71 100755
--- a/src/auto/configure
+++ b/src/auto/configure
@@ -678,6 +678,7 @@ xmkmfpath
WAYLAND_OBJ
WAYLAND_SRC
WAYLAND_LIBS
+WAYLAND_CFLAGS
TERM_TEST
TERM_OBJ
TERM_SRC
@@ -9213,120 +9214,49 @@ printf %s "checking --with-wayland argument... " >&6; }
# Check whether --with-wayland was given.
if test ${with_wayland+y}
then :
- withval=$with_wayland;
-fi
-
-
-test -z "$with_wayland" && with_wayland=yes
-if test "$with_wayland" = yes; then
- { printf "%s
" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-printf "%s
" "yes" >&6; }
- { printf "%s
" "$as_me:${as_lineno-$LINENO}: checking if Wayland client header files can be
found" >&5
-printf %s "checking if Wayland client header files can be found... " >&6; }
- cppflags_save=$CPPFLAGS
- CPPFLAGS="$CPPFLAGS $X_CFLAGS"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <wayland-client.h>
-int
-main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"
-then :
- { printf "%s
" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-printf "%s
" "yes" >&6; }
+ withval=$with_wayland; with_wayland=$withval
else case e in #(
- e) { printf "%s
" "$as_me:${as_lineno-$LINENO}: result: no" >&5
-printf "%s
" "no" >&6; }; no_wl=yes ;;
+ e) with_wayland=yes ;;
esac
fi
-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
- CPPFLAGS=$cppflags_save
- if test "$no_wl" = yes; then
- with_wayland=no
- else
- { printf "%s
" "$as_me:${as_lineno-$LINENO}: checking for wl_display_connect in
-lwayland-client" >&5
-printf %s "checking for wl_display_connect in -lwayland-client... " >&6; }
-if test ${ac_cv_lib_wayland_client_wl_display_connect+y}
-then :
- printf %s "(cached) " >&6
-else case e in #(
- e) ac_check_lib_save_LIBS=$LIBS
-LIBS="-lwayland-client $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
+{ printf "%s
" "$as_me:${as_lineno-$LINENO}: result: $with_wayland" >&5
+printf "%s
" "$with_wayland" >&6; }
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply.
- The 'extern "C"' is for builds by C++ compilers;
- although this is not generally supported in C code supporting it here
- has little cost and some practical benefit (sr 110532). */
-#ifdef __cplusplus
-extern "C"
-#endif
-char wl_display_connect (void);
-int
-main (void)
-{
-return wl_display_connect ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"
-then :
- ac_cv_lib_wayland_client_wl_display_connect=yes
-else case e in #(
- e) ac_cv_lib_wayland_client_wl_display_connect=no ;;
-esac
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.beam \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS ;;
-esac
-fi
-{ printf "%s
" "$as_me:${as_lineno-$LINENO}: result:
$ac_cv_lib_wayland_client_wl_display_connect" >&5
-printf "%s
" "$ac_cv_lib_wayland_client_wl_display_connect" >&6; }
-if test "x$ac_cv_lib_wayland_client_wl_display_connect" = xyes
-then :
- no_wl=no
-fi
-
-
- if test "$no_wl" = no; then
- printf "%s
" "#define HAVE_WAYLAND 1" >>confdefs.h
+if test "$with_wayland" = yes; then
+cflags_save=$CFLAGS
+ { printf "%s
" "$as_me:${as_lineno-$LINENO}: checking for wayland" >&5
+printf %s "checking for wayland... " >&6; }
+ if "$PKG_CONFIG" --exists 'wayland-client'; then
+ { printf "%s
" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s
" "yes" >&6; }
+ printf "%s
" "#define HAVE_WAYLAND 1" >>confdefs.h
- WAYLAND_LIBS="-lwayland-client";
+ WAYLAND_CFLAGS=`$PKG_CONFIG --cflags wayland-client`
+ CFLAGS="$CFLAGS $WAYLAND_CFLAGS"
+ WAYLAND_LIBS=`$PKG_CONFIG --libs wayland-client`
+ WAYLAND_SRC=" \
+ auto/wayland/wlr-data-control-unstable-v1.c \
+ auto/wayland/ext-data-control-v1.c \
+ auto/wayland/xdg-shell.c \
+ auto/wayland/primary-selection-unstable-v1.c \
+ wayland.c"
+ WAYLAND_OBJ=" \
+ objects/wlr-data-control-unstable-v1.o \
+ objects/ext-data-control-v1.o \
+ objects/xdg-shell.o \
+ objects/primary-selection-unstable-v1.o \
+ objects/wayland.o"
- WAYLAND_SRC=" \
- auto/wayland/wlr-data-control-unstable-v1.c \
- auto/wayland/ext-data-control-v1.c \
- auto/wayland/xdg-shell.c \
- auto/wayland/primary-selection-unstable-v1.c \
- wayland.c"
- WAYLAND_OBJ=" \
- objects/wlr-data-control-unstable-v1.o \
- objects/ext-data-control-v1.o \
- objects/xdg-shell.o \
- objects/primary-selection-unstable-v1.o \
- objects/wayland.o"
- else
- with_wayland=no
- fi
- fi
-else
- { printf "%s
" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+ else
+ { printf "%s
" "$as_me:${as_lineno-$LINENO}: result: no" >&5
printf "%s
" "no" >&6; }
+ with_wayland=no
+ fi
+CFLAGS=$cflags_save
fi
test -z "$with_x" && with_x=yes
diff --git a/src/config.mk.in b/src/config.mk.in
index f893e8f0b..78b207ef7 100644
--- a/src/config.mk.in
+++ b/src/config.mk.in
@@ -40,6 +40,7 @@ X_LIBS = @X_LIB@
WAYLAND_LIBS = @WAYLAND_LIBS@
WAYLAND_SRC = @WAYLAND_SRC@
WAYLAND_OBJ = @WAYLAND_OBJ@
+WAYLAND_CFLAGS = @WAYLAND_CFLAGS@
XDIFF_OBJS_USED = @XDIFF_OBJS_USED@
diff --git a/src/configure.ac b/src/configure.ac
index 9db7d37bd..fc9590f75 100644
--- a/src/configure.ac
+++ b/src/configure.ac
@@ -2406,49 +2406,41 @@ CPPFLAGS=$cppflags_save
AC_MSG_CHECKING(--with-wayland argument)
AC_ARG_WITH(wayland,
- [ --with-wayland Include support for the Wayland protocol.])
+ [ --with-wayland Include support for the Wayland protocol.],
+ [with_wayland=$withval],
+ [with_wayland=yes])
+AC_MSG_RESULT([$with_wayland])
-test -z "$with_wayland" && with_wayland=yes
if test "$with_wayland" = yes; then
- AC_MSG_RESULT(yes)
- AC_MSG_CHECKING(if Wayland client header files can be found)
- cppflags_save=$CPPFLAGS
- CPPFLAGS="$CPPFLAGS $X_CFLAGS"
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <wayland-client.h>], )],
- AC_MSG_RESULT(yes),
- AC_MSG_RESULT(no); no_wl=yes)
- CPPFLAGS=$cppflags_save
-
- if test "$no_wl" = yes; then
- with_wayland=no
+cflags_save=$CFLAGS
+ AC_MSG_CHECKING(for wayland)
+ if "$PKG_CONFIG" --exists 'wayland-client'; then
+ AC_MSG_RESULT([yes])
+ AC_DEFINE(HAVE_WAYLAND)
+ WAYLAND_CFLAGS=`$PKG_CONFIG --cflags wayland-client`
+ CFLAGS="$CFLAGS $WAYLAND_CFLAGS"
+ WAYLAND_LIBS=`$PKG_CONFIG --libs wayland-client`
+ WAYLAND_SRC=" \
+ auto/wayland/wlr-data-control-unstable-v1.c \
+ auto/wayland/ext-data-control-v1.c \
+ auto/wayland/xdg-shell.c \
+ auto/wayland/primary-selection-unstable-v1.c \
+ wayland.c"
+ WAYLAND_OBJ=" \
+ objects/wlr-data-control-unstable-v1.o \
+ objects/ext-data-control-v1.o \
+ objects/xdg-shell.o \
+ objects/primary-selection-unstable-v1.o \
+ objects/wayland.o"
+ AC_SUBST(WAYLAND_CFLAGS)
+ AC_SUBST(WAYLAND_LIBS)
+ AC_SUBST(WAYLAND_SRC)
+ AC_SUBST(WAYLAND_OBJ)
else
- AC_CHECK_LIB(wayland-client, wl_display_connect,[no_wl=no])
-
- if test "$no_wl" = no; then
- AC_DEFINE(HAVE_WAYLAND)
- WAYLAND_LIBS="-lwayland-client";
- AC_SUBST(WAYLAND_LIBS)
- WAYLAND_SRC=" \
- auto/wayland/wlr-data-control-unstable-v1.c \
- auto/wayland/ext-data-control-v1.c \
- auto/wayland/xdg-shell.c \
- auto/wayland/primary-selection-unstable-v1.c \
- wayland.c"
- AC_SUBST(WAYLAND_SRC)
- WAYLAND_OBJ=" \
- objects/wlr-data-control-unstable-v1.o \
- objects/ext-data-control-v1.o \
- objects/xdg-shell.o \
- objects/primary-selection-unstable-v1.o \
- objects/wayland.o"
- AC_SUBST(WAYLAND_OBJ)
-
- else
- with_wayland=no
- fi
+ AC_MSG_RESULT(no)
+ with_wayland=no
fi
-else
- AC_MSG_RESULT(no)
+CFLAGS=$cflags_save
fi
test -z "$with_x" && with_x=yes
diff --git a/src/version.c b/src/version.c
index 31443f916..d7c183f07 100644
--- a/src/version.c
+++ b/src/version.c
@@ -719,6 +719,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 1561,
/**/
1560,
/**/
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion visit
https://groups.google.com/d/msgid/vim_dev/E1ucUIt-00Bif5-L4%40256bit.org.