pdfviewer: make pdfviewer compile on mac
Review URL: https://codereview.chromium.org/23163007
git-svn-id: http://skia.googlecode.com/svn/trunk@10721 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/gyp/pdfviewer.gyp b/gyp/pdfviewer.gyp
index bcb96ea..52e14d1 100644
--- a/gyp/pdfviewer.gyp
+++ b/gyp/pdfviewer.gyp
@@ -7,6 +7,21 @@
'includes': [
'apptype_console.gypi',
],
+ # TODO(edisonn): Hack! on mack, SHARED_INTERMEDIATE_DIR can't be reliable used in a sources context
+ 'conditions' : [
+ [ 'skia_os != "mac"', {
+ 'variables': {
+ 'GENERATE_DIR%' : '<(SHARED_INTERMEDIATE_DIR)',
+ },
+ },
+ ],
+ [ 'skia_os == "mac"', {
+ 'variables': {
+ 'GENERATE_DIR%' : '../src/tmp_autogen',
+ },
+ },
+ ],
+ ],
'targets': [
{
'target_name': 'libpdfviewer',
@@ -22,17 +37,8 @@
'../experimental/PdfViewer/pdfparser/native/SkPdfNativeObject.cpp',
'../experimental/PdfViewer/pdfparser/native/SkPdfNativeTokenizer.cpp',
'../experimental/PdfViewer/pdfparser/native/SkPdfNativeDoc.cpp',
- '<(SHARED_INTERMEDIATE_DIR)/native/autogen/SkPdfMapper_autogen.cpp',
- '<(SHARED_INTERMEDIATE_DIR)/native/autogen/SkPdfHeaders_autogen.cpp',
- ],
- 'copies': [
- {
- 'files': [
- '../experimental/PdfViewer/datatypes.py',
- '../experimental/PdfViewer/generate_code.py',
- ],
- 'destination': '<(SHARED_INTERMEDIATE_DIR)',
- },
+ '<(GENERATE_DIR)/native/autogen/SkPdfMapper_autogen.cpp',
+ '<(GENERATE_DIR)/native/autogen/SkPdfHeaders_autogen.cpp',
],
'actions': [
{
@@ -42,34 +48,49 @@
'../experimental/PdfViewer/PdfReference-okular-1.txt',
],
'outputs': [
- '<(SHARED_INTERMEDIATE_DIR)/pdfspec_autogen.py',
+ '<(GENERATE_DIR)/pdfspec_autogen.py',
],
- 'action': ['python', '../experimental/PdfViewer/spec2def.py', '../experimental/PdfViewer/PdfReference-okular-1.txt', '<(SHARED_INTERMEDIATE_DIR)/pdfspec_autogen.py'],
+ 'action': ['python', '../experimental/PdfViewer/spec2def.py', '../experimental/PdfViewer/PdfReference-okular-1.txt', '<(GENERATE_DIR)/pdfspec_autogen.py'],
+ },
+ {
+ 'action_name': 'copy_files',
+ 'variables': {
+ 'sources' : [
+ '../experimental/PdfViewer/datatypes.py',
+ '../experimental/PdfViewer/generate_code.py',
+ ]
+ },
+ 'inputs' : ['<(sources)'],
+ 'outputs': [
+ '<(GENERATE_DIR)/datatypes.py',
+ '<(GENERATE_DIR)/generate_code.py',
+ ],
+ 'action': ['python', '../experimental/PdfViewer/copy_files.py', '<(GENERATE_DIR)', '<@(sources)'],
},
{
'action_name': 'generate_code',
'inputs': [
- '<(SHARED_INTERMEDIATE_DIR)/datatypes.py',
- '<(SHARED_INTERMEDIATE_DIR)/generate_code.py',
- '<(SHARED_INTERMEDIATE_DIR)/pdfspec_autogen.py',
+ '<(GENERATE_DIR)/datatypes.py',
+ '<(GENERATE_DIR)/generate_code.py',
+ '<(GENERATE_DIR)/pdfspec_autogen.py',
],
'outputs': [
- '<(SHARED_INTERMEDIATE_DIR)/native/autogen/SkPdfEnums_autogen.h',
- '<(SHARED_INTERMEDIATE_DIR)/native/autogen/SkPdfMapper_autogen.h',
- '<(SHARED_INTERMEDIATE_DIR)/native/autogen/SkPdfHeaders_autogen.h',
- '<(SHARED_INTERMEDIATE_DIR)/native/autogen/SkPdfMapper_autogen.cpp',
- '<(SHARED_INTERMEDIATE_DIR)/native/autogen/SkPdfHeaders_autogen.cpp',
+ '<(GENERATE_DIR)/native/autogen/SkPdfEnums_autogen.h',
+ '<(GENERATE_DIR)/native/autogen/SkPdfMapper_autogen.h',
+ '<(GENERATE_DIR)/native/autogen/SkPdfHeaders_autogen.h',
+ '<(GENERATE_DIR)/native/autogen/SkPdfMapper_autogen.cpp',
+ '<(GENERATE_DIR)/native/autogen/SkPdfHeaders_autogen.cpp',
# TODO(edisonn): ok, there are many more files here, which we should list but since
# any change in the above should trigger a change here, we should be fine normally
],
- 'action': ['python', '<(SHARED_INTERMEDIATE_DIR)/generate_code.py', '<(SHARED_INTERMEDIATE_DIR)'],
+ 'action': ['python', '<(GENERATE_DIR)/generate_code.py', '<(GENERATE_DIR)'],
},
],
'include_dirs': [
'../experimental/PdfViewer',
'../experimental/PdfViewer/pdfparser',
'../experimental/PdfViewer/pdfparser/native',
- '<(SHARED_INTERMEDIATE_DIR)/native/autogen',
+ '<(GENERATE_DIR)/native/autogen',
],
'dependencies': [
'skia_lib.gyp:skia_lib',