mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-11-12 20:23:11 +00:00
[pyinst] Automatically detect python architecture and working directory
:ci skip all
This commit is contained in:
parent
8a784c74d1
commit
ff88a05cff
@ -106,7 +106,7 @@ To build the Windows executable, you must have pyinstaller (and optionally mutag
|
|||||||
|
|
||||||
python -m pip install --upgrade pyinstaller mutagen
|
python -m pip install --upgrade pyinstaller mutagen
|
||||||
|
|
||||||
For the 64bit version, run `py devscripts\pyinst.py 64` using 64bit python3. Similarly, to install 32bit version, run `py devscripts\pyinst.py 32` using 32bit python (preferably 3)
|
Once you have all the necessary dependancies installed, just run `py devscripts\pyinst.py`. The executable will be built for the same architecture (32/64 bit) as the python used to build it. It is strongly reccomended to use python3 although python2.6+ is supported.
|
||||||
|
|
||||||
You can also build the executable without any version info or metadata by using:
|
You can also build the executable without any version info or metadata by using:
|
||||||
|
|
||||||
|
@ -1,5 +1,10 @@
|
|||||||
|
#!/usr/bin/env python
|
||||||
|
# coding: utf-8
|
||||||
|
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
import sys
|
import sys
|
||||||
|
import os
|
||||||
|
import platform
|
||||||
|
|
||||||
from PyInstaller.utils.win32.versioninfo import (
|
from PyInstaller.utils.win32.versioninfo import (
|
||||||
VarStruct, VarFileInfo, StringStruct, StringTable,
|
VarStruct, VarFileInfo, StringStruct, StringTable,
|
||||||
@ -7,13 +12,17 @@ from PyInstaller.utils.win32.versioninfo import (
|
|||||||
)
|
)
|
||||||
import PyInstaller.__main__
|
import PyInstaller.__main__
|
||||||
|
|
||||||
|
arch = sys.argv[1] if len(sys.argv) > 1 else platform.architecture()[0][:2]
|
||||||
|
assert arch in ('32', '64')
|
||||||
|
print('Building %sbit version' % arch)
|
||||||
|
_x86 = '_x86' if arch == '32' else ''
|
||||||
|
|
||||||
assert len(sys.argv) > 1 and sys.argv[1] in ("32", "64")
|
FILE_DESCRIPTION = 'Media Downloader%s' % (' (32 Bit)' if _x86 else '')
|
||||||
_x86 = "_x86" if sys.argv[1] == "32" else ""
|
SHORT_URLS = {'32': 'git.io/JUGsM', '64': 'git.io/JLh7K'}
|
||||||
|
|
||||||
FILE_DESCRIPTION = 'Media Downloader%s' % (" (32 Bit)" if _x86 else '')
|
|
||||||
SHORT_URLS = {"32": "git.io/JUGsM", "64": "git.io/JLh7K"}
|
|
||||||
|
|
||||||
|
root_dir = os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))
|
||||||
|
print('Changing working directory to %s' % root_dir)
|
||||||
|
os.chdir(root_dir)
|
||||||
|
|
||||||
exec(compile(open('youtube_dlc/version.py').read(), 'youtube_dlc/version.py', 'exec'))
|
exec(compile(open('youtube_dlc/version.py').read(), 'youtube_dlc/version.py', 'exec'))
|
||||||
VERSION = locals()['__version__']
|
VERSION = locals()['__version__']
|
||||||
@ -38,21 +47,21 @@ VERSION_FILE = VSVersionInfo(
|
|||||||
kids=[
|
kids=[
|
||||||
StringFileInfo([
|
StringFileInfo([
|
||||||
StringTable(
|
StringTable(
|
||||||
"040904B0", [
|
'040904B0', [
|
||||||
StringStruct("Comments", "Youtube-dlc%s Command Line Interface." % _x86),
|
StringStruct('Comments', 'Youtube-dlc%s Command Line Interface.' % _x86),
|
||||||
StringStruct("CompanyName", "pukkandan@gmail.com"),
|
StringStruct('CompanyName', 'pukkandan@gmail.com'),
|
||||||
StringStruct("FileDescription", FILE_DESCRIPTION),
|
StringStruct('FileDescription', FILE_DESCRIPTION),
|
||||||
StringStruct("FileVersion", VERSION),
|
StringStruct('FileVersion', VERSION),
|
||||||
StringStruct("InternalName", "youtube-dlc%s" % _x86),
|
StringStruct('InternalName', 'youtube-dlc%s' % _x86),
|
||||||
StringStruct(
|
StringStruct(
|
||||||
"LegalCopyright",
|
'LegalCopyright',
|
||||||
"pukkandan@gmail.com | UNLICENSE",
|
'pukkandan@gmail.com | UNLICENSE',
|
||||||
),
|
),
|
||||||
StringStruct("OriginalFilename", "youtube-dlc%s.exe" % _x86),
|
StringStruct('OriginalFilename', 'youtube-dlc%s.exe' % _x86),
|
||||||
StringStruct("ProductName", "Youtube-dlc%s" % _x86),
|
StringStruct('ProductName', 'Youtube-dlc%s' % _x86),
|
||||||
StringStruct("ProductVersion", "%s%s | %s" % (VERSION, _x86, SHORT_URLS[sys.argv[1]])),
|
StringStruct('ProductVersion', '%s%s | %s' % (VERSION, _x86, SHORT_URLS[arch])),
|
||||||
])]),
|
])]),
|
||||||
VarFileInfo([VarStruct("Translation", [0, 1200])])
|
VarFileInfo([VarStruct('Translation', [0, 1200])])
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user