From ad58d5161fd2ad067c6c2d78f3ff6490e076bf53 Mon Sep 17 00:00:00 2001 From: rdb Date: Wed, 3 Jan 2018 12:24:31 +0100 Subject: [PATCH] installpanda: set proper permissions on includes/man pages Fixes: #159 --- makepanda/installpanda.py | 8 ++++++++ makepanda/makepanda.py | 8 ++++---- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/makepanda/installpanda.py b/makepanda/installpanda.py index fa9c744927..98839315e4 100644 --- a/makepanda/installpanda.py +++ b/makepanda/installpanda.py @@ -233,6 +233,14 @@ def InstallPanda(destdir="", prefix="/usr", outputdir="built", libdir=GetLibDir( DeleteBuildFiles(destdir+prefix+"/include/panda3d") DeleteEmptyDirs(destdir+prefix+"/include/panda3d") + # Change permissions on include directory. + os.chmod(destdir + prefix + "/include", 0o755) + for root, dirs, files in os.walk(destdir + prefix + "/include"): + for basename in dirs: + os.chmod(os.path.join(root, basename), 0o755) + for basename in files: + os.chmod(os.path.join(root, basename), 0o644) + # rpmlint doesn't like this file, for some reason. if (os.path.isfile(destdir+prefix+"/share/panda3d/direct/leveleditor/copyfiles.pl")): os.remove(destdir+prefix+"/share/panda3d/direct/leveleditor/copyfiles.pl") diff --git a/makepanda/makepanda.py b/makepanda/makepanda.py index 4bd471ed37..291bfc2cb4 100755 --- a/makepanda/makepanda.py +++ b/makepanda/makepanda.py @@ -6654,8 +6654,8 @@ def MakeInstallerLinux(): else: InstallPanda(destdir="targetroot", prefix="/usr", outputdir=GetOutputDir(), libdir=lib_dir) oscmd("chmod -R 755 targetroot/usr/share/panda3d") - oscmd("mkdir -p targetroot/usr/share/man/man1") - oscmd("cp doc/man/*.1 targetroot/usr/share/man/man1/") + oscmd("mkdir -m 0755 -p targetroot/usr/share/man/man1") + oscmd("install -m 0644 doc/man/*.1 targetroot/usr/share/man/man1/") oscmd("dpkg --print-architecture > "+GetOutputDir()+"/tmp/architecture.txt") pkg_arch = ReadFile(GetOutputDir()+"/tmp/architecture.txt").strip() @@ -6815,8 +6815,8 @@ def MakeInstallerOSX(): # Trailing newline is important, works around a bug in OSX WriteFile("dstroot/tools/etc/paths.d/Panda3D", "/Developer/Panda3D/bin\n") - oscmd("mkdir -p dstroot/tools/usr/local/share/man/man1") - oscmd("cp doc/man/*.1 dstroot/tools/usr/local/share/man/man1/") + oscmd("mkdir -m 0755 -p dstroot/tools/usr/local/share/man/man1") + oscmd("install -m 0644 doc/man/*.1 dstroot/tools/usr/local/share/man/man1/") for base in os.listdir(GetOutputDir()+"/bin"): binname = "dstroot/tools/Developer/Panda3D/bin/" + base