# Copyright 2008, Google Inc. # All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are # met: # # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above # copyright notice, this list of conditions and the following disclaimer # in the documentation and/or other materials provided with the # distribution. # * Neither the name of Google Inc. nor the names of its # contributors may be used to endorse or promote products derived from # this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # Copyright 2008 Google Inc. All Rights Reserved. Import('env') env = env.Clone() env.Prepend( CPPPATH = [ '$ICU38_DIR/public/common', '$CHROME_SRC_DIR', ], ) env.Append( CPPDEFINES = [ 'OPENOFFICEORG', 'CHROME_SPELL', 'HUNSPELL_CHROME_CLIENT', ], ) if env.Bit('windows'): env.Append( CPPDEFINES = [ 'W32', ], CCFLAGS = [ '/TP', '/wd4800', ], ) if env.Bit('linux'): env.Append( CCFLAGS = [ '-Wno-parentheses', '-Wno-unused-value', '-Wno-unused-variable', '-Wno-write-strings', ], ) input_files = ChromeFileList([ # TODO(sgk): violate standard indentation so we don't have to # reindent too much when we remove the explicit MSVSFilter() calls # in favor of generating the hierarchy to reflect the file system. MSVSFilter('parsers', [ 'src/parsers/textparser.cxx', 'src/parsers/textparser.hxx', ]), MSVSFilter('hunspell', [ 'src/hunspell/affentry.cxx', 'src/hunspell/affentry.hxx', 'src/hunspell/affixmgr.cxx', 'src/hunspell/affixmgr.hxx', 'src/hunspell/atypes.hxx', 'src/hunspell/baseaffix.hxx', 'src/hunspell/csutil.cxx', 'src/hunspell/csutil.hxx', 'src/hunspell/dictmgr.cxx', 'src/hunspell/dictmgr.hxx', 'src/hunspell/hashmgr.cxx', 'src/hunspell/hashmgr.hxx', 'src/hunspell/htypes.hxx', 'src/hunspell/hunspell.cxx', 'src/hunspell/hunspell.h', 'src/hunspell/hunspell.hxx', 'src/hunspell/langnum.hxx', 'src/hunspell/suggestmgr.cxx', 'src/hunspell/suggestmgr.hxx', 'src/hunspell/utf_info.hxx', ]), MSVSFilter('google', [ 'google/bdict.h', 'google/bdict_affentry.h', 'google/bdict_reader.h', 'google/bdict_writer.h', ]), ]) if env.Bit('linux'): bdict_reader_o = env.ChromeObject('google/bdict_reader.cc') input_files.Append(bdict_reader_o) bdict_writer_o = env.ChromeObject('google/bdict_writer.cc') input_files.Append(bdict_writer_o) Export('bdict_reader_o', 'bdict_writer_o') else: input_files.Append( MSVSFilter('google', [ 'google/bdict_reader.cc', 'google/bdict_writer.cc', ]), ) env.ChromeLibrary('hunspell', input_files) p = env.ChromeMSVSProject('hunspell.vcproj', dest=('$CHROME_SRC_DIR/chrome/' + 'third_party/hunspell/hunspell.vcproj'), guid='{D5E8DCB2-9C61-446F-8BEE-B18CA0E0936E}', keyword='Win32Proj', # TODO(sgk): when we can intuit the hierarchy # from the built targets. #buildtargets=TODO, files=input_files, relative_path_prefix='./', tools=[ 'VCPreBuildEventTool', 'VCCustomBuildTool', 'VCXMLDataGeneratorTool', 'VCWebServiceProxyGeneratorTool', 'VCMIDLTool', 'VCCLCompilerTool', 'VCManagedResourceCompilerTool', 'VCResourceCompilerTool', 'VCPreLinkEventTool', 'VCLibrarianTool', 'VCALinkTool', 'VCXDCMakeTool', 'VCBscMakeTool', 'VCFxCopTool', 'VCPostBuildEventTool', ], ConfigurationType='4') p.AddConfig('Debug|Win32', InheritedPropertySheets=[ '$(SolutionDir)../build/common.vsprops', '../../../build/debug.vsprops', '$(SolutionDir)../build/external_code.vsprops', './hunspell.vsprops', './using_hunspell.vsprops', ]) p.AddConfig('Release|Win32', InheritedPropertySheets=[ '$(SolutionDir)../build/common.vsprops', '../../../build/release.vsprops', '$(SolutionDir)../build/external_code.vsprops', './hunspell.vsprops', './using_hunspell.vsprops', ])