actions.py 3.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. #!/usr/bin/python
  2. # -*- coding: utf-8 -*-
  3. #
  4. # Licensed under the GNU General Public License, version 2
  5. # See the file http://www.gnu.org/copyleft/gpl.txt
  6. from pisi.actionsapi import cmaketools
  7. from pisi.actionsapi import pisitools
  8. from pisi.actionsapi import shelltools
  9. from pisi.actionsapi import get
  10. #shelltools.export("PYTHONDONTWRITEBYTECODE", "")
  11. def setup():
  12. #temporary workaround for error: "'UINT64_C' was not declared in this scope"
  13. shelltools.export("CXXFLAGS", "%s -D__STDC_CONSTANT_MACROS" % get.CXXFLAGS())
  14. shelltools.makedirs("build")
  15. shelltools.cd("build")
  16. cmaketools.configure("-G 'Ninja' \
  17. -D CMAKE_BUILD_TYPE=Release \
  18. -D CMAKE_INSTALL_PREFIX=/usr \
  19. -D CMAKE_INSTALL_LIBDIR=lib \
  20. -D CMAKE_SKIP_RPATH=ON \
  21. DESTDIR=%s \
  22. -DBUILD_EXAMPLES=1 \
  23. -DINSTALL_C_EXAMPLES=1 \
  24. -DINSTALL_PYTHON_EXAMPLES=1 \
  25. -DINSTALL_OCTAVE_EXAMPLES=1 \
  26. -DWITH_FFMPEG=0 \
  27. -DWITH_UNICAP=0 \
  28. -DENABLE_OPENMP=0 \
  29. -DNEW_PYTHON_SUPPORT=1 \
  30. -DOCTAVE_SUPPORT=0 \
  31. -DUSE_MMX=1 \
  32. -DUSE_SSE2=1 \
  33. -DUSE_SSE3=0 \
  34. -DUSE_SSE=1 \
  35. -DWITH_TBB=ON \
  36. -DWITH_EIGEN=ON \
  37. -DWITH_1394=1 \
  38. -DWITH_GSTREAMER=1 \
  39. -DWITH_GTK=1 \
  40. -DWITH_JASPER=1 \
  41. -DWITH_JPEG=1 \
  42. -DWITH_PNG=1 \
  43. -DWITH_TIFF=1 \
  44. -DWITH_V4L=1 \
  45. -DWITH_XINE=1 \
  46. -DWITH_VTK=OFF \
  47. -DWITH_QT=OFF \
  48. -DWITH_OPENGL=ON \
  49. -DWITH_OPENCL=ON \
  50. -DWITH_VULKAN=ON \
  51. -DCMAKE_SKIP_RPATH=1 \
  52. -DBUILD_opencv_python3=ON \
  53. -DBUILD_opencv_python2=ON \
  54. -DBUILD_IPP_IW=OFF \
  55. -DBUILD_ITT=OFF \
  56. -DBUILD_JAVA=OFF \
  57. -DBUILD_PROTOBUF=ON \
  58. -DBUILD_opencv_java_bindings_generator=OFF \
  59. -DPYTHON3_EXECUTABLE=/usr/bin/python3 \
  60. -DOPENCV_GENERATE_PKGCONFIG=ON \
  61. -DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib-%s/modules \
  62. " % (get.installDIR(), get.srcVERSION()), sourceDir="..")
  63. # -DUSE_O3=OFF
  64. # -DUSE_OMIT_FRAME_POINTER=OFF
  65. def build():
  66. shelltools.cd("build")
  67. #cmaketools.make()
  68. shelltools.system("ninja -j2")
  69. def install():
  70. shelltools.cd("build")
  71. #cmaketools.rawInstall("DESTDIR=%s" % get.installDIR())
  72. shelltools.system("DESTDIR=%s ninja install" % get.installDIR())
  73. # Move other docs and samples under standart doc dir
  74. #doc_dir = "usr/share/doc/" + get.srcNAME()
  75. #pisitools.domove("usr/share/opencv/doc", doc_dir)
  76. #pisitools.domove("usr/share/opencv/samples", doc_dir)
  77. shelltools.cd("..")
  78. pisitools.dodoc("README.md", "LICENSE", )