add_definitions(-DUSE_SHARED_DLL)
add_definitions(-DUSE_SHARED_UI_DLL)
add_definitions(-DUSE_SHARED_DEVICES_DLL)
+elseif(WIN32)
+ add_definitions(-DUSE_SHARED_DLL)
+ add_definitions(-DUSE_SHARED_UI_DLL)
endif()
set(USE_FMGEN ON)
include(FindZLIB)
if(ZLIB_FOUND)
add_definitions(-DUSE_ZLIB)
- include_directories(${ZLIB_INCLUDE_DIRS})
+ include_directories(${ZLIB_INCLUDE_DIRS})
endif()
# GCC Only?
add_subdirectory("${PROJECT_SOURCE_DIR}/src/vm/fmgen" vm/fmgen)
else()
add_subdirectory("${PROJECT_SOURCE_DIR}/src" common)
- add_subdirectory("${PROJECT_SOURCE_DIR}/src/vm" vm)
+ add_subdirectory("${PROJECT_SOURCE_DIR}/src/vm/common_vm" vm/)
+ add_subdirectory("${PROJECT_SOURCE_DIR}/src/vm/fmgen" vm/fmgen)
endif()
function(ADD_VM VM_NAME EXE_NAME VMDEF)
# endif()
if(NOT USE_DEVICES_SHARED_LIB)
if(USE_FMGEN)
- set(VM_APPEND_LIBS fmgen)
+ set(VM_APPEND_LIBS CSPfmgen)
else()
set(VM_APPEND_LIBS)
endif()
endif()
if(WIN32)
- set(LOCAL_LIBS
- common_emu
- qt_${EXE_NAME}
- vm_${EXE_NAME}
- vm_vm
- ${VM_APPEND_LIBS}
- ${DEBUG_LIBS}
- common_${EXE_NAME}
- )
- else()
- set(LOCAL_LIBS
- qt_${EXE_NAME}
- vm_${EXE_NAME}
- vm_vm
- ${VM_APPEND_LIBS}
- ${DEBUG_LIBS}
- common_${EXE_NAME}
- )
- endif()
- if(WIN32)
set(BUNDLE_LIBS
${OPENGL_LIBRARY}
${OPENCL_LIBRARY}
set(LOCAL_LIBS
qt_${EXE_NAME}
vm_${EXE_NAME}
- vm_vm
+ vm_common_vm
${VM_APPEND_LIBS}
${DEBUG_LIBS}
common_${EXE_NAME}
)
else()
set(BUNDLE_LIBS
+ CSPosd
+# CSPfmgen
+ CSPgui
+ CSPemu_utils
+ CSPavio
${BUNDLE_LIBS}
-# -lCSPosd
-# -lCSPgui
-# -lCSPavio
)
endif()
add_subdirectory("${PROJECT_SOURCE_DIR}/src/vm/${VM_NAME}" vm/${EXE_NAME} EXCLUDE_FROM_ALL)
if(NOT USE_DEVICES_SHARED_LIB)
if(USE_FMGEN)
- add_subdirectory("${PROJECT_SOURCE_DIR}/src/vm/fmgen" vm/fmgen_${EXE_NAME} EXCLUDE_FROM_ALL)
+# add_subdirectory("${PROJECT_SOURCE_DIR}/src/vm/fmgen" vm/fmgen_${EXE_NAME} EXCLUDE_FROM_ALL)
endif()
endif()
add_subdirectory("${PROJECT_SOURCE_DIR}/src/qt/machines/${VM_NAME}" qt/${EXE_NAME} EXCLUDE_FROM_ALL)
SET(CMAKE_C_COMPILER i686-w64-mingw32-gcc)
SET(CMAKE_CXX_COMPILER i686-w64-mingw32-g++)
SET(CMAKE_RC_COMPILER i686-w64-mingw32-windres)
-SET(CMAKE_AR i686-w64-mingw32-gcc-ar)
+SET(CMAKE_AR i686-w64-mingw32-ar)
#set(CMAKE_EXE_LINKER_FLAGS "-static-libgcc -static-libstdc++")
#SET(CMAKE_CXX_ARCHIVE_CREATE "<CMAKE_AR> qcs <TARGET> --plugin==$(i686-w64-mingw32-gcc --print-file-name=liblto_plugin.so) <LINK_FLAGS> <OBJECTS>")
#SET(CMAKE_CXX_ARCHIVE_FINISH true)
-set(LIBAV_ROOT_DIR "/usr/local/i586-mingw-msvc/ffmpeg-4.1")
+#set(LIBAV_ROOT_DIR "/usr/local/i586-mingw-msvc/ffmpeg-4.1")
# here is the target environment located
set(USE_SDL2 ON)
SET(CMAKE_FIND_ROOT_PATH /usr/i686-w64-mingw32
/usr/local/i586-mingw-msvc
/usr/local/i586-mingw-msvc/SDL/i686-w64-mingw32
- /usr/local/i586-mingw-msvc/Qt5.12/mingw_82x
+ /usr/local/i586-mingw-msvc/Qt5.15/mingw_82x
)
else()
SET(CMAKE_FIND_ROOT_PATH /usr/i686-w64-mingw32
/usr/local/i586-mingw-msvc
/usr/local/i586-mingw-msvc/SDL1/
- /usr/local/i586-mingw-msvc/Qt5.12/mingw_82x
+ /usr/local/i586-mingw-msvc/Qt5.15/mingw_82x
)
endif()
SET(CSP_CROSS_BUILD 1)
-cmake .. -DCMAKE_TOOLCHAIN_FILE="$PWD/../build-cmake/cmake/toolchain_native_llvm.cmake" \
+cmake .. -DCMAKE_TOOLCHAIN_FILE="$PWD/../cmake/toolchains/toolchain_native_llvm.cmake" \
-DCMAKE_BUILD_TYPE=Relwithdebinfo \
-DCMAKE_C_FLAGS_RELWITHDEBINFO=" \
-g2 \
-cmake .. -DCMAKE_TOOLCHAIN_FILE="$PWD/../build-cmake/cmake/toolchain_native_gcc.cmake" \
+cmake .. -DCMAKE_TOOLCHAIN_FILE="$PWD/../cmake/toolchains/toolchain_native_gcc.cmake" \
-DCMAKE_BUILD_TYPE=Relwithdebinfo \
-DCMAKE_C_FLAGS_RELWITHDEBINFO=" \
-gz=zlib \
--- /dev/null
+FFMPEG_DIR="/usr/local/i586-mingw-msvc/ffmpeg-4.2"
+QT5_DIR="/usr/local/i586-mingw-msvc/Qt5.15/mingw_82x"
+PATH=/opt/llvm-mingw/bin:$PATH
+cmake .. \
+ -DCMAKE_TOOLCHAIN_FILE="$PWD/../cmake/toolchains/toolchain_mingw_cross_linux.cmake" \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_C_FLAGS_RELWITHDEBINFO=" \
+ -g2 \
+ -ggdb \
+ -gz=zlib \
+ -O3 \
+ -msse2 \
+ -mfpmath=sse \
+ -Wreserved-user-defined-literal \
+ -fslp-vectorize \
+ -fvectorize \
+ -fstrict-vtable-pointers \
+ -fstrict-enums \
+ " \
+ -DCMAKE_CXX_FLAGS_RELWITHDEBINFO=" \
+ -g2 \
+ -ggdb \
+ -gz=zlib \
+ -O3 \
+ -msse2 \
+ -mfpmath=sse \
+ -Wreserved-user-defined-literal \
+ -fslp-vectorize \
+ -fvectorize \
+ -fstrict-vtable-pointers \
+ -fstrict-enums \
+ " \
+ -DCMAKE_EXE_LINKER_FLAGS="\
+ -g2 \
+ -ggdb \
+ -gz=zlib \
+ -L/usr/i686-w64-mingw32/lib \
+ " \
+ -DCMAKE_MODULE_LINKER_FLAGS="\
+ -g2 \
+ -ggdb \
+ -gz=zlib \
+ -L/usr/i686-w64-mingw32/lib \
+ " \
+ -DLIBAV_ROOT_DIR="${FFMPEG_DIR}" \
+ -DQT5_ROOT_PATH="${QT5_DIR}" \
+ -DUSE_DEVICES_SHARED_LIB=ON \
+
+
\ No newline at end of file
if(WIN32)
target_link_libraries(CSPosd PUBLIC
- PRIVATE ${CMAKE_SOURCE_DIR}/../../build-cmake/bin-win32/libCSPemu_utils.dll.a
+# PRIVATE ${CMAKE_SOURCE_DIR}/../../build-cmake/bin-win32/libCSPemu_utils.dll.a
# INTERFACE ${CMAKE_SOURCE_DIR}/../../build-cmake/bin-win32/libCSPgui.dll.a
# ${CMAKE_SOURCE_DIR}/../../build-cmake/bin-win32/libCSPavio.dll.a
- Qt5::Core
- Qt5::Gui
- Qt5::OpenGL
- Qt5::Widgets
- Qt5::Network
- ${SDL2_LIBRARIES}
- )
+ CSPemu_utils
+ Qt5::Core
+ Qt5::Gui
+ Qt5::OpenGL
+ Qt5::Widgets
+ Qt5::Network
+ ${SDL2_LIBRARIES}
+ )
generate_export_header(CSPosd
BASE_NAME CSPosd
EXPORT_MACRO_NAME CSPosd_EXPORT
target_link_libraries(CSPemu_utils PRIVATE
Qt5::Core
- libz.dll.a
+ ${ZLIB_LIBRARIES}
${SDL2_LIBRARIES}
)
)
if(WIN32)
-#add_library(vm_fmgen
-# ${s_vm_fmgen_srcs}
-# )
+ add_library(vm_fmgen SHARED
+ ${s_vm_fmgen_srcs}
+ )
-include (GenerateExportHeader)
-add_library(CSPfmgen SHARED
- ${s_vm_fmgen_srcs}
- )
-target_link_libraries(CSPfmgen
- PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/../../../build-cmake/bin-win32/libCSPemu_utils.dll.a
+ include (GenerateExportHeader)
+ add_library(CSPfmgen SHARED
+ ${s_vm_fmgen_srcs}
+ )
+ target_link_libraries(CSPfmgen
+ PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/../../../build-cmake/bin-win32/libCSPemu_utils.dll.a
+ )
+ set_target_properties(CSPfmgen PROPERTIES
+ SOVERSION ${THIS_LIB_VERSION}
+ VERSION ${THIS_LIB_VERSION}
+ LINK_INTERFACE_LIBRARIES ""
+ )
+ generate_export_header(CSPfmgen
+ BASE_NAME CSPfmgen
+ EXPORT_MACRO_NAME CSPfmgen_EXPORT
+ EXPORT_FILE_NAME CSPfmgen_Export.h
+ STATIC_DEFINE CSPfmgen_BUILT_AS_STATIC
)
-set_target_properties(CSPfmgen PROPERTIES
- SOVERSION ${THIS_LIB_VERSION}
- VERSION ${THIS_LIB_VERSION}
- LINK_INTERFACE_LIBRARIES ""
- )
-generate_export_header(CSPfmgen
- BASE_NAME CSPfmgen
- EXPORT_MACRO_NAME CSPfmgen_EXPORT
- EXPORT_FILE_NAME CSPfmgen_Export.h
- STATIC_DEFINE CSPfmgen_BUILT_AS_STATIC
-)
else()
if(USE_DEVICES_SHARED_LIB)