Build and link microhttpd from gyp
BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1628363002 Review URL: https://codereview.chromium.org/1628363002
This commit is contained in:
parent
89061ed2e7
commit
8cc3f4e38f
43
gyp/microhttpd.gyp
Normal file
43
gyp/microhttpd.gyp
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
# Copyright 2016 Google Inc.
|
||||||
|
#
|
||||||
|
# Use of this source code is governed by a BSD-style license that can be
|
||||||
|
# found in the LICENSE file.
|
||||||
|
# A simple gyp file to generate microhttpd for internal purposes
|
||||||
|
# most of the work(configure and make) is performed in a python script
|
||||||
|
{
|
||||||
|
'targets': [
|
||||||
|
{
|
||||||
|
'target_name': 'microhttpd',
|
||||||
|
'type': 'static_library',
|
||||||
|
'variables': {
|
||||||
|
'base_dir%': '../third_party/libmicrohttpd',
|
||||||
|
'src_dir%': '../third_party/externals/microhttpd',
|
||||||
|
},
|
||||||
|
'direct_dependent_settings': {
|
||||||
|
'include_dirs': [
|
||||||
|
'<(src_dir)/src/include',
|
||||||
|
],
|
||||||
|
# for reasons I can't quite fathom, we need the below line to trigger
|
||||||
|
# a link
|
||||||
|
'libraries': [
|
||||||
|
'libmicrohttpd.a',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
'actions': [
|
||||||
|
{
|
||||||
|
'action_name': 'configure_and_build',
|
||||||
|
'inputs': [
|
||||||
|
'<(PRODUCT_DIR)/',
|
||||||
|
],
|
||||||
|
'outputs': [ '<(PRODUCT_DIR)/libmicrohttpd.a' ],
|
||||||
|
'action': [
|
||||||
|
'python',
|
||||||
|
'<(base_dir)/build.py',
|
||||||
|
'--src', '<(src_dir)',
|
||||||
|
'--dst', '<(PRODUCT_DIR)',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
}
|
@ -12,11 +12,6 @@
|
|||||||
{
|
{
|
||||||
'target_name': 'skiaserve',
|
'target_name': 'skiaserve',
|
||||||
'type': 'executable',
|
'type': 'executable',
|
||||||
'include_dirs': [
|
|
||||||
'../src/core',
|
|
||||||
#TODO make this a real project
|
|
||||||
'../third_party/externals/microhttpd/src/include',
|
|
||||||
],
|
|
||||||
'sources': [
|
'sources': [
|
||||||
'<!@(python find.py ../tools/skiaserve "*.cpp")',
|
'<!@(python find.py ../tools/skiaserve "*.cpp")',
|
||||||
],
|
],
|
||||||
@ -24,20 +19,12 @@
|
|||||||
'flags.gyp:flags',
|
'flags.gyp:flags',
|
||||||
'gputest.gyp:skgputest',
|
'gputest.gyp:skgputest',
|
||||||
'jsoncpp.gyp:jsoncpp',
|
'jsoncpp.gyp:jsoncpp',
|
||||||
|
'microhttpd.gyp:microhttpd',
|
||||||
'skia_lib.gyp:skia_lib',
|
'skia_lib.gyp:skia_lib',
|
||||||
'tools.gyp:crash_handler',
|
'tools.gyp:crash_handler',
|
||||||
'tools.gyp:proc_stats',
|
'tools.gyp:proc_stats',
|
||||||
'tools.gyp:resources',
|
'tools.gyp:resources',
|
||||||
],
|
],
|
||||||
#TODO real libmicrohttpd gyp
|
|
||||||
'link_settings': {
|
|
||||||
'ldflags': [
|
|
||||||
'-L../../third_party/externals/microhttpd/src/microhttpd/.libs',
|
|
||||||
],
|
|
||||||
'libraries': [
|
|
||||||
'-lmicrohttpd',
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
|
34
third_party/libmicrohttpd/build.py
vendored
Normal file
34
third_party/libmicrohttpd/build.py
vendored
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
# Copyright 2016 Google Inc.
|
||||||
|
#
|
||||||
|
# Use of this source code is governed by a BSD-style license that can be
|
||||||
|
# found in the LICENSE file.
|
||||||
|
|
||||||
|
# this script will configure and build microhttpd in a temp directory and then
|
||||||
|
# copy the static library generated to a destination folder
|
||||||
|
import argparse
|
||||||
|
import os
|
||||||
|
from subprocess import call
|
||||||
|
import shutil
|
||||||
|
import tempfile
|
||||||
|
|
||||||
|
parser = argparse.ArgumentParser()
|
||||||
|
parser.add_argument("--src", help="microhttpd src directory")
|
||||||
|
parser.add_argument("--dst", help="output for build files")
|
||||||
|
args = parser.parse_args()
|
||||||
|
|
||||||
|
temp_dir = tempfile.mkdtemp()
|
||||||
|
cwd = os.getcwd()
|
||||||
|
os.chdir(temp_dir)
|
||||||
|
call([cwd + "/" + args.src + "/configure",
|
||||||
|
"--disable-doc",
|
||||||
|
"--disable-examples",
|
||||||
|
"--enable-https=no",
|
||||||
|
"--disable-curl",
|
||||||
|
"--enable-spdy=no",
|
||||||
|
"--enable-shared=no"])
|
||||||
|
call(["make", "--silent"])
|
||||||
|
call(["cp",
|
||||||
|
temp_dir + "/src/microhttpd/.libs/libmicrohttpd.a",
|
||||||
|
cwd + "/" + args.dst])
|
||||||
|
shutil.rmtree(temp_dir)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user