| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This method was only used by the Windows-specific
code so move it there and adapt it to Windows
paths.
Update AsWindowsPath to normalize its output: this
is necessary because AsWindowsPath's output is a
widechar path string which we often prefix with
the UNC prefix, but such paths must be normalized
(the kernel won't do it if the path has an UNC
prefix).
Finally, add an AsWindowsPathWithUncPrefix method
which does what the name suggests: converts the
path to Windows path, makes it absolute, and adds
the UNC prefix if necessary. (This is a very common
operation when calling WinAPI functions and we'll
use it a lot in subsequent changes.)
See https://github.com/bazelbuild/bazel/issues/2107
--
PiperOrigin-RevId: 144060297
MOS_MIGRATED_REVID=144060297
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This method can normalize paths with "." and ".."
and multiple "/" characters.
E.g. normalize("../foo/./bar/../baz") = "foo/baz"
This method enables us implementing PathExists on
Windows. If the path to check is too long, we need
to prefix it with "\\?\" for the Windows API
functions to work, but then the path must be
fully normalized and in Windows format. We already
have functions to convert a path to Windows format
but that doesn't normalize; with this function we
can finally convert paths like "/c/foo/../bar" to
L"\\?\c:\foo" and check if it exists.
See https://github.com/bazelbuild/bazel/issues/2107
See https://github.com/bazelbuild/bazel/issues/2181
--
PiperOrigin-RevId: 142648194
MOS_MIGRATED_REVID=142648194
|
|
|
|
|
|
|
|
|
|
|
| |
This allows correct behavior of Dirname and
Basename on Windows.
See https://github.com/bazelbuild/bazel/issues/2107
--
PiperOrigin-RevId: 142441234
MOS_MIGRATED_REVID=142441234
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Final modifications to the Bazel client code so
we can compile //src/main/cpp/...:all using MSVC.
Yay!
We still have some dependencies that don't compile
with MSVC, namely Ijar, build-runfiles,
process-wrapper, and process-tools.
Still, this change is a huge success, because now
we can add regression tests to prevent people from
introducing breaking changes to the client that
would break Windows/MSVC compilation.
It's important to point out that we can only build
this library for now, most functions in
file_windows.cc and blaze_util_windows.cc have an
empty body (they just call `pdie`).
See https://github.com/bazelbuild/bazel/issues/2107
--
MOS_MIGRATED_REVID=140348351
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Move blaze::ReadFile and blaze::WriteFile to
file.h and file_platform.h (thus into the
blaze_util namespace), and update references.
This allows us to implement these methods in a
platform-specific way.
Also move UnlinkPath.
See https://github.com/bazelbuild/bazel/issues/2107
--
MOS_MIGRATED_REVID=140328273
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change:
- merges the //src/{main,test}/cpp:file and
//src/{main,test}/cpp:file_platform libraries
because "file" and "file_platform" need each other
and this makes logical sense anyway
- implements a function in file_<platform> to run
a custom function on every child of a directory
- implements a function in file.cc to recursively
traverse a directory tree, based on the previosly
mentioned function
- removes the corresponding logic from the Bazel
client to make it more portable
--
MOS_MIGRATED_REVID=139309562
|
|
|
|
|
|
|
|
|
|
|
| |
* remove "using std::" declarations from header files
* add missing "std::" to some string declarations at some header files
* add "using std::string;" to some source files where necessary
--
Change-Id: Ib64f62b5add499d6171fa922227194ac992fa542
Reviewed-on: https://bazel-review.googlesource.com/#/c/6630/
MOS_MIGRATED_REVID=136355671
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This method is only used by blaze_util_linux.cc so
instead of porting it to Windows, I'm moving it to
a separate library.
As part of this change I'm creating separate
libraries for other sources in //src/main/cpp/util
as well, so their dependencies are clearly defined
in the BUILD file, plus we can port them one by
one.
This is part of the effort of compiling Bazel on
Windows with the MSVC toolchain.
--
MOS_MIGRATED_REVID=134636777
|
|
|
|
|
|
| |
--
Reviewed-on: https://github.com/bazelbuild/bazel/pull/571
MOS_MIGRATED_REVID=107471259
|
|
|
|
|
|
|
|
|
|
|
| |
The headers were modified with
`find . -type f -exec 'sed' '-Ei' 's|Copyright 201([45]) Google|Copyright 201\1 The Bazel Authors|' '{}' ';'`
And manual edit for not Google owned copyright. Because of the nature of ijar, I did not modified the header of file owned by Alan Donovan.
The list of authors were extracted from the git log. It is missing older Google contributors that can be added on-demand.
--
MOS_MIGRATED_REVID=103938715
|
|
|
|
|
|
|
|
| |
This is so util/ files do not depend on anything from higer level.
--
Change-Id: I522be6722851f25e79d9c2b85275856cbbd978de
MOS_MIGRATED_REVID=91882837
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=91681168
|
|
|
|
|
|
|
|
| |
getenv() returns value was not checked for non-null result and it led
to exception raised at runtime on some corner case (see bug #113).
--
MOS_MIGRATED_REVID=91071694
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Looks like in the transition it was forgotten to be moved to the new
location.
As an effect of this change it was discovered that file.cc had an
dependency back on blaze_util.cc (from client binary for die/pdie functions).
In order to fix that dependency we have had to move die/pdie functions into
util library (added errors.(cc|h)) for this.
Tested on Linux with the following command lines:
$ ./compile.sh
$ ./output/bazel build //src/main/cpp:all
$ ./output/bazel build //src:bazel
$ ./bootstrap_test.sh all
--
Change-Id: I70fb1b6189dc5af31f816332d76efe380ef26302
MOS_MIGRATED_REVID=90987514
|
|
--
MOE_MIGRATED_REVID=85702957
|