Prove install target works with test Signed-off-by: Alain <alainmarcel@yahoo.com>
diff --git a/.travis.yml b/.travis.yml index 34a5fca..cbc3e82 100644 --- a/.travis.yml +++ b/.travis.yml
@@ -35,4 +35,6 @@ # Build steps script: - make release + - sudo make install +
diff --git a/CMakeLists.txt b/CMakeLists.txt index 7522b7d..48d1d31 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt
@@ -158,7 +158,6 @@ ${PROJECT_SOURCE_DIR}/src/surelog.h ) - add_library(surelog STATIC ${surelog_SRC}) set_target_properties(surelog PROPERTIES PUBLIC_HEADER "${SURELOG_PUBLIC_HEADERS}") @@ -247,10 +246,13 @@ INSTALL( FILES ${PROJECT_SOURCE_DIR}/src/SourceCompile/SymbolTable.h + ${PROJECT_SOURCE_DIR}/src/SourceCompile/VObjectTypes.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/surelog/SourceCompile ) INSTALL( FILES + ${PROJECT_SOURCE_DIR}/src/ErrorReporting/Location.h + ${PROJECT_SOURCE_DIR}/src/ErrorReporting/Error.h ${PROJECT_SOURCE_DIR}/src/ErrorReporting/ErrorDefinition.h ${PROJECT_SOURCE_DIR}/src/ErrorReporting/ErrorContainer.h ${PROJECT_SOURCE_DIR}/src/ErrorReporting/Report.h @@ -259,6 +261,12 @@ ) INSTALL( FILES + ${PROJECT_SOURCE_DIR}/dist/libantlr4-runtime.a + ${PROJECT_SOURCE_DIR}/build/third_party/flatbuffers/libflatbuffers.a + DESTINATION ${CMAKE_INSTALL_LIBDIR}/surelog + ) +INSTALL( + FILES ${PROJECT_SOURCE_DIR}/src/API/PythonAPI.h ${PROJECT_SOURCE_DIR}/src/API/SLAPI.h ${PROJECT_SOURCE_DIR}/src/API/Surelog.h @@ -271,6 +279,11 @@ ) INSTALL( FILES + ${PROJECT_SOURCE_DIR}/src/DesignCompile/CompileHelper.h + DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/surelog/DesignCompile + ) +INSTALL( + FILES ${PROJECT_SOURCE_DIR}/src/Design/ClockingBlock.h ${PROJECT_SOURCE_DIR}/src/Design/Design.h ${PROJECT_SOURCE_DIR}/src/Design/Instance.h
diff --git a/Makefile b/Makefile index d223a0f..4831233 100644 --- a/Makefile +++ b/Makefile
@@ -24,7 +24,9 @@ install: cd build; make install + cd tests/TestInstall; rm -rf build; mkdir -p build; cd build; cmake ../ -DINSTALL_DIR=/usr/local; make ; ./test_hellosureworld --version uninstall: rm -f /usr/local/bin/surelog rm -rf /usr/local/lib/surelog + rm -rf /usr/local/include/surelog
diff --git a/src/Design/Scope.h b/src/Design/Scope.h index 34d9431..a91aeee 100644 --- a/src/Design/Scope.h +++ b/src/Design/Scope.h
@@ -30,10 +30,11 @@ #include "Design/DataType.h" #include "Design/TfPortItem.h" #include "Testbench/Variable.h" -#include "DesignCompile/CompileHelper.h" namespace SURELOG { +class Statement; + class Scope { public: Scope(std::string name, Scope* parent)
diff --git a/src/surelog.h b/src/surelog.h index 56c86bb..08c74f8 100644 --- a/src/surelog.h +++ b/src/surelog.h
@@ -21,6 +21,10 @@ #include "CommandLine/CommandLineParser.h" #include "SourceCompile/SymbolTable.h" +#include "SourceCompile/VObjectTypes.h" +#include "ErrorReporting/Location.h" +#include "ErrorReporting/Error.h" +#include "ErrorReporting/ErrorDefinition.h" #include "ErrorReporting/ErrorContainer.h" #include "ErrorReporting/Waiver.h" @@ -34,6 +38,7 @@ // Full C++ DataModel API #include "Common/ClockingBlockHolder.h" +#include "DesignCompile/CompileHelper.h" #include "Design/ClockingBlock.h" #include "Design/Design.h" #include "Design/Instance.h"
diff --git a/tests/TestInstall/CMakeLists.txt b/tests/TestInstall/CMakeLists.txt new file mode 100644 index 0000000..e6a7f80 --- /dev/null +++ b/tests/TestInstall/CMakeLists.txt
@@ -0,0 +1,39 @@ +# -*- mode:cmake -*- + +project(HELLOSUREWORLD) + +set(CMAKE_CXX_STANDARD 11) + +cmake_minimum_required(VERSION 3.0) + +# Python +find_package(PythonLibs 3.3 REQUIRED) +INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_DIRS}) +message(STATUS "PYTHON_LIBRARIES = ${PYTHON_LIBRARIES}") +message(STATUS "PYTHON_EXECUTABLE = ${PYTHON_EXECUTABLE}") +message(STATUS "PYTHON_INCLUDE_DIRS = ${PYTHON_INCLUDE_DIRS}") + +# Directories +set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/) +set(CMAKE_BUILD_FILES_DIRECTORY ${dir}) +set(CMAKE_BUILD_DIRECTORY ${dir}) + +# C++ +set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free ${MY_CXX_WARNING_FLAGS}") +set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free -O0 -g ${MY_CXX_WARNING_FLAGS}") +set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free -O3 -DNDEBUG ${MY_CXX_WARNING_FLAGS}") + +set (INCLUDE_DIR "${INSTALL_DIR}/include/surelog/") + +include_directories(${INCLUDE_DIR}) + +set (LIB_DIR "${INSTALL_DIR}/lib/surelog/") + +set (INSTALL_LIBRARIES_FOR_SURELOG -L${LIB_DIR} surelog antlr4-runtime flatbuffers + ${PYTHON_LIBRARIES} dl util m rt pthread tcmalloc +) + +add_executable(test_hellosureworld ${PROJECT_SOURCE_DIR}/../../src/hellosureworld.cpp) +target_link_libraries( + test_hellosureworld ${INSTALL_LIBRARIES_FOR_SURELOG} +)