FIND_PACKAGE(BISON) FIND_PACKAGE(FLEX) if(MSVC) ADD_DEFINITIONS("/D YY_NO_UNISTD_H") endif() FLEX_TARGET(SmilesL smiles.ll ${CMAKE_CURRENT_SOURCE_DIR}/lex.yysmiles.cpp COMPILE_FLAGS "-Pyysmiles_" ) FLEX_TARGET(SmartsL smarts.ll ${CMAKE_CURRENT_SOURCE_DIR}/lex.yysmarts.cpp COMPILE_FLAGS "-Pyysmarts_" ) FILE(GLOB FLEX_OUTPUT_FILES "${CMAKE_CURRENT_SOURCE_DIR}/lex.*.cpp") BISON_TARGET(SmilesY smiles.yy ${CMAKE_CURRENT_SOURCE_DIR}/smiles.tab.cpp COMPILE_FLAGS "-pyysmiles_" ) BISON_TARGET(SmartsY smarts.yy ${CMAKE_CURRENT_SOURCE_DIR}/smarts.tab.cpp COMPILE_FLAGS "-pyysmarts_" ) FILE(GLOB BISON_OUTPUT_FILES "${CMAKE_CURRENT_SOURCE_DIR}/*.tab.?pp") get_directory_property(extra_clean_files ADDITIONAL_MAKE_CLEAN_FILES) set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${extra_clean_files};${FLEX_OUTPUT_FILES};${BISON_OUTPUT_FILES}") ADD_FLEX_BISON_DEPENDENCY(SmilesL SmilesY) ADD_FLEX_BISON_DEPENDENCY(SmartsL SmartsY) rdkit_library(SmilesParse SmilesParse.cpp SmilesParseOps.cpp SmilesWrite.cpp SmartsWrite.cpp ${BISON_SmilesY_OUTPUTS} ${BISON_SmartsY_OUTPUTS} ${FLEX_SmilesL_OUTPUTS} ${FLEX_SmartsL_OUTPUTS} LINK_LIBRARIES GraphMol) rdkit_headers(primes.h SmartsWrite.h SmilesParse.h SmilesParseOps.h SmilesWrite.h DEST GraphMol/SmilesParse) rdkit_test(smiTest1 test.cpp LINK_LIBRARIES SmilesParse GraphMol RDGeneral RDGeometryLib ) rdkit_test(smaTest1 smatest.cpp LINK_LIBRARIES SmilesParse SubstructMatch GraphMol RDGeneral RDGeometryLib )