@@ -16,14 +16,24 @@ CFLAGS ?= -Wall
16
16
CXXFLAGS ?= -Wall
17
17
LDFLAGS ?= -Wall
18
18
ifndef COVERAGE
19
- CFLAGS += -O2
20
- CXXFLAGS += -O2
21
- LDFLAGS += -O2
19
+ CFLAGS += -O3 -pipe -DNDEBUG -fomit-frame-pointer
20
+ CXXFLAGS += -O3 -pipe -DNDEBUG -fomit-frame-pointer
21
+ LDFLAGS += -O3 -pipe -DNDEBUG -fomit-frame-pointer
22
22
else
23
23
CFLAGS += -O1 -fno-omit-frame-pointer
24
24
CXXFLAGS += -O1 -fno-omit-frame-pointer
25
25
LDFLAGS += -O1 -fno-omit-frame-pointer
26
26
endif
27
+ ifeq "$(LIBSASS_GPO ) " "generate"
28
+ CFLAGS += -fprofile-generate
29
+ CXXFLAGS += -fprofile-generate
30
+ LDFLAGS += -fprofile-generate -Wl,-fprofile-instr-generate
31
+ endif
32
+ ifeq "$(LIBSASS_GPO ) " "use"
33
+ CFLAGS += -fprofile-use
34
+ CXXFLAGS += -fprofile-use
35
+ LDFLAGS += -fprofile-use -Wl,-fprofile-instr-use
36
+ endif
27
37
CAT ?= $(if $(filter $(OS ) ,Windows_NT) ,type,cat)
28
38
29
39
ifneq (,$(findstring /cygdrive/,$(PATH ) ) )
84
94
CXXFLAGS += -I include
85
95
endif
86
96
97
+ CFLAGS += -I $(SASS_LIBSASS_PATH ) /src
98
+ CXXFLAGS += -I $(SASS_LIBSASS_PATH ) /src
99
+
87
100
CFLAGS += $(EXTRA_CFLAGS )
88
101
CXXFLAGS += $(EXTRA_CXXFLAGS )
89
102
LDFLAGS += $(EXTRA_LDFLAGS )
@@ -144,7 +157,7 @@ SASS_SASSC_PATH ?= sassc
144
157
SASS_SPEC_PATH ?= sass-spec
145
158
SASS_SPEC_SPEC_DIR ?= spec
146
159
LIBSASS_SPEC_PATH ?= libsass-spec
147
- LIBSASS_SPEC_SPEC_DIR ?= spec
160
+ LIBSASS_SPEC_SPEC_DIR ?= suites
148
161
SASSC_BIN = $(SASS_SASSC_PATH ) /bin/sassc
149
162
RUBY_BIN = ruby
150
163
@@ -177,6 +190,7 @@ endif
177
190
include Makefile.conf
178
191
OBJECTS = $(addprefix src/,$(SOURCES:.cpp=.o ) )
179
192
COBJECTS = $(addprefix src/,$(CSOURCES:.c=.o ) )
193
+ HEADOBJS = $(addprefix src/,$(HPPFILES:.hpp=.hpp.gch ) )
180
194
RCOBJECTS = $(RESOURCES:.rc=.o )
181
195
182
196
DEBUG_LVL ?= NONE
@@ -185,6 +199,7 @@ CLEANUPS ?=
185
199
CLEANUPS += $(RCOBJECTS )
186
200
CLEANUPS += $(COBJECTS )
187
201
CLEANUPS += $(OBJECTS )
202
+ CLEANUPS += $(HEADOBJS )
188
203
CLEANUPS += $(LIBSASS_LIB )
189
204
190
205
all : $(BUILD )
@@ -218,15 +233,18 @@ lib/libsass.dll: $(COBJECTS) $(OBJECTS) $(RCOBJECTS) | lib
218
233
$(CXX ) -shared $(LDFLAGS ) -o $@ $(COBJECTS ) $(OBJECTS ) $(RCOBJECTS ) $(LDLIBS ) \
219
234
-s -Wl,--subsystem,windows,--out-implib,lib/libsass.a
220
235
221
- % .o : % .c
222
- $(CC ) $(CFLAGS ) -c -o $@ $<
223
-
224
- % .o : % .rc
236
+ $(RCOBJECTS ) : % .o: % .rc
225
237
$(WINDRES ) -i $< -o $@
226
238
227
- % .o : % .cpp
239
+ $( OBJECTS ) : % .o: % .cpp
228
240
$(CXX ) $(CXXFLAGS ) -c -o $@ $<
229
241
242
+ $(COBJECTS ) : % .o: % .c
243
+ $(CC ) $(CFLAGS ) -c -o $@ $<
244
+
245
+ $(HEADOBJS ) : % .hpp.gch: % .hpp
246
+ $(CXX ) $(CXXFLAGS ) -x c++-header -c -o $@ $<
247
+
230
248
% : % .o static
231
249
$(CXX ) $(CXXFLAGS ) -o $@ $+ $(LDFLAGS ) $(LDLIBS )
232
250
@@ -252,7 +270,6 @@ $(DESTDIR)$(PREFIX)/include/%.h: include/%.h \
252
270
$(INSTALL) -v -m0644 "$<" "$@"
253
271
254
272
install-headers : $(DESTDIR )$(PREFIX ) /include/sass.h \
255
- $(DESTDIR)$(PREFIX)/include/sass2scss.h \
256
273
$(DESTDIR)$(PREFIX)/include/sass/base.h \
257
274
$(DESTDIR)$(PREFIX)/include/sass/version.h \
258
275
$(DESTDIR)$(PREFIX)/include/sass/values.h \
@@ -302,55 +319,55 @@ test_build: $(SASSC_BIN) $(SASS_SPEC_PATH) $(LIBSASS_SPEC_PATH)
302
319
--cmd-args " -I $( SASS_SPEC_PATH) /$( SASS_SPEC_SPEC_DIR) " \
303
320
$(LOG_FLAGS ) $(SASS_SPEC_PATH ) /$(SASS_SPEC_SPEC_DIR )
304
321
$(RUBY_BIN ) $(SASS_SPEC_PATH ) /sass-spec.rb -c $(SASSC_BIN ) --impl libsass \
305
- --cmd-args " -I $( LIBSASS_SPEC_PATH) /$( LIBSASS_SPEC_SPEC_DIR) " \
322
+ --cmd-args " -I . -I $( LIBSASS_SPEC_PATH) /$( LIBSASS_SPEC_SPEC_DIR) " \
306
323
$(LOG_FLAGS ) $(LIBSASS_SPEC_PATH ) /$(LIBSASS_SPEC_SPEC_DIR )
307
324
$(RUBY_BIN ) $(SASS_SPEC_PATH ) /sass-spec.rb -c $(SASSC_BIN ) --impl libsass \
308
- --cmd-args " -I $( LIBSASS_SPEC_PATH) /styles/compressed -t compressed" \
325
+ --cmd-args " -I . -I $( LIBSASS_SPEC_PATH) /styles/compressed -t compressed" \
309
326
$(LOG_FLAGS ) $(LIBSASS_SPEC_PATH ) /styles/compressed
310
327
$(RUBY_BIN ) $(SASS_SPEC_PATH ) /sass-spec.rb -c $(SASSC_BIN ) --impl libsass \
311
- --cmd-args " -I $( LIBSASS_SPEC_PATH) /styles/nested -t nested" \
328
+ --cmd-args " -I . -I $( LIBSASS_SPEC_PATH) /styles/nested -t nested" \
312
329
$(LOG_FLAGS ) $(LIBSASS_SPEC_PATH ) /styles/nested
313
330
314
331
test_full : $(SASSC_BIN ) $(SASS_SPEC_PATH ) $(LIBSASS_SPEC_PATH )
315
332
$(RUBY_BIN ) $(SASS_SPEC_PATH ) /sass-spec.rb -c $(SASSC_BIN ) --impl libsass \
316
333
--cmd-args " -I $( SASS_SPEC_PATH) /$( SASS_SPEC_SPEC_DIR) " \
317
334
--run-todo $(LOG_FLAGS ) $(SASS_SPEC_PATH ) /$(SASS_SPEC_SPEC_DIR )
318
335
$(RUBY_BIN ) $(SASS_SPEC_PATH ) /sass-spec.rb -c $(SASSC_BIN ) --impl libsass \
319
- --cmd-args " -I $( LIBSASS_SPEC_PATH) /$( LIBSASS_SPEC_SPEC_DIR) " \
336
+ --cmd-args " -I . -I $( LIBSASS_SPEC_PATH) /$( LIBSASS_SPEC_SPEC_DIR) " \
320
337
--run-todo $(LOG_FLAGS ) $(LIBSASS_SPEC_PATH ) /$(LIBSASS_SPEC_SPEC_DIR )
321
338
$(RUBY_BIN ) $(SASS_SPEC_PATH ) /sass-spec.rb -c $(SASSC_BIN ) --impl libsass \
322
- --cmd-args " -I $( LIBSASS_SPEC_PATH) /styles/compressed -t compressed" \
339
+ --cmd-args " -I . -I $( LIBSASS_SPEC_PATH) /styles/compressed -t compressed" \
323
340
--run-todo $(LOG_FLAGS ) $(LIBSASS_SPEC_PATH ) /styles/compressed
324
341
$(RUBY_BIN ) $(SASS_SPEC_PATH ) /sass-spec.rb -c $(SASSC_BIN ) --impl libsass \
325
- --cmd-args " -I $( LIBSASS_SPEC_PATH) /styles/nested -t nested" \
342
+ --cmd-args " -I . -I $( LIBSASS_SPEC_PATH) /styles/nested -t nested" \
326
343
--run-todo $(LOG_FLAGS ) $(LIBSASS_SPEC_PATH ) /styles/nested
327
344
328
345
test_probe : $(SASSC_BIN ) $(SASS_SPEC_PATH ) $(LIBSASS_SPEC_PATH )
329
346
$(RUBY_BIN ) $(SASS_SPEC_PATH ) /sass-spec.rb -c $(SASSC_BIN ) --impl libsass \
330
347
--cmd-args " -I $( SASS_SPEC_PATH) /$( SASS_SPEC_SPEC_DIR) " \
331
348
--probe-todo $(LOG_FLAGS ) $(SASS_SPEC_PATH ) /$(SASS_SPEC_SPEC_DIR )
332
349
$(RUBY_BIN ) $(SASS_SPEC_PATH ) /sass-spec.rb -c $(SASSC_BIN ) --impl libsass \
333
- --cmd-args " -I $( LIBSASS_SPEC_PATH) /$( LIBSASS_SPEC_SPEC_DIR) " \
350
+ --cmd-args " -I . -I $( LIBSASS_SPEC_PATH) /$( LIBSASS_SPEC_SPEC_DIR) " \
334
351
--probe-todo $(LOG_FLAGS ) $(LIBSASS_SPEC_PATH ) /$(LIBSASS_SPEC_SPEC_DIR )
335
352
$(RUBY_BIN ) $(SASS_SPEC_PATH ) /sass-spec.rb -c $(SASSC_BIN ) --impl libsass \
336
- --cmd-args " -I $( LIBSASS_SPEC_PATH) /styles/compressed -t compressed" \
353
+ --cmd-args " -I . -I $( LIBSASS_SPEC_PATH) /styles/compressed -t compressed" \
337
354
--probe-todo $(LOG_FLAGS ) $(LIBSASS_SPEC_PATH ) /styles/compressed
338
355
$(RUBY_BIN ) $(SASS_SPEC_PATH ) /sass-spec.rb -c $(SASSC_BIN ) --impl libsass \
339
- --cmd-args " -I $( LIBSASS_SPEC_PATH) /styles/nested -t nested" \
356
+ --cmd-args " -I . -I $( LIBSASS_SPEC_PATH) /styles/nested -t nested" \
340
357
--probe-todo $(LOG_FLAGS ) $(LIBSASS_SPEC_PATH ) /styles/nested
341
358
342
359
test_interactive : $(SASSC_BIN ) $(SASS_SPEC_PATH ) $(LIBSASS_SPEC_PATH )
343
360
$(RUBY_BIN ) $(SASS_SPEC_PATH ) /sass-spec.rb -c $(SASSC_BIN ) --impl libsass \
344
361
--cmd-args " -I $( SASS_SPEC_PATH) /$( SASS_SPEC_SPEC_DIR) " \
345
362
--interactive $(LOG_FLAGS ) $(SASS_SPEC_PATH ) /$(SASS_SPEC_SPEC_DIR )
346
363
$(RUBY_BIN ) $(SASS_SPEC_PATH ) /sass-spec.rb -c $(SASSC_BIN ) --impl libsass \
347
- --cmd-args " -I $( LIBSASS_SPEC_PATH) /$( LIBSASS_SPEC_SPEC_DIR) " \
364
+ --cmd-args " -I . -I $( LIBSASS_SPEC_PATH) /$( LIBSASS_SPEC_SPEC_DIR) " \
348
365
--interactive $(LOG_FLAGS ) $(LIBSASS_SPEC_PATH ) /$(LIBSASS_SPEC_SPEC_DIR )
349
366
$(RUBY_BIN ) $(SASS_SPEC_PATH ) /sass-spec.rb -c $(SASSC_BIN ) --impl libsass \
350
- --cmd-args " -I $( LIBSASS_SPEC_PATH) /styles/compressed -t compressed" \
367
+ --cmd-args " -I . -I $( LIBSASS_SPEC_PATH) /styles/compressed -t compressed" \
351
368
--interactive $(LOG_FLAGS ) $(LIBSASS_SPEC_PATH ) /styles/compressed
352
369
$(RUBY_BIN ) $(SASS_SPEC_PATH ) /sass-spec.rb -c $(SASSC_BIN ) --impl libsass \
353
- --cmd-args " -I $( LIBSASS_SPEC_PATH) /styles/nested -t nested" \
370
+ --cmd-args " -I . -I $( LIBSASS_SPEC_PATH) /styles/nested -t nested" \
354
371
--interactive $(LOG_FLAGS ) $(LIBSASS_SPEC_PATH ) /styles/nested
355
372
356
373
clean-objects : | lib
0 commit comments