pajoye Mon Mar 16 15:03:06 2009 UTC
Modified files: (Branch: PHP_5_3)
/php-src/ext/fileinfo CREDITS config.w32
/php-src/ext/fileinfo/libmagic apprentice.c cdf.c cdf.h cdf_time.c
file.h readcdf.c
Log:
- fix the build for win (vc6 or vc9)
- fix logic in time convertion
- force shared on windows, will fix the dirent issue later (no, it is not
enough to simply remove the dep or header include)
- add myself before I forget again
http://cvs.php.net/viewvc.cgi/php-src/ext/fileinfo/CREDITS?r1=1.2.2.1&r2=1.2.2.2&diff_format=u
Index: php-src/ext/fileinfo/CREDITS
diff -u php-src/ext/fileinfo/CREDITS:1.2.2.1
php-src/ext/fileinfo/CREDITS:1.2.2.2
--- php-src/ext/fileinfo/CREDITS:1.2.2.1 Thu Dec 4 14:55:19 2008
+++ php-src/ext/fileinfo/CREDITS Mon Mar 16 15:03:06 2009
@@ -1,2 +1,2 @@
fileinfo
-Ilia Alshanetsky, Scott MacVicar, Derick Rethans
+Ilia Alshanetsky, Pierre Alain Joye, Scott MacVicar, Derick Rethans
http://cvs.php.net/viewvc.cgi/php-src/ext/fileinfo/config.w32?r1=1.1.2.4&r2=1.1.2.5&diff_format=u
Index: php-src/ext/fileinfo/config.w32
diff -u php-src/ext/fileinfo/config.w32:1.1.2.4
php-src/ext/fileinfo/config.w32:1.1.2.5
--- php-src/ext/fileinfo/config.w32:1.1.2.4 Sun Mar 15 23:03:50 2009
+++ php-src/ext/fileinfo/config.w32 Mon Mar 16 15:03:06 2009
@@ -1,20 +1,25 @@
-// $Id: config.w32,v 1.1.2.4 2009/03/15 23:03:50 scottmac Exp $
+// $Id: config.w32,v 1.1.2.5 2009/03/16 15:03:06 pajoye Exp $
// vim:ft=javascript
ARG_ENABLE("fileinfo", "fileinfo support", "no");
if (PHP_FILEINFO != 'no') {
+ if (CHECK_HEADER_ADD_INCLUDE("dirent.h", "CFLAGS_FILEINFO") &&
+ CHECK_LIB("dirent_a.lib", "fileinfo", PHP_FILEINFO)) {
+ LIBMAGIC_SOURCES=" apprentice.c apptype.c ascmagic.c \
+ cdf.c cdf_time.c compress.c \
+ encoding.c fsmagic.c funcs.c \
+ is_tar.c magic.c print.c \
+ readcdf.c readelf.c softmagic.c";
- LIBMAGIC_SOURCES=" apprentice.c apptype.c ascmagic.c \
- cdf.c cdf_time.c compress.c \
- encoding.c fsmagic.c funcs.c \
- is_tar.c magic.c print.c \
- readcdf.c readelf.c softmagic.c";
+ if (VCVERS < 1500) {
+ ADD_FLAG('CFLAGS', '/Zm1000');
+ }
- if (VCVERS < 1500) {
- ADD_FLAG('CFLAGS', '/Zm1000');
- }
-
- EXTENSION('fileinfo', 'fileinfo.c', null, "/I" +
configure_module_dirname + "/libmagic /I" + configure_module_dirname);
- ADD_SOURCES(configure_module_dirname + '\\libmagic', LIBMAGIC_SOURCES,
"fileinfo");
+ EXTENSION('fileinfo', 'fileinfo.c', true, "/I" +
configure_module_dirname + "/libmagic /I" + configure_module_dirname);
+ ADD_SOURCES(configure_module_dirname + '\\libmagic',
LIBMAGIC_SOURCES, "fileinfo");
+ } else {
+ WARNING("fileinfo not enabled; libraries and headers not
found");
+ PHP_FILEINFO = "no";
+ }
}
http://cvs.php.net/viewvc.cgi/php-src/ext/fileinfo/libmagic/apprentice.c?r1=1.7.2.13&r2=1.7.2.14&diff_format=u
Index: php-src/ext/fileinfo/libmagic/apprentice.c
diff -u php-src/ext/fileinfo/libmagic/apprentice.c:1.7.2.13
php-src/ext/fileinfo/libmagic/apprentice.c:1.7.2.14
--- php-src/ext/fileinfo/libmagic/apprentice.c:1.7.2.13 Sun Mar 15 23:04:18 2009
+++ php-src/ext/fileinfo/libmagic/apprentice.c Mon Mar 16 15:03:06 2009
@@ -51,16 +51,11 @@
#include <unistd.h>
#endif
-
-
-
#include <string.h>
#include <assert.h>
#include <ctype.h>
#include <fcntl.h>
-#ifndef PHP_WIN32
-#include <dirent.h>
-#endif
+
#define EATAB {while (isascii((unsigned char) *l) && \
isspace((unsigned char) *l)) ++l;}
http://cvs.php.net/viewvc.cgi/php-src/ext/fileinfo/libmagic/cdf.c?r1=1.1.2.3&r2=1.1.2.4&diff_format=u
Index: php-src/ext/fileinfo/libmagic/cdf.c
diff -u php-src/ext/fileinfo/libmagic/cdf.c:1.1.2.3
php-src/ext/fileinfo/libmagic/cdf.c:1.1.2.4
--- php-src/ext/fileinfo/libmagic/cdf.c:1.1.2.3 Mon Mar 16 12:52:39 2009
+++ php-src/ext/fileinfo/libmagic/cdf.c Mon Mar 16 15:03:06 2009
@@ -1001,7 +1001,11 @@
break;
case CDF_FILETIME:
tp = info[i].pi_tp;
+#if defined(PHP_WIN32 ) && _MSC_VER <= 1500
+ if (tp < 1000000000000000i64) {
+#else
if (tp < 1000000000000000LL) {
+#endif
cdf_print_elapsed_time(buf, sizeof(buf), tp);
printf("timestamp %s\n", buf);
} else {
http://cvs.php.net/viewvc.cgi/php-src/ext/fileinfo/libmagic/cdf.h?r1=1.1.2.2&r2=1.1.2.3&diff_format=u
Index: php-src/ext/fileinfo/libmagic/cdf.h
diff -u php-src/ext/fileinfo/libmagic/cdf.h:1.1.2.2
php-src/ext/fileinfo/libmagic/cdf.h:1.1.2.3
--- php-src/ext/fileinfo/libmagic/cdf.h:1.1.2.2 Sun Mar 15 23:04:18 2009
+++ php-src/ext/fileinfo/libmagic/cdf.h Mon Mar 16 15:03:06 2009
@@ -42,7 +42,11 @@
typedef struct {
uint64_t h_magic;
-#define CDF_MAGIC 0xE11AB1A1E011CFD0LL
+#if defined(PHP_WIN32 ) && _MSC_VER <= 1500
+# define CDF_MAGIC 0xE11AB1A1E011CFD0i64
+#else
+# define CDF_MAGIC 0xE11AB1A1E011CFD0LL
+#endif
uint64_t h_uuid[2];
uint16_t h_revision;
uint16_t h_version;
http://cvs.php.net/viewvc.cgi/php-src/ext/fileinfo/libmagic/cdf_time.c?r1=1.1.2.2&r2=1.1.2.3&diff_format=u
Index: php-src/ext/fileinfo/libmagic/cdf_time.c
diff -u php-src/ext/fileinfo/libmagic/cdf_time.c:1.1.2.2
php-src/ext/fileinfo/libmagic/cdf_time.c:1.1.2.3
--- php-src/ext/fileinfo/libmagic/cdf_time.c:1.1.2.2 Sun Mar 15 23:04:18 2009
+++ php-src/ext/fileinfo/libmagic/cdf_time.c Mon Mar 16 15:03:06 2009
@@ -104,8 +104,8 @@
#endif
int rdays;
- /* Unit is 100's of nanoseconds */
- ts->tv_usec = (t % CDF_TIME_PREC) * 1000000;
+ /* Time interval, in microseconds */
+ ts->tv_usec = (t % CDF_TIME_PREC) * CDF_TIME_PREC;
t /= CDF_TIME_PREC;
tm.tm_sec = t % 60;
@@ -153,7 +153,7 @@
errno = EINVAL;
return -1;
}
- *t = (ts->ts_usec / 1000000) * CDF_TIME_PREC;
+ *t = (ts->ts_usec / CDF_TIME_PREC) * CDF_TIME_PREC;
*t = tm.tm_sec;
*t += tm.tm_min * 60;
*t += tm.tm_hour * 60 * 60;
http://cvs.php.net/viewvc.cgi/php-src/ext/fileinfo/libmagic/file.h?r1=1.1.2.7&r2=1.1.2.8&diff_format=u
Index: php-src/ext/fileinfo/libmagic/file.h
diff -u php-src/ext/fileinfo/libmagic/file.h:1.1.2.7
php-src/ext/fileinfo/libmagic/file.h:1.1.2.8
--- php-src/ext/fileinfo/libmagic/file.h:1.1.2.7 Sun Mar 15 23:04:18 2009
+++ php-src/ext/fileinfo/libmagic/file.h Mon Mar 16 15:03:06 2009
@@ -403,10 +403,10 @@
#define strtoul(a, b, c) strtol(a, b, c)
#endif
-#ifndef HAVE_STRLCPY
+#ifndef strlcpy
size_t strlcpy(char *dst, const char *src, size_t siz);
#endif
-#ifndef HAVE_STRLCAT
+#ifndef strlcat
size_t strlcat(char *dst, const char *src, size_t siz);
#endif
http://cvs.php.net/viewvc.cgi/php-src/ext/fileinfo/libmagic/readcdf.c?r1=1.1.2.2&r2=1.1.2.3&diff_format=u
Index: php-src/ext/fileinfo/libmagic/readcdf.c
diff -u php-src/ext/fileinfo/libmagic/readcdf.c:1.1.2.2
php-src/ext/fileinfo/libmagic/readcdf.c:1.1.2.3
--- php-src/ext/fileinfo/libmagic/readcdf.c:1.1.2.2 Sun Mar 15 23:04:18 2009
+++ php-src/ext/fileinfo/libmagic/readcdf.c Mon Mar 16 15:03:06 2009
@@ -98,7 +98,11 @@
case CDF_FILETIME:
tp = info[i].pi_tp;
if (tp != 0) {
+#if defined(PHP_WIN32 ) && _MSC_VER <= 1500
+ if (tp < 1000000000000000i64) {
+#else
if (tp < 1000000000000000LL) {
+#endif
char tbuf[64];
cdf_print_elapsed_time(tbuf,
sizeof(tbuf), tp);
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php