summaryrefslogtreecommitdiffstats
path: root/unix
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2023-07-18 14:15:49 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2023-07-18 14:15:49 (GMT)
commit9bd0f9a676dc8cf52d4f73b0cf766d4643b64956 (patch)
treef23e6916460d21f4cdab3544051f4c297ef9007b /unix
parent3eac0e260bf334098c61c36eff9890b2c97a52b3 (diff)
parentc00e981adab518faf0a905cb261fbddae340d33f (diff)
downloadtk-9bd0f9a676dc8cf52d4f73b0cf766d4643b64956.zip
tk-9bd0f9a676dc8cf52d4f73b0cf766d4643b64956.tar.gz
tk-9bd0f9a676dc8cf52d4f73b0cf766d4643b64956.tar.bz2
Merge 8.7
Diffstat (limited to 'unix')
-rw-r--r--unix/Makefile.in10
-rwxr-xr-xunix/configure2
-rw-r--r--unix/configure.ac2
-rw-r--r--unix/tcl.m436
-rw-r--r--unix/tkUnix.c26
-rw-r--r--unix/tkUnixConfig.c2
-rw-r--r--unix/tkUnixPort.h5
7 files changed, 36 insertions, 47 deletions
diff --git a/unix/Makefile.in b/unix/Makefile.in
index af6fe23..6de5c29 100644
--- a/unix/Makefile.in
+++ b/unix/Makefile.in
@@ -678,7 +678,7 @@ objs: ${OBJS}
${WISH_EXE}: $(TK_STUB_LIB_FILE) $(WISH_OBJS) $(TK_LIB_FILE) @APP_RSRC_FILE@
- ${CC} ${CFLAGS} ${LDFLAGS} $(WISH_OBJS) @TK_BUILD_LIB_SPEC@ \
+ ${CC} ${CFLAGS} $(WISH_OBJS) @TK_BUILD_LIB_SPEC@ ${LDFLAGS} \
$(WISH_LIBS) $(CC_SEARCH_FLAGS) -o ${WISH_EXE}
@if test "${ZIPFS_BUILD}" = "2" ; then \
if test "x$(MACHER)" = "x" ; then \
@@ -700,7 +700,7 @@ $(TKTEST_EXE): $(TKTEST_OBJS) $(TK_LIB_FILE)
$(MAKE) tktest-real LIB_RUNTIME_DIR="`pwd`:$(TCL_BIN_DIR)"
tktest-real: ${TK_STUB_LIB_FILE}
- ${CC} ${CFLAGS} ${LDFLAGS} $(TKTEST_OBJS) @TK_BUILD_LIB_SPEC@ $(WISH_LIBS) \
+ ${CC} ${CFLAGS} $(TKTEST_OBJS) @TK_BUILD_LIB_SPEC@ ${LDFLAGS} $(WISH_LIBS) \
${TK_STUB_LIB_FILE} ${TCL_STUB_LIB_SPEC} $(CC_SEARCH_FLAGS) -o $(TKTEST_EXE)
# # FIXME: This xttest rule seems to be broken in a number of ways. It should
@@ -708,8 +708,8 @@ tktest-real: ${TK_STUB_LIB_FILE}
# # tktest, and it is not clear where this test.o object file comes from.
#
# xttest: test.o tkTest.o tkSquare.o $(TK_LIB_FILE) ${TK_STUB_LIB_FILE}
-# ${CC} ${CFLAGS} ${LDFLAGS} test.o tkTest.o tkSquare.o \
-# @TK_BUILD_LIB_SPEC@ ${TK_STUB_LIB_FILE} ${TCL_STUB_LIB_SPEC} \
+# ${CC} ${CFLAGS} test.o tkTest.o tkSquare.o \
+# @TK_BUILD_LIB_SPEC@ ${LDFLAGS} ${TK_STUB_LIB_FILE} ${TCL_STUB_LIB_SPEC} \
# $(WISH_LIBS) $(LD_SEARCH_FLAGS) -lXt -o xttest
# Note, in the target below TCL_LIBRARY needs to be set or else
@@ -1745,7 +1745,7 @@ dist: $(UNIX_DIR)/configure $(UNIX_DIR)/tkConfig.h.in $(UNIX_DIR)/tk.pc.in $(MAC
$(MAC_OSX_DIR)/Tk.xcodeproj/default.pbxuser \
$(DISTDIR)/macosx/Tk.xcodeproj
$(INSTALL_DATA_DIR) $(DISTDIR)/compat
- $(DIST_INSTALL_DATA) $(TOP_DIR)/license.terms $(TOP_DIR)/compat/stdint.h \
+ $(DIST_INSTALL_DATA) $(TOP_DIR)/license.terms \
$(TOP_DIR)/compat/stdbool.h $(DISTDIR)/compat
$(INSTALL_DATA_DIR) $(DISTDIR)/xlib
$(DIST_INSTALL_DATA) $(XLIB_DIR)/*.[ch] $(DISTDIR)/xlib
diff --git a/unix/configure b/unix/configure
index 79659ce..e06493c 100755
--- a/unix/configure
+++ b/unix/configure
@@ -7593,7 +7593,7 @@ printf "%s\n" "#define MAC_OSX_TK 1" >>confdefs.h
LIBS="$LIBS -framework UserNotifications"
fi
if test -d "/System/Library/Frameworks/UniformTypeIdentifiers.framework"; then
- LIBS="$LIBS -framework UniformTypeIdentifiers"
+ LIBS="$LIBS -weak_framework UniformTypeIdentifiers"
fi
EXTRA_CC_SWITCHES='-x objective-c'
TK_WINDOWINGSYSTEM=AQUA
diff --git a/unix/configure.ac b/unix/configure.ac
index f803a35..1540bc5 100644
--- a/unix/configure.ac
+++ b/unix/configure.ac
@@ -289,7 +289,7 @@ if test $tk_aqua = yes; then
LIBS="$LIBS -framework UserNotifications"
fi
if test -d "/System/Library/Frameworks/UniformTypeIdentifiers.framework"; then
- LIBS="$LIBS -framework UniformTypeIdentifiers"
+ LIBS="$LIBS -weak_framework UniformTypeIdentifiers"
fi
EXTRA_CC_SWITCHES='-x objective-c'
TK_WINDOWINGSYSTEM=AQUA
diff --git a/unix/tcl.m4 b/unix/tcl.m4
index 3717893..fc0cfb7 100644
--- a/unix/tcl.m4
+++ b/unix/tcl.m4
@@ -1932,8 +1932,6 @@ dnl # preprocessing tests use only CPPFLAGS.
# Results:
#
# Defines some of the following vars:
-# NO_DIRENT_H
-# NO_STDLIB_H
# NO_STRING_H
# NO_SYS_WAIT_H
# NO_DLFCN_H
@@ -1943,38 +1941,6 @@ dnl # preprocessing tests use only CPPFLAGS.
#--------------------------------------------------------------------
AC_DEFUN([SC_MISSING_POSIX_HEADERS], [
- AC_CACHE_CHECK([dirent.h], tcl_cv_dirent_h, [
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
-#include <dirent.h>]], [[
-#ifndef _POSIX_SOURCE
-# ifdef __Lynx__
- /*
- * Generate compilation error to make the test fail: Lynx headers
- * are only valid if really in the POSIX environment.
- */
-
- missing_procedure();
-# endif
-#endif
-DIR *d;
-struct dirent *entryPtr;
-char *p;
-d = opendir("foobar");
-entryPtr = readdir(d);
-p = entryPtr->d_name;
-closedir(d);
-]])],[tcl_cv_dirent_h=yes],[tcl_cv_dirent_h=no])])
-
- if test $tcl_cv_dirent_h = no; then
- AC_DEFINE(NO_DIRENT_H, 1, [Do we have <dirent.h>?])
- fi
-
- AC_CHECK_HEADER(stdlib.h, tcl_ok=1, tcl_ok=0)
- AC_EGREP_HEADER(strtol, stdlib.h, , tcl_ok=0)
- AC_EGREP_HEADER(strtoul, stdlib.h, , tcl_ok=0)
- if test $tcl_ok = 0; then
- AC_DEFINE(NO_STDLIB_H, 1, [Do we have <stdlib.h>?])
- fi
AC_CHECK_HEADER(string.h, tcl_ok=1, tcl_ok=0)
AC_EGREP_HEADER(strstr, string.h, , tcl_ok=0)
AC_EGREP_HEADER(strerror, string.h, , tcl_ok=0)
@@ -2388,7 +2354,7 @@ AC_DEFUN([SC_TCL_64BIT_FLAGS], [
case 1: case (sizeof(long long)==sizeof(long)): ;
}]])],[tcl_cv_type_64bit="long long"],[])])
if test "${tcl_cv_type_64bit}" = none ; then
- AC_DEFINE(TCL_WIDE_INT_IS_LONG, 1, ['long' and 'long long' have the same size])
+ AC_DEFINE(TCL_WIDE_INT_IS_LONG, 1, [Do 'long' and 'long long' have the same size (64-bit)?])
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no])
diff --git a/unix/tkUnix.c b/unix/tkUnix.c
index 553d8fc..0477b1c 100644
--- a/unix/tkUnix.c
+++ b/unix/tkUnix.c
@@ -121,6 +121,32 @@ Tk_UpdatePointer(
/*
*----------------------------------------------------------------------
*
+ * TkpCopyRegion --
+ *
+ * Makes the destination region a copy of the source region.
+ * Currently unused on X11.
+ *
+ * Results:
+ * None.
+ *
+ * Side effects:
+ * None.
+ *
+ *----------------------------------------------------------------------
+ */
+
+void
+TkpCopyRegion(
+ TkRegion dst,
+ TkRegion src)
+{
+ /* XUnionRegion() in Xlib is optimized to detect copying */
+ XUnionRegion(src, src, dst);
+}
+
+/*
+ *----------------------------------------------------------------------
+ *
* TkpBuildRegionFromAlphaData --
*
* Set up a rectangle of the given region based on the supplied alpha
diff --git a/unix/tkUnixConfig.c b/unix/tkUnixConfig.c
index 3a5aed1..055c004 100644
--- a/unix/tkUnixConfig.c
+++ b/unix/tkUnixConfig.c
@@ -22,7 +22,7 @@
* string representation of the option.
*
* Results:
- * Returns a Tk_Uid that is the string identifier that identifies this
+ * Returns a Tcl_Obj* with the string identifier that identifies this
* option. Returns NULL if there are no system defaults that match this
* pair.
*
diff --git a/unix/tkUnixPort.h b/unix/tkUnixPort.h
index bb43adb..1cd2e8a 100644
--- a/unix/tkUnixPort.h
+++ b/unix/tkUnixPort.h
@@ -26,7 +26,6 @@
#include <math.h>
#include <string.h>
#include <limits.h>
-#include <stdlib.h>
#include <sys/types.h>
#include <sys/file.h>
#ifdef HAVE_SYS_SELECT_H
@@ -40,9 +39,7 @@
# include <sys/time.h>
#endif
#include <time.h>
-#ifdef HAVE_INTTYPES_H
-# include <inttypes.h>
-#endif
+#include <inttypes.h>
#include <unistd.h>
#if defined(__GNUC__) && !defined(__cplusplus)
# pragma GCC diagnostic ignored "-Wc++-compat"