Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit3f8604a

Browse files
committed
try to vendor ruby
1 parent43a2cb8 commit3f8604a

File tree

3 files changed

+63
-38
lines changed

3 files changed

+63
-38
lines changed

‎appveyor.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ build_script:
141141
-cmd:|
142142
"%PYTHON%/python.exe" -m pip install --upgrade pip
143143
"%PYTHON%/python.exe" -m pip install --upgrade setuptools
144-
"%PYTHON%/python.exe" -m pip wheel --wheel-dir=%cd%\dist . --verbose
144+
set "CI_BUILD=True" &&"%PYTHON%/python.exe" -m pip wheel --wheel-dir=%cd%\dist . --verbose
145145
146146
before_test:
147147
-ps:|

‎setup.py‎

Lines changed: 58 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,11 @@
1313
defmain():
1414
os.chdir(os.path.dirname(os.path.abspath(__file__)))
1515

16-
# These are needed for source fetching
16+
CI_BUILD=os.environ.get("CI_BUILD","False")
17+
is_CI_build=TrueifCI_BUILD=="True"elseFalse
1718
cmake_source_dir="opencv"
1819
minimum_supported_numpy="1.13.1"
1920
build_contrib=get_build_env_var_by_name("contrib")
20-
# headless flag to skip GUI deps if needed
2121
build_headless=get_build_env_var_by_name("headless")
2222

2323
ifsys.version_info[:2]>= (3,6):
@@ -30,11 +30,16 @@ def main():
3030
numpy_version="numpy>=%s"%minimum_supported_numpy
3131

3232
python_version=cmaker.CMaker.get_python_version()
33-
python_lib_path=cmaker.CMaker.get_python_library(python_version).replace('\\','/')
34-
python_include_dir=cmaker.CMaker.get_python_include_dir(python_version).replace('\\','/')
33+
python_lib_path=cmaker.CMaker.get_python_library(python_version).replace(
34+
"\\","/"
35+
)
36+
python_include_dir=cmaker.CMaker.get_python_include_dir(python_version).replace(
37+
"\\","/"
38+
)
3539

3640
ifos.path.exists(".git"):
3741
importpip._internal.vcs.gitasgit
42+
3843
g=git.Git()# NOTE: pip API's are internal, this has to be refactored
3944

4045
g.run_command(["submodule","sync"])
@@ -47,7 +52,9 @@ def main():
4752
["submodule","update","--init","--recursive","opencv_contrib"]
4853
)
4954

50-
package_version,build_contrib,build_headless=get_opencv_version(build_contrib,build_headless)
55+
package_version,build_contrib,build_headless=get_opencv_version(
56+
build_contrib,build_headless
57+
)
5158

5259
# https://stackoverflow.com/questions/1405913/python-32bit-or-64bit-mode
5360
x64=sys.maxsize>2**32
@@ -86,7 +93,10 @@ def main():
8693
# In Windows, in python/X.Y/<arch>/; in Linux, in just python/X.Y/.
8794
# Naming conventions vary so widely between versions and OSes
8895
# had to give up on checking them.
89-
["python/cv2[^/]*%(ext)s"% {"ext":re.escape(sysconfig.get_config_var("EXT_SUFFIX"))}],
96+
[
97+
"python/cv2[^/]*%(ext)s"
98+
% {"ext":re.escape(sysconfig.get_config_var("EXT_SUFFIX"))}
99+
],
90100
"cv2.data": [# OPENCV_OTHER_INSTALL_PATH
91101
("etc"ifos.name=="nt"else"share/opencv4")+r"/haarcascades/.*\.xml"
92102
],
@@ -96,12 +106,14 @@ def main():
96106
# Raw paths relative to sourcetree root.
97107
files_outside_package_dir= {"cv2": ["LICENSE.txt","LICENSE-3RD-PARTY.txt"]}
98108

109+
ci_cmake_generator= (
110+
["-G","Visual Studio 14"+ (" Win64"ifx64else"")]
111+
ifos.name=="nt"
112+
else ["-G","Unix Makefiles"]
113+
)
114+
99115
cmake_args= (
100-
(
101-
["-G","Visual Studio 14"+ (" Win64"ifx64else"")]
102-
ifos.name=="nt"
103-
else ["-G","Unix Makefiles"]# don't make CMake try (and fail) Ninja first
104-
)
116+
(ci_cmake_generatorifis_CI_buildelse [])
105117
+ [
106118
# skbuild inserts PYTHON_* vars. That doesn't satisfy opencv build scripts in case of Py3
107119
"-DPYTHON3_EXECUTABLE=%s"%sys.executable,
@@ -131,33 +143,40 @@ def main():
131143
)
132144
)
133145

