Makefile.am 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. ACLOCAL_AMFLAGS = -I m4
  2. AM_LDFLAGS = -lstdc++ -lm
  3. AM_CFLAGS = -Wall -fPIC
  4. AM_CXXFLAGS = -Wall -fPIC
  5. AM_CFLAGS += -DLIBSASS_VERSION="\"$(LIBSASS_VERSION)\""
  6. AM_CXXFLAGS += -DLIBSASS_VERSION="\"$(LIBSASS_VERSION)\""
  7. AM_CXXFLAGS += -std=c++0x
  8. if ENABLE_COVERAGE
  9. AM_CFLAGS += -O0 --coverage
  10. AM_CXXFLAGS += -O0 --coverage
  11. AM_LDFLAGS += -O0 --coverage -lgcov
  12. else
  13. AM_CFLAGS += -O2
  14. AM_CXXFLAGS += -O2
  15. AM_LDFLAGS += -O2
  16. endif
  17. VERSION = $(LIBSASS_VERSION)
  18. EXTRA_DIST = \
  19. COPYING \
  20. INSTALL \
  21. LICENSE \
  22. Readme.md
  23. pkgconfigdir = $(libdir)/pkgconfig
  24. pkgconfig_DATA = support/libsass.pc
  25. lib_LTLIBRARIES = libsass.la
  26. libsass_la_SOURCES = \
  27. ast_fwd_decl.hpp ast_def_macros.hpp \
  28. kwd_arg_macros.hpp memory_manager.hpp \
  29. position.hpp operation.hpp \
  30. subset_map.hpp mapping.hpp \
  31. color_names.hpp backtrace.hpp \
  32. cencode.c b64/cencode.h b64/encode.h \
  33. token.hpp environment.hpp \
  34. paths.hpp debug.hpp \
  35. utf8.h utf8/core.h \
  36. utf8/checked.h utf8/unchecked.h \
  37. ast.cpp ast.hpp \
  38. base64vlq.cpp base64vlq.hpp \
  39. bind.cpp bind.hpp \
  40. constants.cpp constants.hpp \
  41. context.cpp context.hpp \
  42. contextualize.cpp contextualize.hpp \
  43. copy_c_str.cpp copy_c_str.hpp \
  44. error_handling.cpp error_handling.hpp \
  45. eval.cpp eval.hpp \
  46. expand.cpp expand.hpp \
  47. extend.cpp extend.hpp \
  48. file.cpp file.hpp \
  49. functions.cpp functions.hpp \
  50. inspect.cpp inspect.hpp \
  51. node.cpp node.hpp \
  52. json.cpp json.hpp \
  53. output_compressed.cpp output_compressed.hpp \
  54. output_nested.cpp output_nested.hpp \
  55. parser.cpp parser.hpp \
  56. prelexer.cpp prelexer.hpp \
  57. remove_placeholders.cpp remove_placeholders.hpp \
  58. sass.cpp sass.h \
  59. sass_util.cpp sass_util.hpp \
  60. sass_values.cpp sass_values.h \
  61. sass_context.cpp sass_context.h \
  62. sass_functions.cpp sass_functions.h \
  63. sass_interface.cpp sass_interface.h \
  64. sass2scss.cpp sass2scss.h \
  65. source_map.cpp source_map.hpp \
  66. to_c.cpp to_c.hpp \
  67. to_string.cpp to_string.hpp \
  68. units.cpp units.hpp \
  69. utf8_string.cpp utf8_string.hpp \
  70. util.cpp util.hpp
  71. libsass_la_CFLAGS = $(AM_CFLAGS)
  72. libsass_la_CXXFLAGS = $(AM_CXXFLAGS)
  73. libsass_la_LDFLAGS = $(AM_LDFLAGS) -no-undefined -version-info 0:9:0
  74. include_HEADERS = sass2scss.h sass_context.h sass_functions.h sass_values.h sass.h
  75. if ENABLE_TESTS
  76. noinst_PROGRAMS = sassc_bin
  77. sassc_bin_SOURCES = $(SASS_SASSC_PATH)/sassc.c
  78. sassc_bin_LDADD = libsass.la
  79. sassc_bin_CFLAGS = $(AM_CFLAGS)
  80. sassc_bin_CXXFLAGS = $(AM_CXXFLAGS)
  81. sassc_bin_LDFLAGS = $(AM_LDFLAGS) -no-install
  82. if ENABLE_COVERAGE
  83. nodist_EXTRA_sassc_bin_SOURCES = non-existent-file-to-force-CXX-linking.cxx
  84. nodist_EXTRA_libsass_la_SOURCES = non-existent-file-to-force-CXX-linking.cxx
  85. endif
  86. SASS_SASSC_PATH ?= sassc
  87. SASS_SPEC_PATH ?= sass-spec
  88. SASSC_BIN = $(SASS_SASSC_PATH)/bin/sassc
  89. TESTS = \
  90. $(SASS_SPEC_PATH)/spec/basic \
  91. $(SASS_SPEC_PATH)/spec/css \
  92. $(SASS_SPEC_PATH)/spec/extend-tests \
  93. $(SASS_SPEC_PATH)/spec/extends \
  94. $(SASS_SPEC_PATH)/spec/libsass \
  95. $(SASS_SPEC_PATH)/spec/libsass-closed-issues \
  96. $(SASS_SPEC_PATH)/spec/maps \
  97. $(SASS_SPEC_PATH)/spec/misc \
  98. $(SASS_SPEC_PATH)/spec/regressions \
  99. $(SASS_SPEC_PATH)/spec/scss \
  100. $(SASS_SPEC_PATH)/spec/scss-tests \
  101. $(SASS_SPEC_PATH)/spec/types
  102. SASS_TEST_FLAGS =
  103. LOG_DRIVER = env AM_TAP_AWK='$(AWK)' $(SHELL) ./script/tap-driver
  104. AM_LOG_FLAGS = -c ./sassc_bin --ignore-todo $(LOG_FLAGS)
  105. if USE_TAP
  106. AM_LOG_FLAGS += -t
  107. SASS_TEST_FLAGS += -t | tapout
  108. LOG_COMPILER = ./script/tap-runner $(RUBY) $(SASS_SPEC_PATH)/sass-spec.rb
  109. else
  110. LOG_COMPILER = $(RUBY) $(SASS_SPEC_PATH)/sass-spec.rb
  111. endif
  112. $(SASSC_BIN): libsass.la
  113. cd $(SASS_SASSC_PATH) && $(MAKE)
  114. test: $(SASSC_BIN)
  115. $(RUBY) $(SASS_SPEC_PATH)/sass-spec.rb -c $(SASSC_BIN) --ignore-todo $(LOG_FLAGS) $(SASS_SPEC_PATH) $(SASS_TEST_FLAGS)
  116. test_build: $(SASSC_BIN)
  117. $(RUBY) $(SASS_SPEC_PATH)/sass-spec.rb -c $(SASSC_BIN) --ignore-todo $(LOG_FLAGS) $(SASS_SPEC_PATH) $(SASS_TEST_FLAGS)
  118. test_full: $(SASSC_BIN)
  119. $(RUBY) $(SASS_SPEC_PATH)/sass-spec.rb -c $(SASSC_BIN) $(LOG_FLAGS) $(SASS_SPEC_PATH) $(SASS_TEST_FLAGS)
  120. test_issues: $(SASSC_BIN)
  121. $(RUBY) $(SASS_SPEC_PATH)/sass-spec.rb -c $(SASSC_BIN) $(LOG_FLAGS) $(SASS_SPEC_PATH)/spec/issues $(SASS_TEST_FLAGS)
  122. endif