Repository: hadoop Updated Branches: refs/heads/branch-2 264c96777 -> 5dfb793b0 refs/heads/trunk 2214dab60 -> c6d5b37a1
HDFS-7774. Unresolved symbols error while compiling HDFS on Windows 7/32 bit. Contributed by Kiran Kumar M R. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/c6d5b37a Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/c6d5b37a Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/c6d5b37a Branch: refs/heads/trunk Commit: c6d5b37a1c4c3acc190f5f4e27109594efb7be8c Parents: 2214dab Author: cnauroth <cnaur...@apache.org> Authored: Thu Feb 26 13:37:46 2015 -0800 Committer: cnauroth <cnaur...@apache.org> Committed: Thu Feb 26 13:37:46 2015 -0800 ---------------------------------------------------------------------- hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt | 3 +++ hadoop-hdfs-project/hadoop-hdfs/pom.xml | 5 ++++- .../hadoop-hdfs/src/main/native/libhdfs/os/windows/thread.c | 2 +- .../main/native/libhdfs/os/windows/thread_local_storage.c | 8 ++++++++ 4 files changed, 16 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/c6d5b37a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt index 54b4057..ae83898 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt +++ b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt @@ -1040,6 +1040,9 @@ Release 2.7.0 - UNRELEASED HDFS-7843. A truncated file is corrupted after rollback from a rolling upgrade. (szetszwo) + HDFS-7774. Unresolved symbols error while compiling HDFS on Windows 7/32 bit. + (Kiran Kumar M R via cnauroth) + BREAKDOWN OF HDFS-7584 SUBTASKS AND RELATED JIRAS HDFS-7720. Quota by Storage Type API, tools and ClientNameNode http://git-wip-us.apache.org/repos/asf/hadoop/blob/c6d5b37a/hadoop-hdfs-project/hadoop-hdfs/pom.xml ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/pom.xml b/hadoop-hdfs-project/hadoop-hdfs/pom.xml index 5efce5c..2d402a9 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/pom.xml +++ b/hadoop-hdfs-project/hadoop-hdfs/pom.xml @@ -440,10 +440,13 @@ http://maven.apache.org/xsd/maven-4.0.0.xsd"> </goals> <configuration> <target> + <condition property="generator" value="Visual Studio 10" else="Visual Studio 10 Win64"> + <equals arg1="Win32" arg2="${env.PLATFORM}" /> + </condition> <mkdir dir="${project.build.directory}/native"/> <exec executable="cmake" dir="${project.build.directory}/native" failonerror="true"> - <arg line="${basedir}/src/ -DGENERATED_JAVAH=${project.build.directory}/native/javah -DJVM_ARCH_DATA_MODEL=${sun.arch.data.model} -DREQUIRE_LIBWEBHDFS=${require.libwebhdfs} -DREQUIRE_FUSE=${require.fuse} -G 'Visual Studio 10 Win64'"/> + <arg line="${basedir}/src/ -DGENERATED_JAVAH=${project.build.directory}/native/javah -DJVM_ARCH_DATA_MODEL=${sun.arch.data.model} -DREQUIRE_LIBWEBHDFS=${require.libwebhdfs} -DREQUIRE_FUSE=${require.fuse} -G '${generator}'"/> </exec> <exec executable="msbuild" dir="${project.build.directory}/native" failonerror="true"> http://git-wip-us.apache.org/repos/asf/hadoop/blob/c6d5b37a/hadoop-hdfs-project/hadoop-hdfs/src/main/native/libhdfs/os/windows/thread.c ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/native/libhdfs/os/windows/thread.c b/hadoop-hdfs-project/hadoop-hdfs/src/main/native/libhdfs/os/windows/thread.c index 90450d8..f5cc2a7 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/native/libhdfs/os/windows/thread.c +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/native/libhdfs/os/windows/thread.c @@ -28,7 +28,7 @@ * @param toRun thread to run * @return DWORD result of running thread (always 0) */ -static DWORD runThread(LPVOID toRun) { +static DWORD WINAPI runThread(LPVOID toRun) { const thread *t = toRun; t->start(t->arg); return 0; http://git-wip-us.apache.org/repos/asf/hadoop/blob/c6d5b37a/hadoop-hdfs-project/hadoop-hdfs/src/main/native/libhdfs/os/windows/thread_local_storage.c ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/native/libhdfs/os/windows/thread_local_storage.c b/hadoop-hdfs-project/hadoop-hdfs/src/main/native/libhdfs/os/windows/thread_local_storage.c index 70ad152..4c415e1 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/native/libhdfs/os/windows/thread_local_storage.c +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/native/libhdfs/os/windows/thread_local_storage.c @@ -96,13 +96,21 @@ static void NTAPI tlsCallback(PVOID h, DWORD reason, PVOID pv) * reference _tls_used, we guarantee that the binary retains the TLS directory. * See Microsoft Visual Studio 10.0/VC/crt/src/tlssup.c . */ +#ifdef _WIN64 #pragma comment(linker, "/INCLUDE:_tls_used") +#else +#pragma comment(linker, "/INCLUDE:__tls_used") +#endif /* * We must retain a pointer to the callback function. Force the linker to keep * this symbol, even though it appears that nothing in our source code uses it. */ +#ifdef _WIN64 #pragma comment(linker, "/INCLUDE:pTlsCallback") +#else +#pragma comment(linker, "/INCLUDE:_pTlsCallback") +#endif /* * Define constant pointer to our callback, and tell the linker to pin it into