summaryrefslogtreecommitdiff
path: root/BUILD.gn
AgeCommit message (Collapse)Author
2015-11-10Revert "Revert "Revert "Revert "Cleanup some numeric code.""""dan sinclair
This reverts commit da06e60fb5a095a91c9a4f509466667878624cb3. Cleanup some numeric code. This changes the various comparisons of char >= '0' && char <= '9' and char < '0' || char > '9' to use std::isdigit checks. It also cleans up a handful of hex to digit conversions to call one common method. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1433513002 .
2015-11-10Remove core/src/fpdfapi/fpdf_font/common.h and use stdint types.Lei Zhang
R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1437603002 .
2015-11-09Remove dead code in fx_codec_jbig_enc.cpp.Lei Zhang
R=weili@chromium.org Review URL: https://codereview.chromium.org/1420693004 .
2015-11-09Add path service to retrieve test data directory at run time so tests can be ↵Wei Li
run from any directory. Previously the tests which read test files assume the current directory is under pdfium. Running from any other directory will break the build. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1408003014 .
2015-11-05Fix all relative includes to third_party.chromium/2560chromium/2559chromium/2558chromium/2557Lei Zhang
- In non-standalone builds, use the provided jpeg library. - Run gn format over all the GN files. - Also roll DEPS for buildtools to c2f2598. BUG=541704 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1425153006 .
2015-11-05Update bundled freetype to 2.6.1Oliver Chang
Also adds a README.pdfium and 0000-include.patch that details the local modifications made. Also rolls testing/corpus to 45f88c6914fcac26ad930bb0ebbfa468c21db0a5 which includes regenerated corpus expectations. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1413673003 .
2015-11-04Enforce input and output dimensionalities for CPDF_StitchFunc.Oliver Chang
Also cleans up some places in the relevant functions since we're here. BUG=551460 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1421783004 .
2015-11-03Revert "Revert "Revert "Cleanup some numeric code."""Dan Sinclair
This reverts commit e0e922db5fb77df9a5a9cc802096f484ed21da1c. Broke Windows build. FAILED: ninja -t msvc -e environment.x86 -- "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\amd64_x86\cl.exe" /nologo /showIncludes /FC @obj\core\src\fxcrt\fxcrt.fx_basic_gcc.obj.rsp /c ..\..\core\src\fxcrt\fx_basic_gcc.cpp /Foobj\core\src\fxcrt\fxcrt.fx_basic_gcc.obj /Fdobj\fxcrt.cc.pdb e:\b\build\slave\windows\build\pdfium\core\src\fxcrt\fx_basic_gcc.cpp(28) : error C2220: warning treated as error - no 'object' file generated e:\b\build\slave\windows\build\pdfium\core\src\fxcrt\fx_basic_gcc.cpp(75) : see reference to function template instantiation 'T FXSYS_StrToInt<int32_t,const FX_WCHAR*>(STR_T)' being compiled with [ T=int32_t , STR_T=const FX_WCHAR * ] e:\b\build\slave\windows\build\pdfium\core\src\fxcrt\fx_basic_gcc.cpp(28) : warning C4244: 'argument' : conversion from 'const FX_WCHAR' to 'char', possible loss of data FAILED: ninja -t msvc -e environment.x86 -- "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\amd64_x86\cl.exe" /nologo /showIncludes /FC @obj\core\src\fpdftext\fpdftext.fpdf_text.obj.rsp /c ..\..\core\src\fpdftext\fpdf_text.cpp /Foobj\core\src\fpdftext\fpdftext.fpdf_text.obj /Fdobj\fpdftext.cc.pdb e:\b\build\slave\windows\build\pdfium\core\src\fpdftext\fpdf_text.cpp(439) : error C2039: 'isdigit' : is not a member of 'std' FAILED: ninja -t msvc -e environment.x86 -- "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\amd64_x86\cl.exe" /nologo /showIncludes /FC @obj\core\src\fxcrt\fxcrt.fx_basic_wstring.obj.rsp /c ..\..\core\src\fxcrt\fx_basic_wstring.cpp /Foobj\core\src\fxcrt\fxcrt.fx_basic_wstring.obj /Fdobj\fxcrt.cc.pdb e:\b\build\slave\windows\build\pdfium\core\src\fxcrt\fx_basic_wstring.cpp(973) : error C2220: warning treated as error - no 'object' file generated e:\b\build\slave\windows\build\pdfium\core\src\fxcrt\fx_basic_wstring.cpp(973) : warning C4244: 'argument' : conversion from 'const FX_WCHAR' to 'char', possible loss of data e:\b\build\slave\windows\build\pdfium\core\src\fxcrt\fx_basic_wstring.cpp(981) : warning C4244: 'argument' : conversion from 'const FX_WCHAR' to 'char', possible loss of data FAILED: ninja -t msvc -e environment.x86 -- "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\amd64_x86\cl.exe" /nologo /showIncludes /FC @obj\core\src\fpdftext\fpdftext.fpdf_text_int.obj.rsp /c ..\..\core\src\fpdftext\fpdf_text_int.cpp /Foobj\core\src\fpdftext\fpdftext.fpdf_text_int.obj /Fdobj\fpdftext.cc.pdb e:\b\build\slave\windows\build\pdfium\core\src\fpdftext\fpdf_text_int.cpp(2436) : error C2039: 'isdigit' : is not a member of 'std' e:\b\build\slave\windows\build\pdfium\core\src\fpdftext\fpdf_text_int.cpp(2440) : error C2039: 'isdigit' : is not a member of 'std' ninja: build stopped: subcommand failed. TBR=tsepez@chromium.org Review URL: https://codereview.chromium.org/1431683008 .
2015-11-03Revert "Revert "Cleanup some numeric code.""Dan Sinclair
This reverts commit 23d576f0b498bd4f37ef2175916223a2e5ea0324. Cleanup some numeric code. This changes the various comparisons of char >= '0' && char <= '9' and char < '0' || char > '9' to use std::isdigit checks. It also cleans up a handful of hex to digit conversions to call one common method. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1405253007 .
2015-11-03Add test for CPDF_SyntaxParser::ReadHexString.Dan Sinclair
This CL adds tests for the ReadHexString method of the syntax parser. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1433503002 .
2015-11-02Add test for CPDF_StreamParser::ReadHexString.chromium/2555chromium/2554chromium/2553Dan Sinclair
This CL adds a unit test for the ReadHexString method. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1408213008 .
2015-11-02Add tests for CMap_GetCode and CMap_GetCodeRange.Dan Sinclair
This CL adds tests for the CMap_GetCode and CMap_GetCodeRange methods. To do so, it moves the methods to be static private members of CPDF_CMapParser and makes the test class a friend. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1414013005 .
2015-11-02Add a test for the HexDecode method.Dan Sinclair
I moved the declaration to be public, instead of having it implicit in one file and defined in a seperate cpp file. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1410873009 .
2015-11-02Add test for StringToCode and StringToWideStringDan Sinclair
This CL adds a test case for the StringToCode and StringToWideString methods in fpdf_font.cpp. In order to do so, it moves the methods to be private methods of CPDF_ToUnicodeMap and make the tests friends of the class. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1428593005 .
2015-11-02Support linearized loadingJun Fang
BUG=446715 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1353093003 .
2015-10-30Port https://codereview.chromium.org/398163006 to gn.Nico Weber
BUG=376399 TBR=thestig Review URL: https://codereview.chromium.org/1415883010 .
2015-10-30Remove external jpeg provider interface.Tom Sepez
It is unused in PDFium. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1407903005 .
2015-10-30More chromium_code whack-a-mole.Nico Weber
BUG=pdfium:29 R=thestig@chromium.org Review URL: https://codereview.chromium.org/1419943006 .
2015-10-30chromium_code tweaks for Windows and Linux/gyp.Nico Weber
BUG=pdfium:29 R=thestig@chromium.org Review URL: https://codereview.chromium.org/1431563002 .
2015-10-30Turn on chromium_code (except -Wsign-compare, for now) for pdfiumNico Weber
BUG=pdfium:29 R=thestig@chromium.org Review URL: https://codereview.chromium.org/1411583005 .
2015-10-30Add standard "Must be after no_chromium_code" comment in GN files.Lei Zhang
R=thakis@chromium.org Review URL: https://codereview.chromium.org/1411563004 .
2015-10-29Revert "Cleanup some numeric code."dan sinclair
This reverts commit 589f7e0a57675efce9810c15a3e9b7c49bf0bc90. Broke the build on Mac, unable to find std::isdigit. TBR=thestig@chromium.org Review URL: https://codereview.chromium.org/1428853002 .
2015-10-29Cleanup some numeric code.Dan Sinclair
This changes the various comparisons of char >= '0' && char <= '9' and char < '0' || char > '9' to use std::isdigit checks. It also cleans up a handful of hex to digit conversions to call one common method. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1415933005 .
2015-10-27Type check the m_pShadingObj before assuming it's a stream.Dan Sinclair
The m_pShadingObj can be a stream or a dictionary depending on how it's used. This CL adds some simple type checking to make sure that the type of the object matches what we expect. BUG=chromium:547706 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1421973004 .
2015-10-26Delete unused fpdfsdkdll.rc and resource.h.Lei Zhang
BUG=pdfium:241 R=brucedawson@chromium.org Review URL: https://codereview.chromium.org/1422193002 .
2015-10-26Partial revert of commit c6d8683 to fix a GN + Win/Clang build warning.chromium/2552chromium/2551chromium/2550chromium/2549chromium/2548Lei Zhang
BUG=547906 TBR=thakis@chromium.org Review URL: https://codereview.chromium.org/1420503012 .
2015-10-26Revert "Make m_pShadingObj a CPDF_Stream instead of CPDF_Object."Dan Sinclair
There appear to be a bunch of corpus tests which fail with this change such as FAILURE: shading1.pdf This reverts commit 85361b227ad6786d2aeef8409b79a8d077a26ee9. Make m_pShadingObj a CPDF_Stream instead of CPDF_Object. This object is required to be a stream and was being converted as such. With the new type checking this caused us to pass a nullptr where previously we'd have, incorrectly, cast a CPDF_Dictionary to a CPDF_Stream. This CL changes the m_pShadingObj to always be a CPDF_Stream. Then, we never go down the bad code path because we check if m_pShadingObj is nullptr earlier and bail out. BUG=chromium:547706 TBR=tsepez@chromium.org Review URL: https://codereview.chromium.org/1414283003 .
2015-10-26Make m_pShadingObj a CPDF_Stream instead of CPDF_Object.Dan Sinclair
This object is required to be a stream and was being converted as such. With the new type checking this caused us to pass a nullptr where previously we'd have, incorrectly, cast a CPDF_Dictionary to a CPDF_Stream. This CL changes the m_pShadingObj to always be a CPDF_Stream. Then, we never go down the bad code path because we check if m_pShadingObj is nullptr earlier and bail out. BUG=chromium:547706 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1426713002 .
2015-10-22Sync build settings to XFA.Dan Sinclair
This matches some whitespace/ordering changes made to BUILD.gn on XFA branch. TBR=tsepez@chromium.org Review URL: https://codereview.chromium.org/1410773007 .
2015-10-21Remove FFL_Utils as it is unused.Dan Sinclair
None of the methods in this file are used and it is not included anywhere. Removing. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1417783004 .
2015-10-19Remove unused CFFL_Notify.Lei Zhang
R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1411963002 .
2015-10-19Consolidate test support code.Tom Sepez
Removes duplication between pdfium_test and pdfium_embeddertest R=thestig@chromium.org Review URL: https://codereview.chromium.org/1416713002 .
2015-10-09Allow compiling PDFium without V8.Tom Sepez
Original patch from issue 1391843004 at patchset 1 (http://crrev.com/1391843004#ps1) Introduce a pdf_enable_v8 GYP variable, which controls a corresponding PDF_ENABLE_V8 #define, and bring in the real JS library when set. Otherwise, link against a stub JS runtime. BUG=pdfium:211 R=dml@google.com, jochen@chromium.org, thestig@chromium.org Review URL: https://codereview.chromium.org/1395733006 .
2015-10-07Stop inlining CJBig2_BitStream.Lei Zhang
R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1393823002 .
2015-10-06Make the vast majority of JS headers private to src/javascript.Tom Sepez
The fpdfsdk/include/javascript/IJavascript.h is the sole API. This required moving a creaton method to it from JS_Runtime. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1389783002 .
2015-10-05Remove JavaScript.hTom Sepez
It merely includes a bunch of other .h files which are handled better since we fixed IWYU. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1385983002 .
2015-09-24Split up JBig2_GeneralDecoder.cpp.Lei Zhang
R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1359233002 .
2015-09-22Change nonstd::unique_ptr to take a custom deleter.Lei Zhang
Code is mostly stolen from Chromium's scoped_ptr. - Add unit tests. - Use this to fix a leak. BUG=chromium:531408 R=jyasskin@chromium.org, tsepez@chromium.org Review URL: https://codereview.chromium.org/1351383004 .
2015-09-16Make pdfium_embeddertests link in debug component builds.chromium/2516chromium/2515chromium/2514chromium/2513chromium/2512chromium/2511Nico Weber
Target v8 has: 'direct_dependent_settings': { 'defines': [ 'V8_SHARED', 'USING_V8_SHARED', ], }, For this to work, targets using v8 headers have to depend on v8 directly, else the V8_EXPORT macro won't work. Add a direct dependency on v8. BUG=none TEST=do a debug component build of pdfium_embeddertests on Win, should work without linker errors R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1349843002 .
2015-09-15Refactor fxjs_v8 and add embeddertests for it.Tom Sepez
This forces the layer defined by fxjs_v8.h to be (more) self-contained, so that it can be tested apart from the CJS_* objects (in fpdfsdk/{src,include}/javascript. This implies the array buffer allocator must be part of fxjs_v8. One wrinkle is that we'd like to be able to test an isolate upon which no native objects have been added, so some initialization that would have occurred as part of object definition must be made explicit. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1338073002 .
2015-09-10Remove CJBig2_Object, CJBig2_Module, and friends.Lei Zhang
R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1326953006 .
2015-08-31Move configs out of targets in GN build files.chromium/2500chromium/2499chromium/2498Brett Wilson
I'm trying to disallow this since it's confusing. It looks like it provides scoping for the inner config, but it is actually no different than declaring the config at the top level. For clarify, all configs and targets should be declared at the top level. R=jam@chromium.org Review URL: https://codereview.chromium.org/1328443003 .
2015-08-19Extern in .cpp files is a code smell.Tom Sepez
Part 1. Move to headers so compiler can type check against the definitions. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1299963002 .
2015-08-18Remove unused code warnings found by clang.Lei Zhang
R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1297593005 .
2015-08-17Clean up IFX_BidiCharLei Zhang
- Replace IFX_BidiChar with just CFX_BidiChar - Document implementation - Change out parameters to pointers - Remove dead code - Add an enum for bidi directions - Move several externs to a header - Add unit tests R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1197643002 .
2015-08-16Suppress -Wswitch for pdfium's fxge target for now.chromium/2487chromium/2486Nico Weber
BUG=pdfium:188 R=thestig@chromium.org Review URL: https://codereview.chromium.org/1301473003 .
2015-08-13Cleanup: Remove unused CPDF_Stream::Clone().Lei Zhang
Cloning a CPDF_Stream actually happens via CPDF_Object::Clone(). Transitively, remove: - GetStreamFilter() -- all the filters. R=jam@chromium.org Review URL: https://codereview.chromium.org/1288543002 .
2015-08-07Fix FXSYS_itoa() implementation.Tom Sepez
I thought about removing it, but decided to fix it instead until c++11 hits and there may be better alternatives. Remove unused variants. BUG=517854 R=brucedawson@chromium.org, thestig@chromium.org Review URL: https://codereview.chromium.org/1274423003 .
2015-07-30Use bundled freetype for the pdfium_test binary.Tom Sepez
But use platform freetype for library itself according to the rules for the platform. This should greatly reduce per-platform diffs in the corpus tests, but requires that the corpus be rolled at the same time. When this rolls into chromium, its src/BUILD.gn will need to be updated to say third_party:fx_freetype instead of third_party:freetype. R=jam@chromium.org Review URL: https://codereview.chromium.org/1267493005 .
2015-07-14Move FPDFAPI_FlateInit() prototype and friends to .h fileTom Sepez
R=thestig@chromium.org Review URL: https://codereview.chromium.org/1240713004 .