diff options
Diffstat (limited to 'build/temp_gyp')
-rw-r--r-- | build/temp_gyp/README.chromium | 3 | ||||
-rw-r--r-- | build/temp_gyp/SConstruct | 2 | ||||
-rw-r--r-- | build/temp_gyp/googleurl.Makefile | 6 | ||||
-rw-r--r-- | build/temp_gyp/googleurl.gyp | 112 | ||||
-rw-r--r-- | build/temp_gyp/googleurl.scons | 343 | ||||
-rw-r--r-- | build/temp_gyp/googleurl.target.mk | 169 | ||||
-rw-r--r-- | build/temp_gyp/googleurl_main.scons | 339 | ||||
-rw-r--r-- | build/temp_gyp/googleurl_unittests.scons | 421 | ||||
-rw-r--r-- | build/temp_gyp/googleurl_unittests.target.mk | 168 | ||||
-rw-r--r-- | build/temp_gyp/pdfsqueeze.gyp | 46 |
10 files changed, 1609 insertions, 0 deletions
diff --git a/build/temp_gyp/README.chromium b/build/temp_gyp/README.chromium new file mode 100644 index 0000000..8045d61 --- /dev/null +++ b/build/temp_gyp/README.chromium @@ -0,0 +1,3 @@ +This directory will be removed once the files in it are committed upstream and +Chromium imports an upstream revision with these files. Contact mark for +details. diff --git a/build/temp_gyp/SConstruct b/build/temp_gyp/SConstruct new file mode 100644 index 0000000..176b283 --- /dev/null +++ b/build/temp_gyp/SConstruct @@ -0,0 +1,2 @@ +# This file is generated; do not edit. +SConscript('googleurl_main.scons') diff --git a/build/temp_gyp/googleurl.Makefile b/build/temp_gyp/googleurl.Makefile new file mode 100644 index 0000000..6c8a6d6 --- /dev/null +++ b/build/temp_gyp/googleurl.Makefile @@ -0,0 +1,6 @@ +# This file is generated by gyp; do not edit. + +export builddir_name ?= /usr/local/google/src/chromium-merge/src/build/temp_gyp/out +.PHONY: all +all: + $(MAKE) -C ../.. googleurl googleurl_unittests diff --git a/build/temp_gyp/googleurl.gyp b/build/temp_gyp/googleurl.gyp new file mode 100644 index 0000000..9a2eda3 --- /dev/null +++ b/build/temp_gyp/googleurl.gyp @@ -0,0 +1,112 @@ +# Copyright (c) 2009 The Chromium Authors. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. + +# TODO(mark): Upstream this file to googleurl. +{ + 'variables': { + 'chromium_code': 1, + }, + 'targets': [ + { + 'target_name': 'googleurl', + 'type': '<(component)', + 'msvs_guid': 'EF5E94AB-B646-4E5B-A058-52EF07B8351C', + 'dependencies': [ + '../../base/base.gyp:base', + '../../third_party/icu/icu.gyp:icudata', + '../../third_party/icu/icu.gyp:icui18n', + '../../third_party/icu/icu.gyp:icuuc', + ], + 'sources': [ + '../../googleurl/src/gurl.cc', + '../../googleurl/src/gurl.h', + '../../googleurl/src/url_canon.h', + '../../googleurl/src/url_canon_etc.cc', + '../../googleurl/src/url_canon_fileurl.cc', + '../../googleurl/src/url_canon_host.cc', + '../../googleurl/src/url_canon_icu.cc', + '../../googleurl/src/url_canon_icu.h', + '../../googleurl/src/url_canon_internal.cc', + '../../googleurl/src/url_canon_internal.h', + '../../googleurl/src/url_canon_internal_file.h', + '../../googleurl/src/url_canon_ip.cc', + '../../googleurl/src/url_canon_ip.h', + '../../googleurl/src/url_canon_mailtourl.cc', + '../../googleurl/src/url_canon_path.cc', + '../../googleurl/src/url_canon_pathurl.cc', + '../../googleurl/src/url_canon_query.cc', + '../../googleurl/src/url_canon_relative.cc', + '../../googleurl/src/url_canon_stdstring.h', + '../../googleurl/src/url_canon_stdurl.cc', + '../../googleurl/src/url_file.h', + '../../googleurl/src/url_parse.cc', + '../../googleurl/src/url_parse.h', + '../../googleurl/src/url_parse_file.cc', + '../../googleurl/src/url_parse_internal.h', + '../../googleurl/src/url_util.cc', + '../../googleurl/src/url_util.h', + ], + 'direct_dependent_settings': { + 'include_dirs': [ + '../..', + ], + }, + 'conditions': [ + ['OS=="win" and component=="shared_library"', { + 'defines': [ + 'GURL_DLL', + 'GURL_IMPLEMENTATION=1', + ], + 'direct_dependent_settings': { + 'defines': [ + 'GURL_DLL', + ], + }, + }], + ], + }, + { + 'target_name': 'googleurl_unittests', + 'dependencies': [ + 'googleurl', + '../../testing/gtest.gyp:gtest', + '../../third_party/icu/icu.gyp:icuuc', + ], + 'sources': [ + '../../googleurl/src/gurl_unittest.cc', + '../../googleurl/src/url_canon_unittest.cc', + '../../googleurl/src/url_parse_unittest.cc', + '../../googleurl/src/url_test_utils.h', + '../../googleurl/src/url_util_unittest.cc', + '../../googleurl/src/gurl_test_main.cc', + ], + 'conditions': [ + ['OS=="linux" or OS=="freebsd"', { + 'conditions': [ + ['linux_use_tcmalloc==1', { + 'dependencies': [ + '../../base/allocator/allocator.gyp:allocator', + ], + }], + ], + }], + # TODO(victorw): The unittest code uses inline functions that access + # global variables, it also uses internal functions that we may not want + # to export, so skip building unittests for windows multi dll build. + # The googleurl functions are tested by the static library build. + ['OS=="win" and component=="shared_library"', { + 'type': 'none', + }, { + 'type': 'executable', + }], + ], + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/build/temp_gyp/googleurl.scons b/build/temp_gyp/googleurl.scons new file mode 100644 index 0000000..032325b --- /dev/null +++ b/build/temp_gyp/googleurl.scons @@ -0,0 +1,343 @@ +# This file is generated; do not edit. + +import os + +Import("env") + +env = env.Clone(COMPONENT_NAME='googleurl', + TARGET_NAME='googleurl') + +configurations = { + 'Release' : { + 'Append' : dict( + CCFLAGS = [ + '-Werror', + '-pthread', + '-fno-exceptions', + '-Wall', + '-D_FILE_OFFSET_BITS=64', + '-fvisibility=hidden', + '-fno-strict-aliasing', + '-pthread', + '-D_REENTRANT', + '-I/usr/include/gtk-2.0', + '-I/usr/lib/gtk-2.0/include', + '-I/usr/include/atk-1.0', + '-I/usr/include/cairo', + '-I/usr/include/pango-1.0', + '-I/usr/include/gio-unix-2.0/', + '-I/usr/include/glib-2.0', + '-I/usr/lib/glib-2.0/include', + '-I/usr/include/pixman-1', + '-I/usr/include/freetype2', + '-I/usr/include/directfb', + '-I/usr/include/libpng12', + '-O2', + '-fno-ident', + '-fdata-sections', + '-ffunction-sections', + '-fno-asynchronous-unwind-tables' + ], + CPPDEFINES = [ + '__STDC_FORMAT_MACROS', + 'CHROMIUM_BUILD', + 'ENABLE_GPU=1', + 'U_STATIC_IMPLEMENTATION', + 'NDEBUG', + 'NVALGRIND' + ], + CPPPATH = [ + env.Dir('$SRC_DIR/build/temp_gyp/../../third_party/icu/public/common'), + env.Dir('$SRC_DIR/build/temp_gyp/../../third_party/icu/public/i18n'), + env.Dir('$SRC_DIR/build/temp_gyp/../..') + ], + CXXFLAGS = [ + '-fno-rtti', + '-fno-threadsafe-statics', + '-fvisibility-inlines-hidden' + ], + LINKFLAGS = [ + '-pthread', + '-Wl,--gc-sections' + ], + ), + 'FilterOut' : dict( + ), + 'Replace' : dict( + FLOCK_LDMODULE = ['flock', '$TOP_BUILDDIR/linker.lock', '$LDMODULE'], + FLOCK_LINK = ['flock', '$TOP_BUILDDIR/linker.lock', '$LINK'], + FLOCK_SHLINK = ['flock', '$TOP_BUILDDIR/linker.lock', '$SHLINK'], + IMPLICIT_COMMAND_DEPENDENCIES = '0', + LDMODULECOM = [['$FLOCK_LDMODULE', + '-o', + '$TARGET', + '$_LIBDIRFLAGS', + '$LDMODULEFLAGS', + '$SOURCES', + '-Wl,--start-group', + '$_LIBFLAGS', + '-Wl,--end-group']], + LIBPATH = ['$LIB_DIR'], + LINKCOM = [['$FLOCK_LINK', + '-o', + '$TARGET', + '$_LIBDIRFLAGS', + '$LINKFLAGS', + '$SOURCES', + '-Wl,--start-group', + '$_LIBFLAGS', + '-Wl,--end-group']], + SHLINKCOM = [['$FLOCK_SHLINK', + '-o', + '$TARGET', + '$_LIBDIRFLAGS', + '$SHLINKFLAGS', + '$SOURCES', + '-Wl,--start-group', + '$_LIBFLAGS', + '-Wl,--end-group']], + ), + 'ImportExternal' : [ + 'AS', + 'CC', + 'CXX', + 'LINK', + ], + 'PropagateExternal' : [ + 'AS', + 'CC', + 'CCACHE_DIR', + 'CXX', + 'DISTCC_DIR', + 'DISTCC_HOSTS', + 'HOME', + 'INCLUDE_SERVER_ARGS', + 'INCLUDE_SERVER_PORT', + 'LINK', + 'CHROME_BUILD_TYPE', + 'CHROMIUM_BUILD', + 'OFFICIAL_BUILD', + ], + }, + 'Debug' : { + 'Append' : dict( + CCFLAGS = [ + '-Werror', + '-pthread', + '-fno-exceptions', + '-Wall', + '-D_FILE_OFFSET_BITS=64', + '-fvisibility=hidden', + '-fno-strict-aliasing', + '-pthread', + '-D_REENTRANT', + '-I/usr/include/gtk-2.0', + '-I/usr/lib/gtk-2.0/include', + '-I/usr/include/atk-1.0', + '-I/usr/include/cairo', + '-I/usr/include/pango-1.0', + '-I/usr/include/gio-unix-2.0/', + '-I/usr/include/glib-2.0', + '-I/usr/lib/glib-2.0/include', + '-I/usr/include/pixman-1', + '-I/usr/include/freetype2', + '-I/usr/include/directfb', + '-I/usr/include/libpng12', + '-O0', + '-g' + ], + CPPDEFINES = [ + '__STDC_FORMAT_MACROS', + 'CHROMIUM_BUILD', + 'ENABLE_GPU=1', + 'U_STATIC_IMPLEMENTATION', + '_DEBUG' + ], + CPPPATH = [ + env.Dir('$SRC_DIR/build/temp_gyp/../../third_party/icu/public/common'), + env.Dir('$SRC_DIR/build/temp_gyp/../../third_party/icu/public/i18n'), + env.Dir('$SRC_DIR/build/temp_gyp/../..') + ], + CXXFLAGS = [ + '-fno-rtti', + '-fno-threadsafe-statics', + '-fvisibility-inlines-hidden' + ], + LINKFLAGS = [ + '-pthread', + '-rdynamic' + ], + ), + 'FilterOut' : dict( + ), + 'Replace' : dict( + FLOCK_LDMODULE = ['flock', '$TOP_BUILDDIR/linker.lock', '$LDMODULE'], + FLOCK_LINK = ['flock', '$TOP_BUILDDIR/linker.lock', '$LINK'], + FLOCK_SHLINK = ['flock', '$TOP_BUILDDIR/linker.lock', '$SHLINK'], + IMPLICIT_COMMAND_DEPENDENCIES = '0', + LDMODULECOM = [['$FLOCK_LDMODULE', + '-o', + '$TARGET', + '$_LIBDIRFLAGS', + '$LDMODULEFLAGS', + '$SOURCES', + '-Wl,--start-group', + '$_LIBFLAGS', + '-Wl,--end-group']], + LIBPATH = ['$LIB_DIR'], + LINKCOM = [['$FLOCK_LINK', + '-o', + '$TARGET', + '$_LIBDIRFLAGS', + '$LINKFLAGS', + '$SOURCES', + '-Wl,--start-group', + '$_LIBFLAGS', + '-Wl,--end-group']], + SHLINKCOM = [['$FLOCK_SHLINK', + '-o', + '$TARGET', + '$_LIBDIRFLAGS', + '$SHLINKFLAGS', + '$SOURCES', + '-Wl,--start-group', + '$_LIBFLAGS', + '-Wl,--end-group']], + ), + 'ImportExternal' : [ + 'AS', + 'CC', + 'CXX', + 'LINK', + ], + 'PropagateExternal' : [ + 'AS', + 'CC', + 'CCACHE_DIR', + 'CXX', + 'DISTCC_DIR', + 'DISTCC_HOSTS', + 'HOME', + 'INCLUDE_SERVER_ARGS', + 'INCLUDE_SERVER_PORT', + 'LINK', + 'CHROME_BUILD_TYPE', + 'CHROMIUM_BUILD', + 'OFFICIAL_BUILD', + ], + }, +} + +config = configurations[env['CONFIG_NAME']] +env.Append(**config['Append']) +env.FilterOut(**config['FilterOut']) +env.Replace(**config['Replace']) + +# Scons forces -fPIC for SHCCFLAGS on some platforms. +# Disable that so we can control it from cflags in gyp. +# Note that Scons itself is inconsistent with its -fPIC +# setting. SHCCFLAGS forces -fPIC, and SHCFLAGS does not. +# This will make SHCCFLAGS consistent with SHCFLAGS. +env['SHCCFLAGS'] = ['$CCFLAGS'] + +for _var in config['ImportExternal']: + if _var in ARGUMENTS: + env[_var] = ARGUMENTS[_var] + elif _var in os.environ: + env[_var] = os.environ[_var] +for _var in config['PropagateExternal']: + if _var in ARGUMENTS: + env[_var] = ARGUMENTS[_var] + elif _var in os.environ: + env['ENV'][_var] = os.environ[_var] + +env['ENV']['LD_LIBRARY_PATH'] = env.subst('$LIB_DIR') + +if ARGUMENTS.get('COVERAGE') not in (None, '0'): + env.AppendUnique( + CCFLAGS = [ + '-fprofile-arcs', + '-ftest-coverage' + ], + LINKFLAGS = [ + '-fprofile-arcs' + ], + ) + +if ARGUMENTS.get('PROFILE') not in (None, '0'): + env.AppendUnique( + CCFLAGS = [ + '-pg', + '-g' + ], + LINKFLAGS = [ + '-pg' + ], + ) + +if ARGUMENTS.get('SYMBOLS') not in (None, '0'): + env.AppendUnique( + CCFLAGS = [ + '-g' + ], + ) + +input_files = [ + '../../googleurl/src/gurl.cc', + '../../googleurl/src/gurl.h', + '../../googleurl/src/url_canon.h', + '../../googleurl/src/url_canon_etc.cc', + '../../googleurl/src/url_canon_fileurl.cc', + '../../googleurl/src/url_canon_host.cc', + '../../googleurl/src/url_canon_icu.cc', + '../../googleurl/src/url_canon_icu.h', + '../../googleurl/src/url_canon_internal.cc', + '../../googleurl/src/url_canon_internal.h', + '../../googleurl/src/url_canon_internal_file.h', + '../../googleurl/src/url_canon_ip.cc', + '../../googleurl/src/url_canon_ip.h', + '../../googleurl/src/url_canon_mailtourl.cc', + '../../googleurl/src/url_canon_path.cc', + '../../googleurl/src/url_canon_pathurl.cc', + '../../googleurl/src/url_canon_query.cc', + '../../googleurl/src/url_canon_relative.cc', + '../../googleurl/src/url_canon_stdstring.h', + '../../googleurl/src/url_canon_stdurl.cc', + '../../googleurl/src/url_file.h', + '../../googleurl/src/url_parse.cc', + '../../googleurl/src/url_parse.h', + '../../googleurl/src/url_parse_file.cc', + '../../googleurl/src/url_parse_internal.h', + '../../googleurl/src/url_util.cc', + '../../googleurl/src/url_util.h', +] + +target_files = [] +prerequisites = [] + +_result = [] +for infile in input_files: + if env.compilable(infile): + if (type(infile) == type('') + and (infile.startswith('$SRC_DIR/build/temp_gyp/') + or not os.path.isabs(env.subst(infile)))): + # Force files below the build directory by replacing all '..' + # elements in the path with '__': + base, ext = os.path.splitext(os.path.normpath(infile)) + base = [d == '..' and '__' or d for d in base.split('/')] + base = os.path.join(*base) + object = '${OBJ_DIR}/${COMPONENT_NAME}/${TARGET_NAME}/' + base + if not infile.startswith('$SRC_DIR/build/temp_gyp/'): + infile = '$SRC_DIR/build/temp_gyp/' + infile + infile = env.StaticObject(object, infile)[0] + else: + infile = env.StaticObject(infile)[0] + _result.append(infile) +input_files = _result + +_outputs = env.GypStaticLibrary(env.File('${LIB_DIR}/${LIBPREFIX}googleurl${LIBSUFFIX}'), input_files) +target_files.extend(_outputs) + +gyp_target = env.Alias('googleurl', target_files) +env.Requires(gyp_target, prerequisites) +Return("gyp_target") diff --git a/build/temp_gyp/googleurl.target.mk b/build/temp_gyp/googleurl.target.mk new file mode 100644 index 0000000..8648a40 --- /dev/null +++ b/build/temp_gyp/googleurl.target.mk @@ -0,0 +1,169 @@ +# This file is generated by gyp; do not edit. + +TOOLSET := target +TARGET := googleurl +DEFS_Debug := '-DNO_HEAPCHECKER' \ + '-DCHROMIUM_BUILD' \ + '-DENABLE_REMOTING=1' \ + '-DENABLE_GPU=1' \ + '-DU_STATIC_IMPLEMENTATION' \ + '-D__STDC_FORMAT_MACROS' \ + '-DDYNAMIC_ANNOTATIONS_ENABLED=1' \ + '-D_DEBUG' + +# Flags passed to both C and C++ files. +CFLAGS_Debug := -Werror \ + -pthread \ + -fno-exceptions \ + -Wall \ + -Wno-unused-parameter \ + -Wno-missing-field-initializers \ + -D_FILE_OFFSET_BITS=64 \ + -fvisibility=hidden \ + -fno-strict-aliasing \ + -pthread \ + -D_REENTRANT \ + -I/usr/include/gtk-2.0 \ + -I/usr/lib/gtk-2.0/include \ + -I/usr/include/atk-1.0 \ + -I/usr/include/cairo \ + -I/usr/include/pango-1.0 \ + -I/usr/include/gio-unix-2.0/ \ + -I/usr/include/glib-2.0 \ + -I/usr/lib/glib-2.0/include \ + -I/usr/include/pixman-1 \ + -I/usr/include/freetype2 \ + -I/usr/include/directfb \ + -I/usr/include/libpng12 \ + -O0 \ + -g + +# Flags passed to only C (and not C++) files. +CFLAGS_C_Debug := + +# Flags passed to only C++ (and not C) files. +CFLAGS_CC_Debug := -fno-rtti \ + -fno-threadsafe-statics \ + -fvisibility-inlines-hidden + +INCS_Debug := -Ithird_party/icu/public/common \ + -Ithird_party/icu/public/i18n \ + -I. + +DEFS_Release := '-DNO_HEAPCHECKER' \ + '-DCHROMIUM_BUILD' \ + '-DENABLE_REMOTING=1' \ + '-DENABLE_GPU=1' \ + '-DU_STATIC_IMPLEMENTATION' \ + '-D__STDC_FORMAT_MACROS' \ + '-DNDEBUG' \ + '-DNVALGRIND' \ + '-DDYNAMIC_ANNOTATIONS_ENABLED=0' + +# Flags passed to both C and C++ files. +CFLAGS_Release := -Werror \ + -pthread \ + -fno-exceptions \ + -Wall \ + -Wno-unused-parameter \ + -Wno-missing-field-initializers \ + -D_FILE_OFFSET_BITS=64 \ + -fvisibility=hidden \ + -fno-strict-aliasing \ + -pthread \ + -D_REENTRANT \ + -I/usr/include/gtk-2.0 \ + -I/usr/lib/gtk-2.0/include \ + -I/usr/include/atk-1.0 \ + -I/usr/include/cairo \ + -I/usr/include/pango-1.0 \ + -I/usr/include/gio-unix-2.0/ \ + -I/usr/include/glib-2.0 \ + -I/usr/lib/glib-2.0/include \ + -I/usr/include/pixman-1 \ + -I/usr/include/freetype2 \ + -I/usr/include/directfb \ + -I/usr/include/libpng12 \ + -O2 \ + -fno-ident \ + -fdata-sections \ + -ffunction-sections + +# Flags passed to only C (and not C++) files. +CFLAGS_C_Release := + +# Flags passed to only C++ (and not C) files. +CFLAGS_CC_Release := -fno-rtti \ + -fno-threadsafe-statics \ + -fvisibility-inlines-hidden + +INCS_Release := -Ithird_party/icu/public/common \ + -Ithird_party/icu/public/i18n \ + -I. + +OBJS := $(obj).target/$(TARGET)/googleurl/src/gurl.o \ + $(obj).target/$(TARGET)/googleurl/src/url_canon_etc.o \ + $(obj).target/$(TARGET)/googleurl/src/url_canon_fileurl.o \ + $(obj).target/$(TARGET)/googleurl/src/url_canon_host.o \ + $(obj).target/$(TARGET)/googleurl/src/url_canon_icu.o \ + $(obj).target/$(TARGET)/googleurl/src/url_canon_internal.o \ + $(obj).target/$(TARGET)/googleurl/src/url_canon_ip.o \ + $(obj).target/$(TARGET)/googleurl/src/url_canon_mailtourl.o \ + $(obj).target/$(TARGET)/googleurl/src/url_canon_path.o \ + $(obj).target/$(TARGET)/googleurl/src/url_canon_pathurl.o \ + $(obj).target/$(TARGET)/googleurl/src/url_canon_query.o \ + $(obj).target/$(TARGET)/googleurl/src/url_canon_relative.o \ + $(obj).target/$(TARGET)/googleurl/src/url_canon_stdurl.o \ + $(obj).target/$(TARGET)/googleurl/src/url_parse.o \ + $(obj).target/$(TARGET)/googleurl/src/url_parse_file.o \ + $(obj).target/$(TARGET)/googleurl/src/url_util.o + +# Add to the list of files we specially track dependencies for. +all_deps += $(OBJS) + +# CFLAGS et al overrides must be target-local. +# See "Target-specific Variable Values" in the GNU Make manual. +$(OBJS): TOOLSET := $(TOOLSET) +$(OBJS): GYP_CFLAGS := $(CFLAGS_$(BUILDTYPE)) $(CFLAGS_C_$(BUILDTYPE)) $(DEFS_$(BUILDTYPE)) $(INCS_$(BUILDTYPE)) +$(OBJS): GYP_CXXFLAGS := $(CFLAGS_$(BUILDTYPE)) $(CFLAGS_CC_$(BUILDTYPE)) $(DEFS_$(BUILDTYPE)) $(INCS_$(BUILDTYPE)) + +# Suffix rules, putting all outputs into $(obj). + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(srcdir)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +# Try building from generated source, too. + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(obj).$(TOOLSET)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(obj)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +# End of this set of suffix rules +### Rules for final target. +LDFLAGS_Debug := -pthread \ + -Wl,-z,noexecstack \ + -rdynamic + +LDFLAGS_Release := -pthread \ + -Wl,-z,noexecstack \ + -Wl,--gc-sections + +LIBS := + +$(obj).target/build/temp_gyp/libgoogleurl.a: GYP_LDFLAGS := $(LDFLAGS_$(BUILDTYPE)) +$(obj).target/build/temp_gyp/libgoogleurl.a: LIBS := $(LIBS) +$(obj).target/build/temp_gyp/libgoogleurl.a: TOOLSET := $(TOOLSET) +$(obj).target/build/temp_gyp/libgoogleurl.a: $(OBJS) FORCE_DO_CMD + $(call do_cmd,alink) + +all_deps += $(obj).target/build/temp_gyp/libgoogleurl.a +# Add target alias +.PHONY: googleurl +googleurl: $(obj).target/build/temp_gyp/libgoogleurl.a + +# Add target alias to "all" target. +.PHONY: all +all: googleurl + diff --git a/build/temp_gyp/googleurl_main.scons b/build/temp_gyp/googleurl_main.scons new file mode 100644 index 0000000..77b799a --- /dev/null +++ b/build/temp_gyp/googleurl_main.scons @@ -0,0 +1,339 @@ +# This file is generated; do not edit. + +__doc__ = ''' +Wrapper configuration for building this entire "solution," +including all the specific targets in various *.scons files. +''' + +import os +import sys + +import SCons.Environment +import SCons.Util + +def GetProcessorCount(): + ''' + Detects the number of CPUs on the system. Adapted form: + http://codeliberates.blogspot.com/2008/05/detecting-cpuscores-in-python.html + ''' + # Linux, Unix and Mac OS X: + if hasattr(os, 'sysconf'): + if os.sysconf_names.has_key('SC_NPROCESSORS_ONLN'): + # Linux and Unix or Mac OS X with python >= 2.5: + return os.sysconf('SC_NPROCESSORS_ONLN') + else: # Mac OS X with Python < 2.5: + return int(os.popen2("sysctl -n hw.ncpu")[1].read()) + # Windows: + if os.environ.has_key('NUMBER_OF_PROCESSORS'): + return max(int(os.environ.get('NUMBER_OF_PROCESSORS', '1')), 1) + return 1 # Default + +# Support PROGRESS= to show progress in different ways. +p = ARGUMENTS.get('PROGRESS') +if p == 'spinner': + Progress(['/\r', '|\r', '\\\r', '-\r'], + interval=5, + file=open('/dev/tty', 'w')) +elif p == 'name': + Progress('$TARGET\r', overwrite=True, file=open('/dev/tty', 'w')) + +# Set the default -j value based on the number of processors. +SetOption('num_jobs', GetProcessorCount() + 1) + +# Have SCons use its cached dependency information. +SetOption('implicit_cache', 1) + +# Only re-calculate MD5 checksums if a timestamp has changed. +Decider('MD5-timestamp') + +# Since we set the -j value by default, suppress SCons warnings about being +# unable to support parallel build on versions of Python with no threading. +default_warnings = ['no-no-parallel-support'] +SetOption('warn', default_warnings + GetOption('warn')) + +AddOption('--mode', nargs=1, dest='conf_list', default=[], + action='append', help='Configuration to build.') + +AddOption('--verbose', dest='verbose', default=False, + action='store_true', help='Verbose command-line output.') + + +# +sconscript_file_map = dict( + base = '../../base/base.scons', + googleurl = 'googleurl.scons', + googleurl_unittests = 'googleurl_unittests.scons', + gtest = '../../testing/gtest.scons', + icudata = '../../third_party/icu/icudata.scons', + icui18n = '../../third_party/icu/icui18n.scons', + icuuc = '../../third_party/icu/icuuc.scons', + lastchange = '../util/lastchange.scons', + libevent = '../../third_party/libevent/libevent.scons', + modp_b64 = '../../third_party/modp_b64/modp_b64.scons', + ssl = '../../net/third_party/nss/ssl.scons', + symbolize = '../../base/symbolize.scons', + xdg_mime = '../../base/xdg_mime.scons', + zlib = '../../third_party/zlib/zlib.scons', +) + +class LoadTarget: + ''' + Class for deciding if a given target sconscript is to be included + based on a list of included target names, optionally prefixed with '-' + to exclude a target name. + ''' + def __init__(self, load): + ''' + Initialize a class with a list of names for possible loading. + + Arguments: + load: list of elements in the LOAD= specification + ''' + self.included = set([c for c in load if not c.startswith('-')]) + self.excluded = set([c[1:] for c in load if c.startswith('-')]) + + if not self.included: + self.included = set(['all']) + + def __call__(self, target): + ''' + Returns True if the specified target's sconscript file should be + loaded, based on the initialized included and excluded lists. + ''' + return (target in self.included or + ('all' in self.included and not target in self.excluded)) + +if 'LOAD' in ARGUMENTS: + load = ARGUMENTS['LOAD'].split(',') +else: + load = [] +load_target = LoadTarget(load) + +sconscript_files = [] +for target, sconscript in sconscript_file_map.iteritems(): + if load_target(target): + sconscript_files.append(sconscript) + + +target_alias_list= [] + +conf_list = GetOption('conf_list') +if conf_list: + # In case the same --mode= value was specified multiple times. + conf_list = list(set(conf_list)) +else: + conf_list = ['Debug'] + +sconsbuild_dir = Dir('../../sconsbuild') + + +def FilterOut(self, **kw): + kw = SCons.Environment.copy_non_reserved_keywords(kw) + for key, val in kw.items(): + envval = self.get(key, None) + if envval is None: + # No existing variable in the environment, so nothing to delete. + continue + + for vremove in val: + # Use while not if, so we can handle duplicates. + while vremove in envval: + envval.remove(vremove) + + self[key] = envval + + # TODO(sgk): SCons.Environment.Append() has much more logic to deal + # with various types of values. We should handle all those cases in here + # too. (If variable is a dict, etc.) + + +non_compilable_suffixes = { + 'LINUX' : set([ + '.bdic', + '.css', + '.dat', + '.fragment', + '.gperf', + '.h', + '.hh', + '.hpp', + '.html', + '.hxx', + '.idl', + '.in', + '.in0', + '.in1', + '.js', + '.mk', + '.rc', + '.sigs', + '', + ]), + 'WINDOWS' : set([ + '.h', + '.hh', + '.hpp', + '.dat', + '.idl', + '.in', + '.in0', + '.in1', + ]), +} + +def compilable(env, file): + base, ext = os.path.splitext(str(file)) + if ext in non_compilable_suffixes[env['TARGET_PLATFORM']]: + return False + return True + +def compilable_files(env, sources): + return [x for x in sources if compilable(env, x)] + +def GypProgram(env, target, source, *args, **kw): + source = compilable_files(env, source) + result = env.Program(target, source, *args, **kw) + if env.get('INCREMENTAL'): + env.Precious(result) + return result + +def GypTestProgram(env, target, source, *args, **kw): + source = compilable_files(env, source) + result = env.Program(target, source, *args, **kw) + if env.get('INCREMENTAL'): + env.Precious(*result) + return result + +def GypLibrary(env, target, source, *args, **kw): + source = compilable_files(env, source) + result = env.Library(target, source, *args, **kw) + return result + +def GypLoadableModule(env, target, source, *args, **kw): + source = compilable_files(env, source) + result = env.LoadableModule(target, source, *args, **kw) + return result + +def GypStaticLibrary(env, target, source, *args, **kw): + source = compilable_files(env, source) + result = env.StaticLibrary(target, source, *args, **kw) + return result + +def GypSharedLibrary(env, target, source, *args, **kw): + source = compilable_files(env, source) + result = env.SharedLibrary(target, source, *args, **kw) + if env.get('INCREMENTAL'): + env.Precious(result) + return result + +def add_gyp_methods(env): + env.AddMethod(GypProgram) + env.AddMethod(GypTestProgram) + env.AddMethod(GypLibrary) + env.AddMethod(GypLoadableModule) + env.AddMethod(GypStaticLibrary) + env.AddMethod(GypSharedLibrary) + + env.AddMethod(FilterOut) + + env.AddMethod(compilable) + + +base_env = Environment( + tools = ['ar', 'as', 'gcc', 'g++', 'gnulink', 'chromium_builders'], + INTERMEDIATE_DIR='$OBJ_DIR/${COMPONENT_NAME}/_${TARGET_NAME}_intermediate', + LIB_DIR='$TOP_BUILDDIR/lib', + OBJ_DIR='$TOP_BUILDDIR/obj', + SCONSBUILD_DIR=sconsbuild_dir.abspath, + SHARED_INTERMEDIATE_DIR='$OBJ_DIR/_global_intermediate', + SRC_DIR=Dir('../..'), + TARGET_PLATFORM='LINUX', + TOP_BUILDDIR='$SCONSBUILD_DIR/$CONFIG_NAME', + LIBPATH=['$LIB_DIR'], +) + +if not GetOption('verbose'): + base_env.SetDefault( + ARCOMSTR='Creating library $TARGET', + ASCOMSTR='Assembling $TARGET', + CCCOMSTR='Compiling $TARGET', + CONCATSOURCECOMSTR='ConcatSource $TARGET', + CXXCOMSTR='Compiling $TARGET', + LDMODULECOMSTR='Building loadable module $TARGET', + LINKCOMSTR='Linking $TARGET', + MANIFESTCOMSTR='Updating manifest for $TARGET', + MIDLCOMSTR='Compiling IDL $TARGET', + PCHCOMSTR='Precompiling $TARGET', + RANLIBCOMSTR='Indexing $TARGET', + RCCOMSTR='Compiling resource $TARGET', + SHCCCOMSTR='Compiling $TARGET', + SHCXXCOMSTR='Compiling $TARGET', + SHLINKCOMSTR='Linking $TARGET', + SHMANIFESTCOMSTR='Updating manifest for $TARGET', + ) + +add_gyp_methods(base_env) + +for conf in conf_list: + env = base_env.Clone(CONFIG_NAME=conf) + SConsignFile(env.File('$TOP_BUILDDIR/.sconsign').abspath) + for sconscript in sconscript_files: + target_alias = env.SConscript(sconscript, exports=['env']) + if target_alias: + target_alias_list.extend(target_alias) + +Default(Alias('all', target_alias_list)) + +help_fmt = ''' +Usage: hammer [SCONS_OPTIONS] [VARIABLES] [TARGET] ... + +Local command-line build options: + --mode=CONFIG Configuration to build: + --mode=Debug [default] + --mode=Release + --verbose Print actual executed command lines. + +Supported command-line build variables: + LOAD=[module,...] Comma-separated list of components to load in the + dependency graph ('-' prefix excludes) + PROGRESS=type Display a progress indicator: + name: print each evaluated target name + spinner: print a spinner every 5 targets + +The following TARGET names can also be used as LOAD= module names: + +%s +''' + +if GetOption('help'): + def columnar_text(items, width=78, indent=2, sep=2): + result = [] + colwidth = max(map(len, items)) + sep + cols = (width - indent) / colwidth + if cols < 1: + cols = 1 + rows = (len(items) + cols - 1) / cols + indent = '%*s' % (indent, '') + sep = indent + for row in xrange(0, rows): + result.append(sep) + for i in xrange(row, len(items), rows): + result.append('%-*s' % (colwidth, items[i])) + sep = '\n' + indent + result.append('\n') + return ''.join(result) + + load_list = set(sconscript_file_map.keys()) + target_aliases = set(map(str, target_alias_list)) + + common = load_list and target_aliases + load_only = load_list - common + target_only = target_aliases - common + help_text = [help_fmt % columnar_text(sorted(list(common)))] + if target_only: + fmt = "The following are additional TARGET names:\n\n%s\n" + help_text.append(fmt % columnar_text(sorted(list(target_only)))) + if load_only: + fmt = "The following are additional LOAD= module names:\n\n%s\n" + help_text.append(fmt % columnar_text(sorted(list(load_only)))) + Help(''.join(help_text)) diff --git a/build/temp_gyp/googleurl_unittests.scons b/build/temp_gyp/googleurl_unittests.scons new file mode 100644 index 0000000..808b660 --- /dev/null +++ b/build/temp_gyp/googleurl_unittests.scons @@ -0,0 +1,421 @@ +# This file is generated; do not edit. + +import os + +Import("env") + +env = env.Clone(COMPONENT_NAME='googleurl', + TARGET_NAME='googleurl_unittests') + +configurations = { + 'Release' : { + 'Append' : dict( + CCFLAGS = [ + '-Werror', + '-pthread', + '-fno-exceptions', + '-Wall', + '-D_FILE_OFFSET_BITS=64', + '-fvisibility=hidden', + '-fno-strict-aliasing', + '-O2', + '-fno-ident', + '-fdata-sections', + '-ffunction-sections', + '-fno-asynchronous-unwind-tables' + ], + CPPDEFINES = [ + '__STDC_FORMAT_MACROS', + 'CHROMIUM_BUILD', + 'ENABLE_GPU=1', + 'UNIT_TEST', + 'GTEST_HAS_RTTI=0', + 'U_STATIC_IMPLEMENTATION', + 'NDEBUG', + 'NVALGRIND' + ], + CPPPATH = [ + env.Dir('$SRC_DIR/build/temp_gyp/../../third_party/icu/public/common'), + env.Dir('$SRC_DIR/build/temp_gyp/../..'), + env.Dir('$SRC_DIR/build/temp_gyp/../../testing/gtest/include') + ], + CXXFLAGS = [ + '-fno-rtti', + '-fno-threadsafe-statics', + '-fvisibility-inlines-hidden' + ], + LINKFLAGS = [ + '-pthread', + '-Wl,--gc-sections' + ], + LIBS = [ + '-lrt', + '-lgtk-x11-2.0', + '-lgdk-x11-2.0', + '-latk-1.0', + '-lgio-2.0', + '-lpangoft2-1.0', + '-lgdk_pixbuf-2.0', + '-lm', + '-lpangocairo-1.0', + '-lcairo', + '-lpango-1.0', + '-lfreetype', + '-lfontconfig', + '-lgobject-2.0', + '-lgmodule-2.0', + '-lgthread-2.0', + '-lrt', + '-lglib-2.0', + '-lnss3', + '-lnssutil3', + '-lsmime3', + '-lplds4', + '-lplc4', + '-lnspr4', + '-lpthread', + '-ldl', + '-lz', + '-lrt', + 'libgoogleurl', + 'libgtest', + 'libicuuc', + 'libbase', + 'libmodp_b64', + 'libssl', + 'libzlib', + 'libsymbolize', + 'libxdg_mime', + 'libevent', + 'libicudata', + 'libicui18n' + ], + ), + 'FilterOut' : dict( + ), + 'Replace' : dict( + FLOCK_LDMODULE = ['flock', '$TOP_BUILDDIR/linker.lock', '$LDMODULE'], + FLOCK_LINK = ['flock', '$TOP_BUILDDIR/linker.lock', '$LINK'], + FLOCK_SHLINK = ['flock', '$TOP_BUILDDIR/linker.lock', '$SHLINK'], + IMPLICIT_COMMAND_DEPENDENCIES = '0', + LDMODULECOM = [['$FLOCK_LDMODULE', + '-o', + '$TARGET', + '$_LIBDIRFLAGS', + '$LDMODULEFLAGS', + '$SOURCES', + '-Wl,--start-group', + '$_LIBFLAGS', + '-Wl,--end-group']], + LIBPATH = ['$LIB_DIR'], + LINKCOM = [['$FLOCK_LINK', + '-o', + '$TARGET', + '$_LIBDIRFLAGS', + '$LINKFLAGS', + '$SOURCES', + '-Wl,--start-group', + '$_LIBFLAGS', + '-Wl,--end-group']], + SHLINKCOM = [['$FLOCK_SHLINK', + '-o', + '$TARGET', + '$_LIBDIRFLAGS', + '$SHLINKFLAGS', + '$SOURCES', + '-Wl,--start-group', + '$_LIBFLAGS', + '-Wl,--end-group']], + ), + 'ImportExternal' : [ + 'AS', + 'CC', + 'CXX', + 'LINK', + ], + 'PropagateExternal' : [ + 'AS', + 'CC', + 'CCACHE_DIR', + 'CXX', + 'DISTCC_DIR', + 'DISTCC_HOSTS', + 'HOME', + 'INCLUDE_SERVER_ARGS', + 'INCLUDE_SERVER_PORT', + 'LINK', + 'CHROME_BUILD_TYPE', + 'CHROMIUM_BUILD', + 'OFFICIAL_BUILD', + ], + }, + 'Debug' : { + 'Append' : dict( + CCFLAGS = [ + '-Werror', + '-pthread', + '-fno-exceptions', + '-Wall', + '-D_FILE_OFFSET_BITS=64', + '-fvisibility=hidden', + '-fno-strict-aliasing', + '-O0', + '-g' + ], + CPPDEFINES = [ + '__STDC_FORMAT_MACROS', + 'CHROMIUM_BUILD', + 'ENABLE_GPU=1', + 'UNIT_TEST', + 'GTEST_HAS_RTTI=0', + 'U_STATIC_IMPLEMENTATION', + '_DEBUG' + ], + CPPPATH = [ + env.Dir('$SRC_DIR/build/temp_gyp/../../third_party/icu/public/common'), + env.Dir('$SRC_DIR/build/temp_gyp/../..'), + env.Dir('$SRC_DIR/build/temp_gyp/../../testing/gtest/include') + ], + CXXFLAGS = [ + '-fno-rtti', + '-fno-threadsafe-statics', + '-fvisibility-inlines-hidden' + ], + LINKFLAGS = [ + '-pthread', + '-rdynamic' + ], + LIBS = [ + '-lrt', + '-lgtk-x11-2.0', + '-lgdk-x11-2.0', + '-latk-1.0', + '-lgio-2.0', + '-lpangoft2-1.0', + '-lgdk_pixbuf-2.0', + '-lm', + '-lpangocairo-1.0', + '-lcairo', + '-lpango-1.0', + '-lfreetype', + '-lfontconfig', + '-lgobject-2.0', + '-lgmodule-2.0', + '-lgthread-2.0', + '-lrt', + '-lglib-2.0', + '-lnss3', + '-lnssutil3', + '-lsmime3', + '-lplds4', + '-lplc4', + '-lnspr4', + '-lpthread', + '-ldl', + '-lz', + '-lrt', + 'libgoogleurl', + 'libgtest', + 'libicuuc', + 'libbase', + 'libmodp_b64', + 'libssl', + 'libzlib', + 'libsymbolize', + 'libxdg_mime', + 'libevent', + 'libicudata', + 'libicui18n' + ], + ), + 'FilterOut' : dict( + ), + 'Replace' : dict( + FLOCK_LDMODULE = ['flock', '$TOP_BUILDDIR/linker.lock', '$LDMODULE'], + FLOCK_LINK = ['flock', '$TOP_BUILDDIR/linker.lock', '$LINK'], + FLOCK_SHLINK = ['flock', '$TOP_BUILDDIR/linker.lock', '$SHLINK'], + IMPLICIT_COMMAND_DEPENDENCIES = '0', + LDMODULECOM = [['$FLOCK_LDMODULE', + '-o', + '$TARGET', + '$_LIBDIRFLAGS', + '$LDMODULEFLAGS', + '$SOURCES', + '-Wl,--start-group', + '$_LIBFLAGS', + '-Wl,--end-group']], + LIBPATH = ['$LIB_DIR'], + LINKCOM = [['$FLOCK_LINK', + '-o', + '$TARGET', + '$_LIBDIRFLAGS', + '$LINKFLAGS', + '$SOURCES', + '-Wl,--start-group', + '$_LIBFLAGS', + '-Wl,--end-group']], + SHLINKCOM = [['$FLOCK_SHLINK', + '-o', + '$TARGET', + '$_LIBDIRFLAGS', + '$SHLINKFLAGS', + '$SOURCES', + '-Wl,--start-group', + '$_LIBFLAGS', + '-Wl,--end-group']], + ), + 'ImportExternal' : [ + 'AS', + 'CC', + 'CXX', + 'LINK', + ], + 'PropagateExternal' : [ + 'AS', + 'CC', + 'CCACHE_DIR', + 'CXX', + 'DISTCC_DIR', + 'DISTCC_HOSTS', + 'HOME', + 'INCLUDE_SERVER_ARGS', + 'INCLUDE_SERVER_PORT', + 'LINK', + 'CHROME_BUILD_TYPE', + 'CHROMIUM_BUILD', + 'OFFICIAL_BUILD', + ], + }, +} + +config = configurations[env['CONFIG_NAME']] +env.Append(**config['Append']) +env.FilterOut(**config['FilterOut']) +env.Replace(**config['Replace']) + +# Scons forces -fPIC for SHCCFLAGS on some platforms. +# Disable that so we can control it from cflags in gyp. +# Note that Scons itself is inconsistent with its -fPIC +# setting. SHCCFLAGS forces -fPIC, and SHCFLAGS does not. +# This will make SHCCFLAGS consistent with SHCFLAGS. +env['SHCCFLAGS'] = ['$CCFLAGS'] + +for _var in config['ImportExternal']: + if _var in ARGUMENTS: + env[_var] = ARGUMENTS[_var] + elif _var in os.environ: + env[_var] = os.environ[_var] +for _var in config['PropagateExternal']: + if _var in ARGUMENTS: + env[_var] = ARGUMENTS[_var] + elif _var in os.environ: + env['ENV'][_var] = os.environ[_var] + +env['ENV']['LD_LIBRARY_PATH'] = env.subst('$LIB_DIR') + +if ARGUMENTS.get('COVERAGE') not in (None, '0'): + env.AppendUnique( + CCFLAGS = [ + '-fprofile-arcs', + '-ftest-coverage' + ], + LINKFLAGS = [ + '-fprofile-arcs' + ], + ) + +if ARGUMENTS.get('PROFILE') not in (None, '0'): + env.AppendUnique( + CCFLAGS = [ + '-pg', + '-g' + ], + LINKFLAGS = [ + '-pg' + ], + ) + +if ARGUMENTS.get('SYMBOLS') not in (None, '0'): + env.AppendUnique( + CCFLAGS = [ + '-g' + ], + ) + +input_files = [ + '../../googleurl/src/gurl_unittest.cc', + '../../googleurl/src/url_canon_unittest.cc', + '../../googleurl/src/url_parse_unittest.cc', + '../../googleurl/src/url_test_utils.h', + '../../googleurl/src/url_util_unittest.cc', + '../../googleurl/src/gurl_test_main.cc', +] + +target_files = [] +prerequisites = [] + +_result = [] +for infile in input_files: + if env.compilable(infile): + if (type(infile) == type('') + and (infile.startswith('$SRC_DIR/build/temp_gyp/') + or not os.path.isabs(env.subst(infile)))): + # Force files below the build directory by replacing all '..' + # elements in the path with '__': + base, ext = os.path.splitext(os.path.normpath(infile)) + base = [d == '..' and '__' or d for d in base.split('/')] + base = os.path.join(*base) + object = '${OBJ_DIR}/${COMPONENT_NAME}/${TARGET_NAME}/' + base + if not infile.startswith('$SRC_DIR/build/temp_gyp/'): + infile = '$SRC_DIR/build/temp_gyp/' + infile + infile = env.StaticObject(object, infile)[0] + else: + infile = env.StaticObject(infile)[0] + _result.append(infile) +input_files = _result + +_outputs = env.GypProgram(env.File('${TOP_BUILDDIR}/${PROGPREFIX}googleurl_unittests${PROGSUFFIX}'), input_files) +target_files.extend(_outputs) + +if GetOption('verbose'): + _action = Action([['cd', + '"/usr/local/google/src/chromium-merge/src/build/temp_gyp"', + '&&', + '$TARGET_NAME', + '--gtest_print_time']]) +else: + _action = Action([['cd', + '"/usr/local/google/src/chromium-merge/src/build/temp_gyp"', + '&&', + '$TARGET_NAME', + '--gtest_print_time']], ) + +gyp_target = env.Alias('googleurl_unittests', target_files) +dependencies = [ + Alias('googleurl'), + Alias('gtest'), + Alias('icuuc'), + Alias('base'), + Alias('modp_b64'), + Alias('gtk'), + Alias('nss'), + Alias('ssl'), + Alias('zlib'), + Alias('symbolize'), + Alias('xdg_mime'), + Alias('libevent'), + Alias('icudata'), + Alias('icui18n') +] +env.Requires(target_files, dependencies) +env.Requires(gyp_target, dependencies) +for prerequisite in prerequisites: + env.Requires(prerequisite, dependencies) +env.Requires(gyp_target, prerequisites) + +_run_as_target = env.Alias('run_googleurl_unittests', target_files, _action) +env.Requires(_run_as_target, [ + Alias('googleurl_unittests'), +]) +env.AlwaysBuild(_run_as_target) +Return("gyp_target") diff --git a/build/temp_gyp/googleurl_unittests.target.mk b/build/temp_gyp/googleurl_unittests.target.mk new file mode 100644 index 0000000..0f023ed --- /dev/null +++ b/build/temp_gyp/googleurl_unittests.target.mk @@ -0,0 +1,168 @@ +# This file is generated by gyp; do not edit. + +TOOLSET := target +TARGET := googleurl_unittests +DEFS_Debug := '-DNO_HEAPCHECKER' \ + '-DCHROMIUM_BUILD' \ + '-DENABLE_REMOTING=1' \ + '-DENABLE_GPU=1' \ + '-DUNIT_TEST' \ + '-DGTEST_HAS_RTTI=0' \ + '-DU_STATIC_IMPLEMENTATION' \ + '-D__STDC_FORMAT_MACROS' \ + '-DDYNAMIC_ANNOTATIONS_ENABLED=1' \ + '-D_DEBUG' + +# Flags passed to both C and C++ files. +CFLAGS_Debug := -Werror \ + -pthread \ + -fno-exceptions \ + -Wall \ + -Wno-unused-parameter \ + -Wno-missing-field-initializers \ + -D_FILE_OFFSET_BITS=64 \ + -fvisibility=hidden \ + -fno-strict-aliasing \ + -O0 \ + -g + +# Flags passed to only C (and not C++) files. +CFLAGS_C_Debug := + +# Flags passed to only C++ (and not C) files. +CFLAGS_CC_Debug := -fno-rtti \ + -fno-threadsafe-statics \ + -fvisibility-inlines-hidden + +INCS_Debug := -Ithird_party/icu/public/common \ + -I. \ + -Itesting/gtest/include + +DEFS_Release := '-DNO_HEAPCHECKER' \ + '-DCHROMIUM_BUILD' \ + '-DENABLE_REMOTING=1' \ + '-DENABLE_GPU=1' \ + '-DUNIT_TEST' \ + '-DGTEST_HAS_RTTI=0' \ + '-DU_STATIC_IMPLEMENTATION' \ + '-D__STDC_FORMAT_MACROS' \ + '-DNDEBUG' \ + '-DNVALGRIND' \ + '-DDYNAMIC_ANNOTATIONS_ENABLED=0' + +# Flags passed to both C and C++ files. +CFLAGS_Release := -Werror \ + -pthread \ + -fno-exceptions \ + -Wall \ + -Wno-unused-parameter \ + -Wno-missing-field-initializers \ + -D_FILE_OFFSET_BITS=64 \ + -fvisibility=hidden \ + -fno-strict-aliasing \ + -O2 \ + -fno-ident \ + -fdata-sections \ + -ffunction-sections + +# Flags passed to only C (and not C++) files. +CFLAGS_C_Release := + +# Flags passed to only C++ (and not C) files. +CFLAGS_CC_Release := -fno-rtti \ + -fno-threadsafe-statics \ + -fvisibility-inlines-hidden + +INCS_Release := -Ithird_party/icu/public/common \ + -I. \ + -Itesting/gtest/include + +OBJS := $(obj).target/$(TARGET)/googleurl/src/gurl_unittest.o \ + $(obj).target/$(TARGET)/googleurl/src/url_canon_unittest.o \ + $(obj).target/$(TARGET)/googleurl/src/url_parse_unittest.o \ + $(obj).target/$(TARGET)/googleurl/src/url_util_unittest.o \ + $(obj).target/$(TARGET)/googleurl/src/gurl_test_main.o + +# Add to the list of files we specially track dependencies for. +all_deps += $(OBJS) + +# Make sure our dependencies are built before any of us. +$(OBJS): | $(obj).target/build/temp_gyp/libgoogleurl.a $(obj).target/testing/libgtest.a $(obj).target/third_party/icu/libicuuc.a $(obj).target/base/allocator/liballocator.a $(obj).target/base/libbase.a $(obj).target/third_party/modp_b64/libmodp_b64.a $(obj).target/base/third_party/dynamic_annotations/libdynamic_annotations.a $(obj).target/base/libsymbolize.a $(obj).target/net/third_party/nss/libssl.a $(obj).target/third_party/zlib/libzlib.a $(obj).target/base/libxdg_mime.a $(obj).target/third_party/libevent/libevent.a $(obj).target/third_party/icu/libicudata.a $(obj).target/third_party/icu/libicui18n.a + +# CFLAGS et al overrides must be target-local. +# See "Target-specific Variable Values" in the GNU Make manual. +$(OBJS): TOOLSET := $(TOOLSET) +$(OBJS): GYP_CFLAGS := $(CFLAGS_$(BUILDTYPE)) $(CFLAGS_C_$(BUILDTYPE)) $(DEFS_$(BUILDTYPE)) $(INCS_$(BUILDTYPE)) +$(OBJS): GYP_CXXFLAGS := $(CFLAGS_$(BUILDTYPE)) $(CFLAGS_CC_$(BUILDTYPE)) $(DEFS_$(BUILDTYPE)) $(INCS_$(BUILDTYPE)) + +# Suffix rules, putting all outputs into $(obj). + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(srcdir)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +# Try building from generated source, too. + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(obj).$(TOOLSET)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(obj)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +# End of this set of suffix rules +### Rules for final target. +LDFLAGS_Debug := -pthread \ + -Wl,-z,noexecstack \ + -Wl,-uIsHeapProfilerRunning,-uProfilerStart \ + -Wl,-u_Z21InitialMallocHook_NewPKvj,-u_Z22InitialMallocHook_MMapPKvS0_jiiix,-u_Z22InitialMallocHook_SbrkPKvi \ + -Wl,-u_Z21InitialMallocHook_NewPKvm,-u_Z22InitialMallocHook_MMapPKvS0_miiil,-u_Z22InitialMallocHook_SbrkPKvl \ + -rdynamic + +LDFLAGS_Release := -pthread \ + -Wl,-z,noexecstack \ + -Wl,-uIsHeapProfilerRunning,-uProfilerStart \ + -Wl,-u_Z21InitialMallocHook_NewPKvj,-u_Z22InitialMallocHook_MMapPKvS0_jiiix,-u_Z22InitialMallocHook_SbrkPKvi \ + -Wl,-u_Z21InitialMallocHook_NewPKvm,-u_Z22InitialMallocHook_MMapPKvS0_miiil,-u_Z22InitialMallocHook_SbrkPKvl \ + -Wl,--gc-sections + +LIBS := -lrt \ + -ldl \ + -lgtk-x11-2.0 \ + -lgdk-x11-2.0 \ + -latk-1.0 \ + -lgio-2.0 \ + -lpangoft2-1.0 \ + -lgdk_pixbuf-2.0 \ + -lm \ + -lpangocairo-1.0 \ + -lcairo \ + -lpango-1.0 \ + -lfreetype \ + -lfontconfig \ + -lgobject-2.0 \ + -lgmodule-2.0 \ + -lgthread-2.0 \ + -lglib-2.0 \ + -lnss3 \ + -lnssutil3 \ + -lsmime3 \ + -lplds4 \ + -lplc4 \ + -lnspr4 \ + -lpthread \ + -lz + +$(builddir)/googleurl_unittests: GYP_LDFLAGS := $(LDFLAGS_$(BUILDTYPE)) +$(builddir)/googleurl_unittests: LIBS := $(LIBS) +$(builddir)/googleurl_unittests: TOOLSET := $(TOOLSET) +$(builddir)/googleurl_unittests: $(OBJS) $(obj).target/build/temp_gyp/libgoogleurl.a $(obj).target/testing/libgtest.a $(obj).target/third_party/icu/libicuuc.a $(obj).target/base/allocator/liballocator.a $(obj).target/base/libbase.a $(obj).target/third_party/modp_b64/libmodp_b64.a $(obj).target/base/third_party/dynamic_annotations/libdynamic_annotations.a $(obj).target/base/libsymbolize.a $(obj).target/net/third_party/nss/libssl.a $(obj).target/third_party/zlib/libzlib.a $(obj).target/base/libxdg_mime.a $(obj).target/third_party/libevent/libevent.a $(obj).target/third_party/icu/libicudata.a $(obj).target/third_party/icu/libicui18n.a FORCE_DO_CMD + $(call do_cmd,link) + +all_deps += $(builddir)/googleurl_unittests +# Add target alias +.PHONY: googleurl_unittests +googleurl_unittests: $(builddir)/googleurl_unittests + +# Add executable to "all" target. +.PHONY: all +all: $(builddir)/googleurl_unittests + diff --git a/build/temp_gyp/pdfsqueeze.gyp b/build/temp_gyp/pdfsqueeze.gyp new file mode 100644 index 0000000..d7a742c --- /dev/null +++ b/build/temp_gyp/pdfsqueeze.gyp @@ -0,0 +1,46 @@ +# Copyright (c) 2009 The Chromium Authors. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. + +{ + 'targets': [ + { + 'target_name': 'pdfsqueeze', + 'type': 'executable', + 'sources': [ + '../../third_party/pdfsqueeze/pdfsqueeze.m', + ], + 'defines': [ + # Use defines to map the full path names that will be used for + # the vars into the short forms expected by pdfsqueeze.m. + '______third_party_pdfsqueeze_ApplyGenericRGB_qfilter=ApplyGenericRGB_qfilter', + '______third_party_pdfsqueeze_ApplyGenericRGB_qfilter_len=ApplyGenericRGB_qfilter_len', + ], + 'include_dirs': [ + '<(INTERMEDIATE_DIR)', + ], + 'libraries': [ + '$(SDKROOT)/System/Library/Frameworks/Foundation.framework', + '$(SDKROOT)/System/Library/Frameworks/Quartz.framework', + ], + 'actions': [ + { + 'action_name': 'Generate inline filter data', + 'inputs': [ + '../../third_party/pdfsqueeze/ApplyGenericRGB.qfilter', + ], + 'outputs': [ + '<(INTERMEDIATE_DIR)/ApplyGenericRGB.h', + ], + 'action': ['xxd', '-i', '<@(_inputs)', '<@(_outputs)'], + }, + ], + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: |