summaryrefslogtreecommitdiffstats
path: root/tools/gccld
diff options
context:
space:
mode:
Diffstat (limited to 'tools/gccld')
-rw-r--r--tools/gccld/gccld.cpp19
1 files changed, 3 insertions, 16 deletions
diff --git a/tools/gccld/gccld.cpp b/tools/gccld/gccld.cpp
index 4133de5..1fd1b74 100644
--- a/tools/gccld/gccld.cpp
+++ b/tools/gccld/gccld.cpp
@@ -21,6 +21,7 @@
#include "llvm/Target/TargetData.h"
#include "llvm/Transforms/IPO.h"
#include "llvm/Transforms/Scalar.h"
+#include "Support/FileUtilities.h"
#include "Support/CommandLine.h"
#include "Support/Signals.h"
#include <fstream>
@@ -433,9 +434,6 @@ int main(int argc, char **argv) {
Out.close();
if (!LinkAsLibrary) {
- // Permissions masking value of the user
- mode_t mask;
-
// Output the script to start the program...
std::ofstream Out2(OutputFilename.c_str());
if (!Out2.good())
@@ -444,22 +442,11 @@ int main(int argc, char **argv) {
Out2 << "#!/bin/sh\nlli -q -abort-on-exception $0.bc $*\n";
Out2.close();
- //
- // Grab the umask value from the operating system. We want to use it when
- // changing the file's permissions.
- //
- // Note:
- // Umask() is one of those annoying system calls. You have to call it
- // to get the current value and then set it back.
- //
- mask = umask (0);
- umask (mask);
-
// Make the script executable...
- chmod(OutputFilename.c_str(), (0755 & ~mask));
+ MakeFileExecutable (OutputFilename);
// Make the bytecode file directly executable in LLEE as well
- chmod(RealBytecodeOutput.c_str(), (0755 & ~mask));
+ MakeFileExecutable (RealBytecodeOutput);
}
return 0;