The attached packaging is a first attempt at building mysql-unified-5.0.45 with clang. The resulting build doesn't completely pass InfoTest but neither does the current build against llvm-gcc.
Confirm that this builds on 10.7 with Xcode4.5. Did not test tests since those take forever and current 5.0.45 fails tests anyway as noted. I've sent email to the Todai team about committing. If there's no response by Monday, I think we can commit the patch.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
1) Updated package to mysql 5.0.96
2) Bumped fink BuildDepend to simplify InfoTest by assuming nobody is user
3) Added mysql-test/t/disabled.def patch section to disable failing tests so InfoTest can cleanly run (as debian does for their mysql packages).
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Passes here as well and it should be checked in to the 10.7 tree tomorrow if Todai doesn't respond (the usual 3 day wait).
One thing about the TestScript, with the removal of the UID test, it assumes that the default --build-as-nobody flag hasn't been overridden by the user. The UID test should probably go back in, but either fail tests with a message if UID equals 0 (or just bypass the tests). Forcing a BuildDepends on fink-0.33 only means that --build-as-nobody is the default, but doesn't prevent being overridden by the user.
if [ $UID = 0 ]; then
echo "The mysql tests can not be run as root."
exit 1
else
make -j1 test-force || exit 2
fi
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Committed to 10.7 tree. The same packaging builds against an llvm32 svn package's clang compilers on x86_64 10.6 fink using Xcode 4.2's cctools and passes all of InfoTest. The current llvm31 clang compilers are insufficient and fail with compilation errors of...
I decline assignment of this.
I don't know or care a damn thing about mysql. Nor do I have time right now to deal with random packages that I don't maintain.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Note that the new 10.7 packaging might need an xcode dependency. If we get any reports of failures for building with the clang from older Xcode's than 4.5, one can be added. However I suspect the new xcode dependency in gcc47 will have shifted the user base to Xcode 4.5 for the 10.7 tree.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Confirm that this builds on 10.7 with Xcode4.5. Did not test tests since those take forever and current 5.0.45 fails tests anyway as noted. I've sent email to the Todai team about committing. If there's no response by Monday, I think we can commit the patch.
mysql-unified-5.0.96-1 info file
mysql-unified-5.0.96-1 patch file
1) Updated package to mysql 5.0.96
2) Bumped fink BuildDepend to simplify InfoTest by assuming nobody is user
3) Added mysql-test/t/disabled.def patch section to disable failing tests so InfoTest can cleanly run (as debian does for their mysql packages).
Diff from current 10.7 info file is...
--- mysql-unified.info 2012-07-29 15:48:16.000000000 -0400
+++ /sw/fink/10.7/local/main/finkinfo/mysql-unified.info 2012-09-28 23:26:21.000000000 -0400
@@ -1,22 +1,22 @@
Info2:<<
Package: mysql-unified
-Version: 5.0.45
-Revision: 3
+Version: 5.0.96
+Revision: 1
Description: Open Source SQL database
License: GPL/LGPL
Maintainer: Todai Fink Team <fink@sodan.ecc.u-tokyo.ac.jp>
# Dependencies:
Depends: %N-shlibs (= %v-%r), %N-client (= %v-%r), daemonic (>= 20010902-1)
-BuildDepends: readline5 (>= 5.0-1004), fink (>= 0.25)
+BuildDepends: readline5 (>= 5.0-1004), fink (>= 0.33.0)
Conflicts: mysql (<< 5.0.45-1), mysql-ssl (<< 5.0.45-1)
Replaces: mysql (<< 5.0.45-1), mysql-ssl (<< 5.0.45-1)
# Unpack Phase:
# Source: mirror:custom:Downloads/MySQL-5.0/mysql-%v.tar.gz
# For Enterprise Server
-Source: ftp://ftp.mysql.com/pub/mysql/src/mysql-%v.tar.gz
-Source-MD5: a2a1c5a82bb22b45ab76a8ecab94e10d
+Source: http://mysql.mirrors.pair.com/Downloads/MySQL-5.0/mysql-%v.tar.gz
+Source-MD5: bf280949049161aa68cf29e600d9ec79
CustomMirror: <<
# Some country codes not in /sw/lib/fink/mirror/_keys
eur-AM: http://mysql.mirrors.arminco.com/
@@ -162,16 +162,13 @@
<<
# Patch Phase
PatchFile: %n.patch
-PatchFile-MD5: 295bb29e3f6e87d38509e259701510d0
+PatchFile-MD5: c188b978516a86f98bc83a107e0372ae
PatchScript: /usr/bin/sed "s|@PREFIX@|%p|g" %{PatchFile} | /usr/bin/patch -p1
# Compile Phase:
# See BUILD/compile-ppc-max
SetCFLAGS: -Wimplicit -Wreturn-type -Wswitch -Wtrigraphs -Wcomment -W -Wchar-subscripts -Wformat -Wparentheses -Wsign-compare -Wwrite-strings -Wunused -O3 -fno-omit-frame-pointer -g
SetCXXFLAGS: -Wimplicit -Wreturn-type -Wswitch -Wtrigraphs -Wcomment -W -Wchar-subscripts -Wformat -Wparentheses -Wsign-compare -Wwrite-strings -Woverloaded-virtual -Wsign-promo -Wreorder -Wctor-dtor-privacy -Wnon-virtual-dtor -felide-constructors -fno-exceptions -fno-rtti -O3 -fno-omit-frame-pointer -g
-SetMAKEFLAGS: -j1
-SetCC: llvm-gcc-4.2
-SetCXX: llvm-g++-4.2
ConfigureParams: <<
--enable-assembler \ --with-extra-charsets=complex \ @@ -201,8 +198,10 @@
<<
GCC: 4.0
+
InfoTest: <<
- TestScript: [[ "$UID" -eq 0 ]] && { chown -R nobody. ./mysql-test && /usr/bin/sudo -u nobody make test-force || exit 2; } || { make test-force || exit 2; }
+ TestScript: make -j1 test-force || exit 2
+ TestSuiteSize: large
<<
# Install Phase:
Note that the failing tests which I have disabled appear to be known to upstream and occur on linux as well...
http://bugs.mysql.com/bug.php?id=53909
The bug was closed as non-critical so they seem to be unimportant.
These failures are also reported as http://bugs.mysql.com/bug.php?id=53910.
Proposed packaging passes 'fink -m' on 10.7 and 10.8 fink.
Passes here as well and it should be checked in to the 10.7 tree tomorrow if Todai doesn't respond (the usual 3 day wait).
One thing about the TestScript, with the removal of the UID test, it assumes that the default --build-as-nobody flag hasn't been overridden by the user. The UID test should probably go back in, but either fail tests with a message if UID equals 0 (or just bypass the tests). Forcing a BuildDepends on fink-0.33 only means that --build-as-nobody is the default, but doesn't prevent being overridden by the user.
if [ $UID = 0 ]; then
echo "The mysql tests can not be run as root."
exit 1
else
make -j1 test-force || exit 2
fi
Committed to 10.7 tree. The same packaging builds against an llvm32 svn package's clang compilers on x86_64 10.6 fink using Xcode 4.2's cctools and passes all of InfoTest. The current llvm31 clang compilers are insufficient and fail with compilation errors of...
longlong2str_asm.c:29:7: error: expected parameter declarator
char *longlong2str(longlong val,char *dst,int radix)
^
I decline assignment of this.
I don't know or care a damn thing about mysql. Nor do I have time right now to deal with random packages that I don't maintain.
Alexander,
I only assigned you because the cvs logs showed you did the last two commits to mysql-unified in the 10.7 tree.
Note that the new 10.7 packaging might need an xcode dependency. If we get any reports of failures for building with the clang from older Xcode's than 4.5, one can be added. However I suspect the new xcode dependency in gcc47 will have shifted the user base to Xcode 4.5 for the 10.7 tree.
Closed as noted by submitter.