Below is the list of changes that have just been committed into a local
4.1 repository of msvensson. When msvensson does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html
ChangeSet@stripped, 2006-10-20 15:08:31+02:00, msvensson@neptunus.(none) +2 -0
WL#3462 Add testing of MySQL client ABI to prevent unintentional ABI breaks
- Use the icheck tool if avaliable and compare the current mysql.h to a version controlled reference file
configure.in@stripped, 2006-10-20 15:08:29+02:00, msvensson@neptunus.(none) +4 -0
Look for icheck in configure
include/Makefile.am@stripped, 2006-10-20 15:08:29+02:00, msvensson@neptunus.(none) +16 -2
Add rule to build mysql_h.ic fi icheck is avaliable and compare it to the version controlled reference file mysql_h_abi.ic
# This is a BitKeeper patch. What follows are the unified diffs for the
# set of deltas contained in the patch. The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User: msvensson
# Host: neptunus.(none)
# Root: /home/msvensson/mysql/mysql-4.1-maint
--- 1.416/configure.in 2006-10-20 15:08:34 +02:00
+++ 1.417/configure.in 2006-10-20 15:08:34 +02:00
@@ -508,6 +508,10 @@
AC_SUBST(PDFLATEX)
AC_SUBST(MAKEINDEX)
+# icheck, used for ABI check
+AC_PATH_PROG(ICHECK, icheck, no)
+AC_SUBST(ICHECK)
+
# Lock for PS
AC_PATH_PROG(PS, ps, ps)
AC_MSG_CHECKING("how to check if pid exists")
--- 1.49/include/Makefile.am 2006-10-20 15:08:34 +02:00
+++ 1.50/include/Makefile.am 2006-10-20 15:08:34 +02:00
@@ -15,7 +15,7 @@
# Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
# MA 02111-1307, USA
-BUILT_SOURCES = mysql_version.h m_ctype.h my_config.h
+BUILT_SOURCES = mysql_version.h m_ctype.h my_config.h mysql_h.ic
pkginclude_HEADERS = my_dbug.h m_string.h my_sys.h my_list.h my_xml.h \
mysql.h mysql_com.h mysqld_error.h mysql_embed.h \
my_semaphore.h my_pthread.h my_no_pthread.h raid.h \
@@ -32,8 +32,10 @@
thr_lock.h t_ctype.h violite.h md5.h \
mysql_version.h.in my_handler.h my_time.h
+CLEANFILES = mysql_h.ic
+
# mysql_version.h are generated
-SUPERCLEANFILES = mysql_version.h my_config.h
+SUPERCLEANFILES = mysql_version.h my_config.h $(CLEANFILES)
# Some include files that may be moved and patched by configure
DISTCLEANFILES = sched.h $(SUPERCLEANFILES)
@@ -54,6 +56,18 @@
# generated by configure from the .h.in files
dist-hook:
$(RM) -f $(distdir)/mysql_version.h $(distdir)/my_config.h
+
+#
+# Rule for checking that ABI has not changed
+#
+# Create a icheck file for mysql.h and compare it to the reference
+mysql_h.ic: mysql.h
+ @set -x; \
+ if [ @ICHECK@ != no ] ; then \
+ @ICHECK@ --canonify -o $@ mysql.h; \
+ @ICHECK@ --compare mysql_h.ic mysql_h_abi.ic; \
+ fi;
+
# Don't update the files from bitkeeper
%::SCCS/s.%
| Thread |
|---|
| • bk commit into 4.1 tree (msvensson:1.2593) | msvensson | 20 Oct |