Commit 5d5dff40 by Adeel Mujahid

Merge pull request #818 from am11/master

Build: Adding libsass.gyp in a separate dir
parents 6a169d27 e75de502
...@@ -8,42 +8,6 @@ ...@@ -8,42 +8,6 @@
'src/custom_function_bridge.cpp', 'src/custom_function_bridge.cpp',
'src/custom_importer_bridge.cpp', 'src/custom_importer_bridge.cpp',
'src/sass_context_wrapper.cpp', 'src/sass_context_wrapper.cpp',
'src/libsass/ast.cpp',
'src/libsass/base64vlq.cpp',
'src/libsass/bind.cpp',
'src/libsass/cencode.c',
'src/libsass/constants.cpp',
'src/libsass/context.cpp',
'src/libsass/contextualize.cpp',
'src/libsass/cssize.cpp',
'src/libsass/emitter.cpp',
'src/libsass/error_handling.cpp',
'src/libsass/eval.cpp',
'src/libsass/expand.cpp',
'src/libsass/extend.cpp',
'src/libsass/file.cpp',
'src/libsass/functions.cpp',
'src/libsass/inspect.cpp',
'src/libsass/json.cpp',
'src/libsass/node.cpp',
'src/libsass/output.cpp',
'src/libsass/parser.cpp',
'src/libsass/plugins.cpp',
'src/libsass/position.cpp',
'src/libsass/prelexer.cpp',
'src/libsass/remove_placeholders.cpp',
'src/libsass/sass.cpp',
'src/libsass/sass2scss.cpp',
'src/libsass/sass_context.cpp',
'src/libsass/sass_functions.cpp',
'src/libsass/sass_util.cpp',
'src/libsass/sass_values.cpp',
'src/libsass/source_map.cpp',
'src/libsass/to_c.cpp',
'src/libsass/to_string.cpp',
'src/libsass/units.cpp',
'src/libsass/utf8_string.cpp',
'src/libsass/util.cpp',
'src/sass_types/boolean.cpp', 'src/sass_types/boolean.cpp',
'src/sass_types/color.cpp', 'src/sass_types/color.cpp',
'src/sass_types/error.cpp', 'src/sass_types/error.cpp',
...@@ -57,17 +21,38 @@ ...@@ -57,17 +21,38 @@
'include_dirs': [ 'include_dirs': [
'<!(node -e "require(\'nan\')")', '<!(node -e "require(\'nan\')")',
], ],
'cflags!': [
'-fno-exceptions'
],
'cflags_cc!': [
'-fno-exceptions'
],
'cflags_cc': [
'-fexceptions',
'-frtti'
],
'conditions': [ 'conditions': [
['libsass_ext == ""', {
'dependencies': [
'src/libsass.gyp:libsass',
]
}],
['libsass_ext == "auto"', {
'cflags_cc': [
'<!(pkg-config --cflags libsass)',
],
'link_settings': {
'ldflags': [
'<!(pkg-config --libs-only-other --libs-only-L libsass)',
],
'libraries': [
'<!(pkg-config --libs-only-l libsass)',
],
}
}],
['libsass_ext == "yes"', {
'cflags_cc': [
'<(libsass_cflags)',
],
'link_settings': {
'ldflags': [
'<(libsass_ldflags)',
],
'libraries': [
'<(libsass_library)',
],
}
}],
['OS=="mac"', { ['OS=="mac"', {
'xcode_settings': { 'xcode_settings': {
'OTHER_CPLUSPLUSFLAGS': [ 'OTHER_CPLUSPLUSFLAGS': [
......
...@@ -53,7 +53,10 @@ function afterBuild(options) { ...@@ -53,7 +53,10 @@ function afterBuild(options) {
*/ */
function build(options) { function build(options) {
var args = [path.join('node_modules', 'pangyp', 'bin', 'node-gyp'), 'rebuild'].concat(options.args); var args = [path.join('node_modules', 'pangyp', 'bin', 'node-gyp'), 'rebuild'].concat(
['libsass_ext', 'libsass_cflags', 'libsass_ldflags', 'libsass_library'].map(function(subject) {
return ['--', subject, '=', process.env[subject.toUpperCase()] || ''].join('');
})).concat(options.args);
console.log(['Building:', process.sass.runtime.execPath].concat(args).join(' ')); console.log(['Building:', process.sass.runtime.execPath].concat(args).join(' '));
......
...@@ -2,13 +2,11 @@ ...@@ -2,13 +2,11 @@
#define CUSTOM_FUNCTION_BRIDGE_H #define CUSTOM_FUNCTION_BRIDGE_H
#include <nan.h> #include <nan.h>
#include "libsass/sass_context.h" #include <sass_context.h>
#include "callback_bridge.h" #include "callback_bridge.h"
using namespace v8; using namespace v8;
class CustomFunctionBridge : public CallbackBridge<Sass_Value*> { class CustomFunctionBridge : public CallbackBridge<Sass_Value*> {
public: public:
CustomFunctionBridge(NanCallback* cb, bool is_sync) : CallbackBridge<Sass_Value*>(cb, is_sync) {} CustomFunctionBridge(NanCallback* cb, bool is_sync) : CallbackBridge<Sass_Value*>(cb, is_sync) {}
......
...@@ -2,16 +2,13 @@ ...@@ -2,16 +2,13 @@
#define CUSTOM_IMPORTER_BRIDGE_H #define CUSTOM_IMPORTER_BRIDGE_H
#include <nan.h> #include <nan.h>
#include "libsass/sass_context.h" #include <sass_context.h>
#include "callback_bridge.h" #include "callback_bridge.h"
using namespace v8; using namespace v8;
typedef Sass_Import** SassImportList; typedef Sass_Import** SassImportList;
class CustomImporterBridge : public CallbackBridge<SassImportList> { class CustomImporterBridge : public CallbackBridge<SassImportList> {
public: public:
CustomImporterBridge(NanCallback* cb, bool is_sync) : CallbackBridge<SassImportList>(cb, is_sync) {} CustomImporterBridge(NanCallback* cb, bool is_sync) : CallbackBridge<SassImportList>(cb, is_sync) {}
......
...@@ -4,42 +4,42 @@ ...@@ -4,42 +4,42 @@
'target_name': 'libsass', 'target_name': 'libsass',
'type': 'static_library', 'type': 'static_library',
'sources': [ 'sources': [
'src/libsass/ast.cpp', 'libsass/ast.cpp',
'src/libsass/base64vlq.cpp', 'libsass/base64vlq.cpp',
'src/libsass/bind.cpp', 'libsass/bind.cpp',
'src/libsass/cencode.c', 'libsass/cencode.c',
'src/libsass/constants.cpp', 'libsass/constants.cpp',
'src/libsass/context.cpp', 'libsass/context.cpp',
'src/libsass/contextualize.cpp', 'libsass/contextualize.cpp',
'src/libsass/cssize.cpp', 'libsass/cssize.cpp',
'src/libsass/emitter.cpp', 'libsass/emitter.cpp',
'src/libsass/error_handling.cpp', 'libsass/error_handling.cpp',
'src/libsass/eval.cpp', 'libsass/eval.cpp',
'src/libsass/expand.cpp', 'libsass/expand.cpp',
'src/libsass/extend.cpp', 'libsass/extend.cpp',
'src/libsass/file.cpp', 'libsass/file.cpp',
'src/libsass/functions.cpp', 'libsass/functions.cpp',
'src/libsass/inspect.cpp', 'libsass/inspect.cpp',
'src/libsass/json.cpp', 'libsass/json.cpp',
'src/libsass/node.cpp', 'libsass/node.cpp',
'src/libsass/output.cpp', 'libsass/output.cpp',
'src/libsass/parser.cpp', 'libsass/parser.cpp',
'src/libsass/plugins.cpp', 'libsass/plugins.cpp',
'src/libsass/position.cpp', 'libsass/position.cpp',
'src/libsass/prelexer.cpp', 'libsass/prelexer.cpp',
'src/libsass/remove_placeholders.cpp', 'libsass/remove_placeholders.cpp',
'src/libsass/sass.cpp', 'libsass/sass.cpp',
'src/libsass/sass2scss.cpp', 'libsass/sass2scss.cpp',
'src/libsass/sass_context.cpp', 'libsass/sass_context.cpp',
'src/libsass/sass_functions.cpp', 'libsass/sass_functions.cpp',
'src/libsass/sass_util.cpp', 'libsass/sass_util.cpp',
'src/libsass/sass_values.cpp', 'libsass/sass_values.cpp',
'src/libsass/source_map.cpp', 'libsass/source_map.cpp',
'src/libsass/to_c.cpp', 'libsass/to_c.cpp',
'src/libsass/to_string.cpp', 'libsass/to_string.cpp',
'src/libsass/units.cpp', 'libsass/units.cpp',
'src/libsass/utf8_string.cpp', 'libsass/utf8_string.cpp',
'src/libsass/util.cpp' 'libsass/util.cpp'
], ],
'cflags!': [ 'cflags!': [
'-fno-exceptions' '-fno-exceptions'
...@@ -52,7 +52,7 @@ ...@@ -52,7 +52,7 @@
'-frtti' '-frtti'
], ],
'direct_dependent_settings': { 'direct_dependent_settings': {
'include_dirs': [ 'src/libsass' ], 'include_dirs': [ 'libsass' ],
}, },
'conditions': [ 'conditions': [
['OS=="mac"', { ['OS=="mac"', {
...@@ -75,13 +75,7 @@ ...@@ -75,13 +75,7 @@
'/EHsc' '/EHsc'
] ]
} }
}, }
'msvs_disabled_warnings': [
# conversion from `double` to `size_t`, possible loss of data
4244,
# decorated name length exceeded
4503
]
}], }],
['OS!="win"', { ['OS!="win"', {
'cflags_cc+': [ 'cflags_cc+': [
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
#include <nan.h> #include <nan.h>
#include <stdlib.h> #include <stdlib.h>
#include <condition_variable> #include <condition_variable>
#include "libsass/sass_context.h" #include <sass_context.h>
#include "custom_function_bridge.h" #include "custom_function_bridge.h"
#include "custom_importer_bridge.h" #include "custom_importer_bridge.h"
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
#define SASS_TYPES_FACTORY_H #define SASS_TYPES_FACTORY_H
#include <nan.h> #include <nan.h>
#include "../libsass/sass_values.h" #include <sass_values.h>
#include "value.h" #include "value.h"
namespace SassTypes namespace SassTypes
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
#define SASS_TYPES_VALUE_H #define SASS_TYPES_VALUE_H
#include <nan.h> #include <nan.h>
#include "../libsass/sass_values.h" #include <sass_values.h>
namespace SassTypes namespace SassTypes
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment