Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(412)

Unified Diff: ports/OpenCV/nacl.patch

Issue 76153002: OpenCV 2.4.7 porting to PNaCl (Closed) Base URL: https://chromium.googlesource.com/external/naclports.git@master
Patch Set: Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: ports/OpenCV/nacl.patch
diff --git a/ports/OpenCV/nacl.patch b/ports/OpenCV/nacl.patch
new file mode 100644
index 0000000000000000000000000000000000000000..f82fe3a73b4ba9aa5eda7e885f40a09664f3f1be
--- /dev/null
+++ b/ports/OpenCV/nacl.patch
@@ -0,0 +1,114 @@
+diff --git OpenCV_v2.4.7/XCompile-nacl.txt OpenCV_v2.4.7/XCompile-nacl.txt
+new file mode 100644
+index 0000000..c651a2a
+--- /dev/null
++++ Box2D_v2.2.1/XCompile-nacl.txt
+@@ -0,0 +1,17 @@
++# the name of the target operating system
++SET(CMAKE_SYSTEM_NAME Linux)
++
++SET(NACL_CROSS_PREFIX pnacl)
++
++# which compilers to use for C and C++
++SET(CMAKE_C_COMPILER "${NACLCC}")
++SET(CMAKE_CXX_COMPILER "${NACLCXX}")
++set(CMAKE_AR ${NACLAR} CACHE FILEPATH "Archiver")
++SET(CMAKE_LINKER "${NACLLD}")
++SET(_CMAKE_TOOLCHAIN_PREFIX ${NACL_CROSS_PREFIX})
++
++# here is the target environment located
++SET(CMAKE_FIND_ROOT_PATH ${NACL_TOOLCHAIN_ROOT})
++
++# pnacl abi says 32bits little endian
++set(CMAKE_SIZEOF_VOID_P 4)
+diff -Naur opencv-2.4.7/modules/contrib/src/inputoutput.cpp opencv-2.4.7.nacl/modules/contrib/src/inputoutput.cpp
+--- opencv-2.4.7/modules/contrib/src/inputoutput.cpp 2013-11-06 15:26:39.000000000 +0100
++++ opencv-2.4.7.nacl/modules/contrib/src/inputoutput.cpp 2013-11-19 10:36:46.000000000 +0100
+@@ -76,18 +76,6 @@
+ {
+ return list;
+ }
+-
+- while ((dirp = readdir(dp)) != NULL)
+- {
+- if (dirp->d_type == DT_REG)
+- {
+- if (exten.compare("*") == 0)
+- list.push_back(static_cast<std::string>(dirp->d_name));
+- else
+- if (std::string(dirp->d_name).find(exten) != std::string::npos)
+- list.push_back(static_cast<std::string>(dirp->d_name));
+- }
+- }
Sam Clegg 2013/11/19 17:03:27 Can you instead wrap these chunks in #ifndef __nat
+ closedir(dp);
+ #endif
+
+@@ -166,20 +154,6 @@
+ {
+ return list;
+ }
+-
+- while ((dirp = readdir(dp)) != NULL)
+- {
+- if (dirp->d_type == DT_DIR &&
+- strcmp(dirp->d_name, ".") != 0 &&
+- strcmp(dirp->d_name, "..") != 0 )
+- {
+- if (exten.compare("*") == 0)
+- list.push_back(static_cast<std::string>(dirp->d_name));
+- else
+- if (std::string(dirp->d_name).find(exten) != std::string::npos)
+- list.push_back(static_cast<std::string>(dirp->d_name));
+- }
+- }
+ closedir(dp);
+ #endif
+
+diff -Naur opencv-2.4.7/modules/core/include/opencv2/core/operations.hpp opencv-2.4.7.nacl/modules/core/include/opencv2/core/operations.hpp
+--- opencv-2.4.7/modules/core/include/opencv2/core/operations.hpp 2013-11-06 15:26:39.000000000 +0100
++++ opencv-2.4.7.nacl/modules/core/include/opencv2/core/operations.hpp 2013-11-19 10:39:15.000000000 +0100
+@@ -58,7 +58,7 @@
+
+ #if defined __clang__ && __clang_major__ >= 3 && !defined __ANDROID__
+ #ifdef __ATOMIC_SEQ_CST
+- #define CV_XADD(addr, delta) __c11_atomic_fetch_add((_Atomic(int)*)(addr), (delta), __ATOMIC_SEQ_CST)
++ int CV_XADD(int* addr, int delta) { int tmp = *addr; *addr += delta; return tmp; }
+ #else
+ #define CV_XADD(addr, delta) __atomic_fetch_add((_Atomic(int)*)(addr), (delta), 5)
+ #endif
+diff -Naur opencv-2.4.7/modules/flann/include/opencv2/flann/allocator.h opencv-2.4.7.nacl/modules/flann/include/opencv2/flann/allocator.h
+--- opencv-2.4.7/modules/flann/include/opencv2/flann/allocator.h 2013-11-06 15:26:39.000000000 +0100
++++ opencv-2.4.7.nacl/modules/flann/include/opencv2/flann/allocator.h 2013-11-19 10:40:38.000000000 +0100
+@@ -68,7 +68,7 @@
+ *
+ */
+
+-const size_t WORDSIZE=16;
++//const size_t WORDSIZE=16;
+ const size_t BLOCKSIZE=8192;
+
+ class PooledAllocator
+diff -Naur opencv-2.4.7/modules/legacy/src/calibfilter.cpp opencv-2.4.7.nacl/modules/legacy/src/calibfilter.cpp
+--- opencv-2.4.7/modules/legacy/src/calibfilter.cpp 2013-11-06 15:26:39.000000000 +0100
++++ opencv-2.4.7.nacl/modules/legacy/src/calibfilter.cpp 2013-11-19 10:44:15.000000000 +0100
+@@ -42,7 +42,7 @@
+ #include "precomp.hpp"
+ #include <stdio.h>
+
+-#undef quad
++//#undef quad
+
+ CvCalibFilter::CvCalibFilter()
+ {
+diff -Naur opencv-2.4.7/modules/legacy/src/epilines.cpp opencv-2.4.7.nacl/modules/legacy/src/epilines.cpp
+--- opencv-2.4.7/modules/legacy/src/epilines.cpp 2013-11-06 15:26:39.000000000 +0100
++++ opencv-2.4.7.nacl/modules/legacy/src/epilines.cpp 2013-11-19 10:44:23.000000000 +0100
+@@ -46,7 +46,7 @@
+
+ /* Valery Mosyagin */
+
+-#undef quad
++//#undef quad
+
+ #define EPS64D 1e-9
+

Powered by Google App Engine
This is Rietveld 408576698