Convert generate_doxygen.sh to generate_doxygen.py

This makes it easier to generate Doxygen documentation on Windows.

Change-Id: I14c203d2618d8321d5a94d836de434bbaa21c3c9
Reviewed-on: https://chromium-review.googlesource.com/461403
Reviewed-by: Scott Graham <scottmg@chromium.org>
This commit is contained in:
Mark Mentovai 2017-03-28 14:58:45 -04:00
parent 96dc950eaf
commit 3127026a95
3 changed files with 50 additions and 30 deletions

View File

@ -28,7 +28,7 @@ cd "$(dirname "${0}")/../.."
source doc/support/compat.sh
doc/support/generate_doxygen.sh
python doc/support/generate_doxygen.py
output_dir=doc/generated
maybe_mkdir "${output_dir}"

49
doc/support/generate_doxygen.py Executable file
View File

@ -0,0 +1,49 @@
#!/usr/bin/env python
# coding: utf-8
# Copyright 2017 The Crashpad Authors. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# Generating Doxygen documentation requires Doxygen, http://www.doxygen.org/.
import os
import shutil
import subprocess
import sys
def main(args):
script_dir = os.path.dirname(__file__)
crashpad_dir = os.path.join(script_dir, os.pardir, os.pardir)
# Run from the Crashpad project root directory.
os.chdir(crashpad_dir)
output_dir = os.path.join('out', 'doc', 'doxygen')
if os.path.isdir(output_dir) and not os.path.islink(output_dir):
shutil.rmtree(output_dir)
elif os.path.exists(output_dir):
os.unlink(output_dir)
os.makedirs(output_dir, 0755)
doxy_file = os.path.join('doc', 'support', 'crashpad.doxy')
subprocess.check_call(['doxygen', doxy_file])
return 0
if __name__ == '__main__':
sys.exit(main(sys.argv[1:]))

View File

@ -1,29 +0,0 @@
#!/bin/sh
# Copyright 2015 The Crashpad Authors. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
set -e
# Generating Doxygen documentation requires Doxygen, http://www.doxygen.org/.
# Run from the Crashpad project root directory.
cd "$(dirname "${0}")/../.."
output_dir=out/doc/doxygen
rm -rf "${output_dir}"
mkdir -p "${output_dir}"
doxygen doc/support/crashpad.doxy