# This file was contributed to the Volatility Framework Version 3. # Copyright (C) 2018 Volatility Foundation. # # THE LICENSED WORK IS PROVIDED UNDER THE TERMS OF THE Volatility Contributors # Public License V1.0("LICENSE") AS FIRST COMPLETED BY: Volatility Foundation, # Inc. ANY USE, PUBLIC DISPLAY, PUBLIC PERFORMANCE, REPRODUCTION OR DISTRIBUTION # OF, OR PREPARATION OF SUBSEQUENT WORKS, DERIVATIVE WORKS OR DERIVED WORKS BASED # ON, THE LICENSED WORK CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS LICENSE AND ITS # TERMS, WHETHER OR NOT SUCH RECIPIENT READS THE TERMS OF THE LICENSE. "LICENSED # WORK,” “RECIPIENT" AND “DISTRIBUTOR" ARE DEFINED IN THE LICENSE. A COPY OF THE # LICENSE IS LOCATED IN THE TEXT FILE ENTITLED "LICENSE.txt" ACCOMPANYING THE # CONTENTS OF THIS FILE. IF A COPY OF THE LICENSE DOES NOT ACCOMPANY THIS FILE, A # COPY OF THE LICENSE MAY ALSO BE OBTAINED AT THE FOLLOWING WEB SITE: # https://www.volatilityfoundation.org/license/vcpl_v1.0 # # Software distributed under the License is distributed on an "AS IS" basis, # WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the # specific language governing rights and limitations under the License. # import os import sys from PyInstaller.building.api import PYZ, EXE from PyInstaller.building.build_main import Analysis from PyInstaller.utils.hooks import collect_submodules, collect_data_files block_cipher = None # Volatility must be findable in sys.path in order for collect_submodules to work # This adds the current working directory, which should usually do the trick sys.path.append(os.getcwd()) a = Analysis(['vol.py'], pathex = [], binaries = [], datas = collect_data_files('volatility.framework') + \ collect_data_files('volatility.framework.plugins', include_py_files = True) + \ collect_data_files('volatility.schemas') + \ collect_data_files('volatility.plugins', include_py_files = True), hiddenimports = collect_submodules('volatility.framework.plugins') + \ collect_submodules('volatility.plugins'), hookspath = [], runtime_hooks = [], excludes = [], win_no_prefer_redirects = False, win_private_assemblies = False, cipher = block_cipher, noarchive = False) pyz = PYZ(a.pure, a.zipped_data, cipher = block_cipher) exe = EXE(pyz, a.scripts, a.binaries, a.zipfiles, a.datas, [], name = 'vol', debug = False, bootloader_ignore_signals = False, strip = False, upx = True, runtime_tmpdir = None, console = True)