134-
# OS-specific components
135-
ifsys.platform.startswith('linux')andnotbuild_headless:
136-
cmake_args.append("-DWITH_QT=4")
137-
138-
ifsys.platform=='darwin'andnotbuild_headless:
139-
cmake_args.append("-DWITH_QT=5")
140-
rearrange_cmake_output_data["cv2.qt.plugins.platforms"]= [
141-
(r"lib/qt/plugins/platforms/libqcocoa\.dylib")
142-
]
143-
144146
ifbuild_headless:
145147
# it seems that cocoa cannot be disabled so on macOS the package is not truly headless
146148
cmake_args.append("-DWITH_WIN32UI=OFF")
147149
cmake_args.append("-DWITH_QT=OFF")
148-
cmake_args.append(
149-
"-DWITH_MSMF=OFF"
150-
)# see: https://github.com/skvark/opencv-python/issues/263
150+
cmake_args.append("-DWITH_GTK=OFF")
151+
ifis_CI_build:
152+
cmake_args.append(
153+
"-DWITH_MSMF=OFF"
154+
)# see: https://github.com/skvark/opencv-python/issues/263
155+
156+
# OS-specific components during CI builds
157+
ifis_CI_build:
158+
ifsys.platform.startswith("linux")andnotbuild_headless:
159+
cmake_args.append("-DWITH_QT=4")
151160

152-
ifsys.platform.startswith("linux"):
153-
cmake_args.append("-DWITH_V4L=ON")
154-
cmake_args.append("-DWITH_LAPACK=ON")
155-
cmake_args.append("-DENABLE_PRECOMPILED_HEADERS=OFF")
161+
ifsys.platform=="darwin"andnotbuild_headless:
162+
cmake_args.append("-DWITH_QT=5")
163+
164+
ifsys.platform.startswith("linux"):
165+
cmake_args.append("-DWITH_V4L=ON")
166+
cmake_args.append("-DWITH_LAPACK=ON")
167+
cmake_args.append("-DENABLE_PRECOMPILED_HEADERS=OFF")
156168

157169
ifsys.platform.startswith("linux")andnotx64and"bdist_wheel"insys.argv:
158170
subprocess.check_call("patch -p0 < patches/patchOpenEXR",shell=True)
159171

160-
ifsys.platform=="darwin"and"bdist_wheel"insys.argv:
172+
if (
173+
sys.platform=="darwin"
174+
and"bdist_wheel"insys.argv
175+
and ("WITH_QT=5"insys.argvor"WITH_QT=5"incmake_args)
176+
):
177+
rearrange_cmake_output_data["cv2.qt.plugins.platforms"]= [
178+
(r"lib/qt/plugins/platforms/libqcocoa\.dylib")
179+
]
161180
subprocess.check_call("patch -p1 < patches/patchQtPlugins",shell=True)
162181

163182
# works via side effect
@@ -357,22 +376,25 @@ def _classify_installed_files_override(
357376
cmake_install_dir=cmake_install_reldir,
358377
)
359378

379+
360380
defget_opencv_version(contrib,headless):
361381
# cv2/version.py should be generated by running find_version.py
362382
version= {}
363383
here=os.path.abspath(os.path.dirname(__file__))
364384
version_file=os.path.join(here,"cv2","version.py")
365385

366-
ifnotos.path.exists(version_file):
367-
old_args=sys.argv.copy()
368-
sys.argv= ['',str(contrib),str(headless)]
369-
runpy.run_path("find_version.py",run_name="__main__")
370-
sys.argv=old_args
386+
# generate a fresh version.py always when Git repository exists
387+
ifos.path.exists(".git"):
388+
old_args=sys.argv.copy()
389+
sys.argv= ["",str(contrib),str(headless)]
390+
runpy.run_path("find_version.py",run_name="__main__")
391+
sys.argv=old_args
371392

372393
withopen(version_file)asfp:
373394
exec(fp.read(),version)
374395

375-
returnversion['opencv_version'],version['contrib'],version['headless']
396+
returnversion["opencv_version"],version["contrib"],version["headless"]
397+
376398

377399
defget_build_env_var_by_name(flag_name):
378400
flag_set=False
@@ -390,6 +412,7 @@ def get_build_env_var_by_name(flag_name):
390412

391413
returnflag_set
392414

415+
393416
# This creates a list which is empty but returns a length of 1.
394417
# Should make the wheel a binary distribution and platlib compliant.
395418
classEmptyListWithLength(list):

‎travis_config.sh‎

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ function bdist_wheel_cmd {
1414
# copied from multibuild's common_utils.sh
1515
# add osx deployment target so it doesnt default to 10.6
1616
local abs_wheelhouse=$1
17-
pip wheel --wheel-dir="$PWD/dist". --verbose$BDIST_PARAMS
17+
CI_BUILD=1pip wheel --wheel-dir="$PWD/dist". --verbose$BDIST_PARAMS
1818
cp dist/*.whl$abs_wheelhouse
1919
if [-n"$USE_CCACHE"-a-z"$BREW_BOOTSTRAP_MODE" ];then ccache -s;fi
2020
}
@@ -89,9 +89,11 @@ function pre_build {
8989

9090
local CACHE_STAGE; (echo"$TRAVIS_BUILD_STAGE_NAME"| grep -qiF"final")|| CACHE_STAGE=1
9191

92+
export HOMEBREW_FORCE_VENDOR_RUBY=1
93+
brew update
94+
9295
#after the cache stage, all bottles and Homebrew metadata should be already cached locally
9396
if [-n"$CACHE_STAGE" ];then
94-
brew update
9597
generate_ffmpeg_formula
9698
brew_add_local_bottles
9799
fi

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp