def extract(self): if os.path.exists(self.build_dir): try: commit_hash = git.get_hash(self.repo_dir, self.commit) checkout_hash = git.get_hash(self.build_dir, 'HEAD') if commit_hash == checkout_hash and not self.patches: return False except Exception: pass shutil.rmtree(self.build_dir) if not os.path.exists(self.build_dir): os.mkdir(self.build_dir) # checkout the current version git.local_checkout(self.build_dir, self.repo_dir, self.commit) for patch in self.patches: if not os.path.isabs(patch): patch = self.relative_path(patch) if self.strip == 1: git.apply_patch(patch, self.build_dir) else: shell.apply_patch(patch, self.build_dir, self.strip) return True
def extract(self): if os.path.exists(self.build_dir): # fix read-only permissions if self.config.platform == Platform.WINDOWS: shell.call('chmod -R +w .git/', self.build_dir, fail=False) try: commit_hash = git.get_hash(self.repo_dir, self.commit) checkout_hash = git.get_hash(self.build_dir, 'HEAD') if commit_hash == checkout_hash and not self.patches: return False except Exception: pass shutil.rmtree(self.build_dir) if not os.path.exists(self.build_dir): os.mkdir(self.build_dir) # checkout the current version git.local_checkout(self.build_dir, self.repo_dir, self.commit) for patch in self.patches: if not os.path.isabs(patch): patch = self.relative_path(patch) if self.strip == 1: git.apply_patch(patch, self.build_dir) else: shell.apply_patch(patch, self.build_dir, self.strip) return True
def extract(self): if os.path.exists(self.build_dir): shutil.rmtree(self.build_dir) os.mkdir(self.build_dir) if self.supports_non_src_build: return # checkout the current version git.local_checkout(self.build_dir, self.repo_dir, self.commit) self.apply_patches() return True
def extract(self): if os.path.exists(self.build_dir): # fix read-only permissions if self.config.platform == Platform.WINDOWS: shell.call('chmod -R +w .git/', self.build_dir, fail=False) try: commit_hash = git.get_hash(self.repo_dir, self.commit) checkout_hash = git.get_hash(self.build_dir, 'HEAD') if commit_hash == checkout_hash: return False except Exception: pass shutil.rmtree(self.build_dir) if not os.path.exists(self.build_dir): os.mkdir(self.build_dir) if self.supports_non_src_build: return # checkout the current version git.local_checkout(self.build_dir, self.repo_dir, self.commit) return True