diff options
author | James Bottomley <JBottomley@Parallels.com> | 2015-01-24 17:48:30 -0800 |
---|---|---|
committer | James Bottomley <JBottomley@Parallels.com> | 2015-01-24 17:50:49 -0800 |
commit | 5869f039c52cbe4ade49152dfd386ef27d297db5 (patch) | |
tree | 487e9016cdbbfc3f16bba67955294c7a1f7a8926 | |
parent | e2bd80690bc6b636fd117040257b2160c71263a6 (diff) | |
download | Quark_EDKII-5869f039c52cbe4ade49152dfd386ef27d297db5.tar.gz |
Add External dependencies
These are edk2 at branch UDK2010.SR1 commit r13937 and edk-FatPkg on trunk at
commit r69
This mirrors the svn setup, but using git submodules, so delete all the svn
crap.
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
-rw-r--r-- | .gitmodules | 6 | ||||
m--------- | .module/edk2 | 0 | ||||
l--------- | BaseTools | 1 | ||||
l--------- | CryptoPkg | 1 | ||||
l--------- | EdkShellBinPkg | 1 | ||||
m--------- | FatPkg | 0 | ||||
l--------- | IntelFrameworkModulePkg | 1 | ||||
l--------- | IntelFrameworkPkg | 1 | ||||
l--------- | MdeModulePkg | 1 | ||||
l--------- | MdePkg | 1 | ||||
l--------- | PcAtChipsetPkg | 1 | ||||
l--------- | SecurityPkg | 1 | ||||
l--------- | ShellPkg | 1 | ||||
l--------- | SourceLevelDebugPkg | 1 | ||||
l--------- | UefiCpuPkg | 1 | ||||
-rwxr-xr-x | svn_externals.txt | 13 | ||||
-rwxr-xr-x | svn_setup.py | 232 |
17 files changed, 18 insertions, 245 deletions
diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..e4f8e93 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,6 @@ +[submodule ".module/edk2"] + path = .module/edk2 + url = git://github.com/tianocore/edk2 +[submodule "FatPkg"] + path = FatPkg + url = git://github.com/tianocore/edk2-FatPkg diff --git a/.module/edk2 b/.module/edk2 new file mode 160000 +Subproject 366845ab2a7a9d70dcfb251d6935dfa8442943e diff --git a/BaseTools b/BaseTools new file mode 120000 index 0000000..7c8795c --- /dev/null +++ b/BaseTools @@ -0,0 +1 @@ +.module/edk2/BaseTools
\ No newline at end of file diff --git a/CryptoPkg b/CryptoPkg new file mode 120000 index 0000000..1119819 --- /dev/null +++ b/CryptoPkg @@ -0,0 +1 @@ +.module/edk2/CryptoPkg
\ No newline at end of file diff --git a/EdkShellBinPkg b/EdkShellBinPkg new file mode 120000 index 0000000..05ae006 --- /dev/null +++ b/EdkShellBinPkg @@ -0,0 +1 @@ +.module/edk2/EdkShellBinPkg
\ No newline at end of file diff --git a/FatPkg b/FatPkg new file mode 160000 +Subproject aac0302cad3a31e33e1febd57a6d50a7744e7d3 diff --git a/IntelFrameworkModulePkg b/IntelFrameworkModulePkg new file mode 120000 index 0000000..742339b --- /dev/null +++ b/IntelFrameworkModulePkg @@ -0,0 +1 @@ +.module/edk2/IntelFrameworkModulePkg
\ No newline at end of file diff --git a/IntelFrameworkPkg b/IntelFrameworkPkg new file mode 120000 index 0000000..1d357bd --- /dev/null +++ b/IntelFrameworkPkg @@ -0,0 +1 @@ +.module/edk2/IntelFrameworkPkg
\ No newline at end of file diff --git a/MdeModulePkg b/MdeModulePkg new file mode 120000 index 0000000..cacf150 --- /dev/null +++ b/MdeModulePkg @@ -0,0 +1 @@ +.module/edk2/MdeModulePkg
\ No newline at end of file @@ -0,0 +1 @@ +.module/edk2/MdePkg
\ No newline at end of file diff --git a/PcAtChipsetPkg b/PcAtChipsetPkg new file mode 120000 index 0000000..61fe94a --- /dev/null +++ b/PcAtChipsetPkg @@ -0,0 +1 @@ +.module/edk2/PcAtChipsetPkg
\ No newline at end of file diff --git a/SecurityPkg b/SecurityPkg new file mode 120000 index 0000000..82bc654 --- /dev/null +++ b/SecurityPkg @@ -0,0 +1 @@ +.module/edk2/SecurityPkg
\ No newline at end of file diff --git a/ShellPkg b/ShellPkg new file mode 120000 index 0000000..bd623b5 --- /dev/null +++ b/ShellPkg @@ -0,0 +1 @@ +.module/edk2/ShellPkg
\ No newline at end of file diff --git a/SourceLevelDebugPkg b/SourceLevelDebugPkg new file mode 120000 index 0000000..c1867d0 --- /dev/null +++ b/SourceLevelDebugPkg @@ -0,0 +1 @@ +.module/edk2/SourceLevelDebugPkg
\ No newline at end of file diff --git a/UefiCpuPkg b/UefiCpuPkg new file mode 120000 index 0000000..8b6e747 --- /dev/null +++ b/UefiCpuPkg @@ -0,0 +1 @@ +.module/edk2/UefiCpuPkg
\ No newline at end of file diff --git a/svn_externals.txt b/svn_externals.txt deleted file mode 100755 index 613f4d0..0000000 --- a/svn_externals.txt +++ /dev/null @@ -1,13 +0,0 @@ -BaseTools -r13937 http://svn.code.sf.net/p/edk2/code/branches/UDK2010.SR1/BaseTools
-MdePkg -r13937 http://svn.code.sf.net/p/edk2/code/branches/UDK2010.SR1/MdePkg
-MdeModulePkg -r13937 http://svn.code.sf.net/p/edk2/code/branches/UDK2010.SR1/MdeModulePkg
-IntelFrameworkPkg -r13937 http://svn.code.sf.net/p/edk2/code/branches/UDK2010.SR1/IntelFrameworkPkg
-IntelFrameworkModulePkg -r13937 http://svn.code.sf.net/p/edk2/code/branches/UDK2010.SR1/IntelFrameworkModulePkg
-EdkShellBinPkg -r13937 http://svn.code.sf.net/p/edk2/code/branches/UDK2010.SR1/EdkShellBinPkg
-PcAtChipsetPkg -r13937 http://svn.code.sf.net/p/edk2/code/branches/UDK2010.SR1/PcAtChipsetPkg
-UefiCpuPkg -r13937 http://svn.code.sf.net/p/edk2/code/branches/UDK2010.SR1/UefiCpuPkg
-ShellPkg -r13937 http://svn.code.sf.net/p/edk2/code/branches/UDK2010.SR1/ShellPkg
-SourceLevelDebugPkg -r13937 http://svn.code.sf.net/p/edk2/code/branches/UDK2010.SR1/SourceLevelDebugPkg
-CryptoPkg -r13937 http://svn.code.sf.net/p/edk2/code/branches/UDK2010.SR1/CryptoPkg
-SecurityPkg -r13937 http://svn.code.sf.net/p/edk2/code/branches/UDK2010.SR1/SecurityPkg
-FatPkg -r67 http://svn.code.sf.net/p/edk2-fatdriver2/code/trunk/FatPkg
diff --git a/svn_setup.py b/svn_setup.py deleted file mode 100755 index 85cc63d..0000000 --- a/svn_setup.py +++ /dev/null @@ -1,232 +0,0 @@ -#!/usr/bin/env python - -# Copyright (c) 2013 Intel Corporation. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# -# * Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# * Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in -# the documentation and/or other materials provided with the -# distribution. -# * Neither the name of Intel Corporation nor the names of its -# contributors may be used to endorse or promote products derived -# from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -# Marc Herbert - -from __future__ import print_function - -import os -import shutil -import stat -import sys -import subprocess -import time -import tempfile - -DEBUG=False -SVN_EXTERNALS_FILE = "svn_externals.txt" - - -def isWindows(): - return os.name == 'nt' - -def info(*objs): - print("INFO: ", *objs, end='\n', file=sys.stdout) - sys.stdout.flush() -def warning(*objs): - print("WARNING: ", *objs, end='\n', file=sys.stdout) - sys.stdout.flush() -def error(*objs): - print("ERROR: ", *objs, end='\n', file=sys.stderr) - sys.stderr.flush() - -def die(*objs): - error(*objs) - if isWindows(): - subprocess.call("cmd /c PAUSE") - sys.exit(1) - -#import inspect -#info("Running ", os.path.abspath(inspect.getsourcefile(mainf))) - -DOTDOT = os.path.dirname(os.getcwd()) -CLONE_BASENAME = os.path.basename(os.getcwd()) -ADHOC = CLONE_BASENAME + "-svn_externals.repo" -# '@' is a special character for subversion (peg revisions) -ADHOC = ADHOC.replace('@', '_at_') -ADHOC_PATH = os.path.join(DOTDOT, ADHOC) - -# info("Parent directory:", DOTDOT) -info("Ad-hoc SVN repo:", ADHOC_PATH) - - -def my_system(args): - - if DEBUG: - info("About to run:", args) - time.sleep(2) - else: - info("Running:", ' '.join(args)) - - # - stdout: Python has no portable, non-blocking read operation on - # pipes so we cannot capture long, progress information on the - # fly. So we just let stdout be inherited. - # http://www.python.org/dev/peps/pep-3145/ - - # -stderr: On the other hand we assume stderr will be small and - # final and want to know if there is any error message all, so we - # block-read on it. As a bonus feature this gets rid of the extra - # command window on Windows. - child = subprocess.Popen(args, stderr=subprocess.PIPE) - err = child.stderr.read() - child.wait() - - if err: - die("stderr output of: ", args, "\n", err) - - if child.returncode: - die(args, "returned: ", child.returncode) - - if DEBUG: - info("Done running:", args) - time.sleep(2) - - -def setup_externals(): - - # Try something harmless first to make sure the command line is - # installed and in the PATH - try: - info("SVN version:") - subprocess.check_call(["svn", "--version", "--quiet"]) - except BaseException as e: - print (type(e).__name__ + ":", e) - die("Failed to run Subversion command line, please make sure it is installed and in the PATH") - - # Make room - for old_dir in [ '.svn', ADHOC_PATH ]: - if os.path.exists(old_dir): - warning("Removing older", old_dir) - for p, dirs, files in os.walk(old_dir): - for f in files: - # print (os.path.join(p,f)) - os.chmod(os.path.join(p,f), stat.S_IWRITE) - - shutil.rmtree(old_dir) - - - my_system([ "svnadmin", "create", ADHOC_PATH ]) - - my_system([ "svn", "checkout", "file:///" + ADHOC_PATH, os.path.join(os.getcwd(), ADHOC) ]) - - # Don't do this at home - shutil.move(os.path.join(ADHOC, '.svn'), '.') - os.rmdir(ADHOC) - - # Note: if you want ever want to do this from TortoiseSVN graphical - # interface go to the "New->Advanced->Load" menu item in the - # Properties dialog box - my_system([ "svn", "propset", "svn:externals", "-F", SVN_EXTERNALS_FILE, "." ]) - my_system([ "svn", "commit", "--depth", "empty", "--message", "Add svn:externals", "." ]) - - -def get_external_dirs(): - "Parses the SVN_EXTERNALS_FILE and returns the list of directories from it" - - def get_dir(external): - location = external.split()[-1] - return os.path.split(location)[-1] - - with open(SVN_EXTERNALS_FILE) as f: - return [ get_dir(lin) for lin in f ] - - -def parse_arguments(): - from optparse import OptionParser - parser = OptionParser(usage="usage: %prog [options]") - parser.add_option("--gitignore", action="store_true", dest="gitignore", - help="Appends SVN objects to .gitignore (does not commit)") - parser.add_option("--download", action="store_true", dest="download", - help="Runs svn update to download externals once setup is complete (takes time)") - parser.add_option("--delete", action="store_true", dest="wipeout", - help="Deletes everything that is or would be in the way of --download. \ -This is a destructive way to help --download succeed. \ -Does NOT imply --download: both can be used independently") - - (options, args) = parser.parse_args() - - # Gather parsed command line and defaults and define the parameters - global svn_update, wipeout, gitignore - svn_update, wipeout, gitignore = options.download, options.wipeout, options.gitignore - - -def mainf(*m_args): - # Overrides sys.argv when testing (interactive or in main below) - if m_args: - info("testing with args:", m_args) - sys.argv = ["testing main"] + list(m_args) - - parse_arguments() - - setup_externals() - - # svn:ignore the stuff tracked by git - # TODO: could this somehow work on Windows with Git Extensions? - if os.path.exists(".git") and not isWindows(): - with tempfile.NamedTemporaryFile(prefix="setupSVNext_") as tempf: - subprocess.check_call(["git", "ls-tree", "HEAD", "--name-only"], stdout=tempf) - tempf.write(b'.git') - my_system([ "svn", "propset", "svn:ignore", "-F", tempf.name, "." ]) - - # .gitignore the stuff tracked by svn - if gitignore: - info("Updating .gitignore") - with open (".gitignore", 'a') as gi: - ignored = get_external_dirs() + [ '.svn' ] - for dir in ignored: - print('/' + dir, file=gi ) - - if wipeout: - ext_directories = get_external_dirs() - for e in ext_directories: - if os.path.exists(e): - warning("Now removing previous ", e, "/") - shutil.rmtree(e) - - if svn_update: - my_system([ "svn", "update" ]) - - -if __name__ == "__main__": - if True: # make it False to run test code below - ret = mainf() - else: - # Test/sample invocations (can test multiple in one run) - # mainf("--help") - ret = mainf(--gitignore) - # ret = mainf("--wipeout", "--download") - # mainf("--download") - - if isWindows(): - # We assume the user double-clicked on the script and we give a chance to see what happened - # Before the window goes away - subprocess.call("cmd /c PAUSE") - - sys.exit(ret) |