# HG changeset patch # User Max Samukha # Date 1279299869 -10800 # Node ID d2f48c4cb3e38d13e79214f3c3db9ae0f382b7e4 # Parent bd7f485e357378fcc237b7114ef50ce88542c90c Same behavior of shared libs on linux and windows. Minor build script fixes. diff -r bd7f485e3573 -r d2f48c4cb3e3 CMakeLists.txt --- a/CMakeLists.txt Mon Jul 12 22:50:58 2010 +0300 +++ b/CMakeLists.txt Fri Jul 16 20:04:29 2010 +0300 @@ -45,7 +45,14 @@ ## Options. option(BUILD_EXAMPLES "Build examples" "OFF") -option(BUILD_SHARED_LIBRARIES "Build shared library (very experemental and only for ldc)" "OFF") +# option(BUILD_SHARED_LIBRARIES "Build shared library (very experemental and only for ldc)" "OFF") + +if (CMAKE_HOST_WIN32) + set(CPP_SHARED true CACHE INTERNAL "") +else() + option(CPP_SHARED "Build C++ part into shared libraries" "ON") +endif() + option(BUILD_TOOLS "Build tools" "ON") #option(GENERATE_DI_FILES "Generate *.di files with DC -H command" "OFF") set(GENERATE_DI_FILES OFF) ## Very experimental option. Temporarily disabled. @@ -78,13 +85,14 @@ set(implib implib) find_program(IMPLIB ${implib}) if (NOT IMPLIB) - message(FATAL_ERROR "implib is not found. You can donwload it from http://ftp.digitalmars.com/bup.zip") + message(FATAL_ERROR "implib is not found. You can donwload it from http://ftp.digitalmars.com/bup.zip") endif () - if(D_IS_MARS) - set(GEN_OPT ${GEN_OPT} --cpp_shared) - endif() endif() -add_definitions(-DCPP_SHARED) + +if(CPP_SHARED) + set(GEN_OPT ${GEN_OPT} --cpp-shared) + add_definitions(-DCPP_SHARED) +endif() set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} ./) set(GEN_OPT ${GEN_OPT} --d-target=${D_TARGET}) @@ -148,8 +156,11 @@ ## "Make install" command. set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES ${CMAKE_BINARY_DIR}/build) + +set(native_build_path ${CMAKE_BINARY_DIR}/build) +make_native_path(native_build_path) add_custom_target(install - COMMAND cd ${CMAKE_BINARY_DIR}/build && ${make_util} install + COMMAND cd ${native_build_path} && ${make_util} install COMMENT "" ) add_dependencies(install preinstall) @@ -161,7 +172,7 @@ PROJECT(qtd CXX C) if(NOT ${CMAKE_BINARY_DIR} STREQUAL ${CMAKE_SOURCE_DIR}) - load_cache(${CMAKE_BINARY_DIR}/.. INCLUDE_INTERNALS all_packages QTD_VERSION_STR QTD_VERSION) + load_cache(${CMAKE_BINARY_DIR}/.. INCLUDE_INTERNALS all_packages QTD_VERSION_STR QTD_VERSION CPP_SHARED) endif() set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake) FIND_PACKAGE(D REQUIRED) @@ -180,12 +191,10 @@ string(REGEX REPLACE ".dll([A-Za-z\\.0-9]+)" "\\1" CMAKE_IMPORT_LIBRARY_SUFFIX "${CMAKE_IMPORT_LIBRARY_SUFFIX}") endif() -if(CMAKE_HOST_WIN32 AND D_IS_MARS) - set(D_FLAGS -version=cpp_shared) +if(CPP_SHARED) + set(D_FLAGS -version=QtdCppShared) + add_definitions(-DCPP_SHARED) endif() -add_definitions(-DCPP_SHARED) -set(CPP_SHARED 1 CACHE INTERNAL "") - if(UNITTEST) add_d_versions(QtdUnittest) @@ -218,8 +227,8 @@ set (params NAME OPTIONS) qtd_parse_params (RESOURCES params ${ARGN}) if(NAME_tmp) - set(OPTIONS_tmp ${OPTIONS_tmp} -name ${NAME_tmp}) - endif(NAME_tmp) + set(OPTIONS_tmp ${OPTIONS_tmp} -name ${NAME_tmp}) + endif() qtd_command ("${output}" "${DRCC}" "${OPTIONS_tmp}" "qrc_" "Generate" ${RESOURCES_tmp}) endmacro() @@ -320,7 +329,10 @@ message(STATUS "Example '${name}' requires the package '${req}', but it is not active. Example will not be built") return(build_example name) else() - set(qtd_libs cpp_${package} ${${package}_lib_param} ${qtd_libs}) + set(qtd_libs ${${package}_lib_param} ${qtd_libs}) + if(CPP_SHARED AND CMAKE_HOST_UNIX) + set(qtd_libs cpp_${package} ${qtd_libs}) + endif() endif() endforeach() add_d_program(${name} ${SOURCES_tmp} NO_DEPS_SOURCES ${res_sources} ${uic_sources} @@ -392,203 +404,201 @@ endif(BUILD_QT_${package_upper}) if("${all_req_found}" EQUAL 1) - set(packages_big ${packages_big} ${package_big}) - set(packages ${packages} ${package}) - ## Load a package sources list. - foreach(d_source ${package}/ArrayOps2 ${d_generated_files}) - set(d_sources ${d_sources} ${CMAKE_BINARY_DIR}/qt/${d_source}.d) - if(EXISTS ${CMAKE_BINARY_DIR}/qt/${d_source}_aux.d) - set(d_sources ${d_sources} ${CMAKE_BINARY_DIR}/qt/${d_source}_aux.d) - endif() - endforeach(d_source ${d_generated_files}) - set(classes ArrayOps ${classes}) - foreach(class ${classes}) - set(d_sources ${d_sources} ${CMAKE_BINARY_DIR}/qt/${package}/${class}.d) - set(cpp_sources ${cpp_sources} ${CMAKE_BINARY_DIR}/cpp/qt_${package}/${class}_shell.cpp) - if(EXISTS ${CMAKE_BINARY_DIR}/qt/${package}/${class}_aux.d) - set(d_sources ${d_sources} ${CMAKE_BINARY_DIR}/qt/${package}/${class}_aux.d) - endif(EXISTS ${CMAKE_BINARY_DIR}/qt/${package}/${class}_aux.d) - endforeach(class ${classes}) - set(files_for_gen ${files_for_gen} ${cpp_sources} ${d_sources}) - - foreach (cpp_source ${cpp_files}) - set(cpp_sources ${cpp_sources} ${CMAKE_SOURCE_DIR}/cpp/${cpp_source}.cpp) - endforeach(cpp_source ${cpp_files}) - foreach (cpp_source ${cpp_generated_files}) - set(cpp_sources ${cpp_sources} ${CMAKE_BINARY_DIR}/cpp/${cpp_source}.cpp) - endforeach(cpp_source ${cpp_generated_files}) - foreach(d_source ${d_qt_files}) - set(d_sources ${d_sources} ${CMAKE_SOURCE_DIR}/d${D_VERSION}/qt/${d_source}.d) - endforeach(d_source ${d_qt_files}) - foreach(d_source ${d_qtd_files}) - set(d_sources ${d_sources} ${CMAKE_SOURCE_DIR}/d${D_VERSION}/qtd/${d_source}.d) - endforeach(d_source ${d_qtd_files}) + set(packages_big ${packages_big} ${package_big}) + set(packages ${packages} ${package}) + ## Load a package sources list. + foreach(d_source ${package}/ArrayOps2 ${d_generated_files}) + set(d_sources ${d_sources} ${CMAKE_BINARY_DIR}/qt/${d_source}.d) + if(EXISTS ${CMAKE_BINARY_DIR}/qt/${d_source}_aux.d) + set(d_sources ${d_sources} ${CMAKE_BINARY_DIR}/qt/${d_source}_aux.d) + endif() + endforeach() + set(classes ArrayOps ${classes}) + foreach(class ${classes}) + set(d_sources ${d_sources} ${CMAKE_BINARY_DIR}/qt/${package}/${class}.d) + set(cpp_sources ${cpp_sources} ${CMAKE_BINARY_DIR}/cpp/qt_${package}/${class}_shell.cpp) + if(EXISTS ${CMAKE_BINARY_DIR}/qt/${package}/${class}_aux.d) + set(d_sources ${d_sources} ${CMAKE_BINARY_DIR}/qt/${package}/${class}_aux.d) + endif() + endforeach() + set(files_for_gen ${files_for_gen} ${cpp_sources} ${d_sources}) - if(NOT GENERATE_DI_FILES) - foreach(d_source ${d_sources}) - get_filename_component(path ${d_source} PATH) - get_filename_component(name ${d_source} NAME_WE) - regex_safe_string(cbd_safe_tmp ${CMAKE_CURRENT_BINARY_DIR}) - regex_safe_string(csd_safe_tmp ${CMAKE_CURRENT_SOURCE_DIR}) - regex_safe_string(ver_safe_tmp ${CMAKE_CURRENT_SOURCE_DIR}/d${D_VERSION}) - set(regexp_str_tmp "(${ver_safe_tmp}/|${cbd_safe_tmp}/|${csd_safe_tmp}/|)(.+)") - string(REGEX REPLACE ${regexp_str_tmp} "\\2" ins_path "${path}") - install(FILES ${d_source} DESTINATION include/d/${ins_path} COMPONENT qtd RENAME ${name}.di) - endforeach(d_source ${d_sources}) - endif(NOT GENERATE_DI_FILES) + foreach (cpp_source ${cpp_files}) + set(cpp_sources ${cpp_sources} ${CMAKE_SOURCE_DIR}/cpp/${cpp_source}.cpp) + endforeach() + foreach (cpp_source ${cpp_generated_files}) + set(cpp_sources ${cpp_sources} ${CMAKE_BINARY_DIR}/cpp/${cpp_source}.cpp) + endforeach() + foreach(d_source ${d_qt_files}) + set(d_sources ${d_sources} ${CMAKE_SOURCE_DIR}/d${D_VERSION}/qt/${d_source}.d) + endforeach() + foreach(d_source ${d_qtd_files}) + set(d_sources ${d_sources} ${CMAKE_SOURCE_DIR}/d${D_VERSION}/qtd/${d_source}.d) + endforeach() - ### Build the CPP part. - if(CPP_SHARED) - set(cpp_method SHARED) - else() - set(cpp_method STATIC) - endif() - add_library(cpp_${package} ${cpp_method} ${cpp_sources}) - # FIXME, do less redundant - if(CMAKE_HOST_WIN32) + if(NOT GENERATE_DI_FILES) + foreach(d_source ${d_sources}) + get_filename_component(path ${d_source} PATH) + get_filename_component(name ${d_source} NAME_WE) + regex_safe_string(cbd_safe_tmp ${CMAKE_CURRENT_BINARY_DIR}) + regex_safe_string(csd_safe_tmp ${CMAKE_CURRENT_SOURCE_DIR}) + regex_safe_string(ver_safe_tmp ${CMAKE_CURRENT_SOURCE_DIR}/d${D_VERSION}) + set(regexp_str_tmp "(${ver_safe_tmp}/|${cbd_safe_tmp}/|${csd_safe_tmp}/|)(.+)") + string(REGEX REPLACE ${regexp_str_tmp} "\\2" ins_path "${path}") + install(FILES ${d_source} DESTINATION include/d/${ins_path} COMPONENT qtd RENAME ${name}.di) + endforeach() + endif(NOT GENERATE_DI_FILES) + + ### Build the CPP part. + if(CPP_SHARED) + set(cpp_method SHARED) + else() + set(cpp_method STATIC) + endif() + add_library(cpp_${package} ${cpp_method} ${cpp_sources}) + set_target_properties(cpp_${package} PROPERTIES - RUNTIME_OUTPUT_DIRECTORY lib - ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/CMakeFiles - LINK_FLAGS -Wl,-enable-auto-import - COMPILE_DEFINITIONS QTD_${package_upper} - ) - else() - set_target_properties(cpp_${package} PROPERTIES - LIBRARY_OUTPUT_DIRECTORY lib + LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib + RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/CMakeFiles COMPILE_DEFINITIONS QTD_${package_upper} ) - endif() - - set(link_cpp ${link_cpp} ${QT_QT${package_upper}_LIBRARY}) - if(NOT CPP_SHARED) - ## Get an objects list. It will be used in building the D part. - foreach(cpp_source ${cpp_sources}) - set(cpp_source ${cpp_source}) - obj_path(cpp_source) - set(cpp_objs ${cpp_objs} ${CMAKE_BINARY_DIR}/CMakeFiles/cpp_${package}.dir/${cpp_source}${CMAKE_CXX_OUTPUT_EXTENSION}) - endforeach(cpp_source ${cpp_sources}) - endif() - - ## Settings for the D part. - set(lib_name qtd${package}) - if(BUILD_SHARED_LIBRARIES) - set(lib lib/${CMAKE_SHARED_LIBRARY_PREFIX}${lib_name}${CMAKE_SHARED_LIBRARY_SUFFIX}) - set(build_type SHARED) - else() - set(lib lib/${D_LIB_PREFIX}${lib_name}${D_LIB_SUFFIX}) - set(build_type STATIC) - endif() - - ## Package dependencies. - foreach(req ${required}) - set(is_found) - foreach(pack ${packages_big}) - if("${pack}" STREQUAL "${req}") - set(is_found 1) - break(pack ${packages_big}) - endif() - endforeach() - if(NOT is_found) - message(FATAL_ERROR "Package ${package_big} requires ${req}, but it is not found") - endif() - string(TOUPPER ${req} req_upper) - string(TOLOWER ${req} req_lower) - set(link_cpp ${link_cpp} cpp_${req_lower} ${QT_QT${req_upper}_LIBRARY}) - endforeach() - - if(${package_big} STREQUAL "Qwt" AND CMAKE_HOST_WIN32) - set(qwt_release_lib ${QWT_LIB_PATH}/libqwt5.a) - set(qwt_debug_lib ${QWT_LIB_PATH}/libqwtd5.a) - if(EXISTS ${qwt_release_lib}) - set(qwt_lib ${qwt_release_lib}) - elseif(EXISTS ${qwt_debug_lib}) - set(qwt_lib ${qwt_debug_lib}) - endif() - set(link_cpp ${link_cpp} ${qwt_lib}) - endif() - - target_link_libraries(cpp_${package} ${link_cpp} ) - set(d_objs ${d_objs} ${objects}) - - if(CPP_SHARED) - set(cpp_lib ${CMAKE_BINARY_DIR}/lib/libcpp_${package}${CMAKE_SHARED_LIBRARY_SUFFIX}) - install(FILES ${cpp_lib} COMPONENT qtd DESTINATION lib) if(CMAKE_HOST_WIN32) - ## Create an implib library which will be linked to the D part. - set(cpp_lib_native ${cpp_lib}) - make_native_path(cpp_lib_native) - set(d_implib ${CMAKE_BINARY_DIR}/CMakeFiles/${package}.dir/cpp_${package}.lib) - set(d_implib_native ${d_implib}) - make_native_path(d_implib_native) - add_custom_command( - OUTPUT "${d_implib}" - COMMAND "${IMPLIB}" - ARGS /system /PAGESIZE:64 ${d_implib_native} ${cpp_lib_native} - DEPENDS "cpp_${package}" - COMMENT "Creating implib ${lib_name}" - ) + set_target_properties(cpp_${package} PROPERTIES + LINK_FLAGS -Wl,-enable-auto-import + ) endif() - else() - set(${package}_lib_param Qt${package_big}) - endif() + + set(link_cpp ${link_cpp} ${QT_QT${package_upper}_LIBRARY}) + if(NOT CPP_SHARED) + ## Get an objects list. It will be used in building the D part. + foreach(cpp_source ${cpp_sources}) + set(cpp_source ${cpp_source}) + obj_path(cpp_source) + set(cpp_objs ${cpp_objs} ${CMAKE_BINARY_DIR}/CMakeFiles/cpp_${package}.dir/${cpp_source}${CMAKE_CXX_OUTPUT_EXTENSION}) + endforeach() + endif() + + ## Settings for the D part. + set(lib_name qtd${package}) + # if(BUILD_SHARED_LIBRARIES) + # set(lib lib/${CMAKE_SHARED_LIBRARY_PREFIX}${lib_name}${CMAKE_SHARED_LIBRARY_SUFFIX}) + # set(build_type SHARED) + # else() + set(lib lib/${D_LIB_PREFIX}${lib_name}${D_LIB_SUFFIX}) + set(build_type STATIC) + # endif() - ## Link the D part. - add_d_target(${lib_name} NOT_DETECT_DEPENDS TYPE ${build_type} INCLUDES ${QTD_IMPORT_PATH} SOURCES ${d_sources} OBJECTS ${cpp_objs} ${d_implib} - OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib DEPENDS ${d_implib} ) - install(FILES ${CMAKE_BINARY_DIR}/${lib} COMPONENT qtd DESTINATION lib) - ## Paths for the QtD libs. It is necessary for examples. - set(${package}_lib_param qtd${package} ${${package}_lib_param} ${link_example}) + ## Package dependencies. + foreach(req ${required}) + set(is_found) + foreach(pack ${packages_big}) + if("${pack}" STREQUAL "${req}") + set(is_found 1) + break(pack ${packages_big}) + endif() + endforeach() + if(NOT is_found) + message(FATAL_ERROR "Package ${package_big} requires ${req}, but it is not found") + endif() + string(TOUPPER ${req} req_upper) + string(TOLOWER ${req} req_lower) + set(link_cpp ${link_cpp} cpp_${req_lower} ${QT_QT${req_upper}_LIBRARY}) + endforeach() - ## Generate dependences for make (or nmake). - add_custom_target(${package}) - add_dependencies(${package} ${lib_name}) + if(${package_big} STREQUAL "Qwt" AND CMAKE_HOST_WIN32) + set(qwt_release_lib ${QWT_LIB_PATH}/libqwt5.a) + set(qwt_debug_lib ${QWT_LIB_PATH}/libqwtd5.a) + if(EXISTS ${qwt_release_lib}) + set(qwt_lib ${qwt_release_lib}) + elseif(EXISTS ${qwt_debug_lib}) + set(qwt_lib ${qwt_debug_lib}) + endif() + set(link_cpp ${link_cpp} ${qwt_lib}) + endif() - add_dependencies(${lib_name} cpp_${package}) - foreach(depend ${required}) - string(TOLOWER ${depend} depend) - add_dependencies(cpp_${package} cpp_${depend}) - add_dependencies(${package} ${depend}) - endforeach(depend ${required}) - add_dependencies(allpackages ${package}) + target_link_libraries(cpp_${package} ${link_cpp} ) + set(d_objs ${d_objs} ${objects}) + + if(CPP_SHARED) + set(cpp_lib ${CMAKE_BINARY_DIR}/lib/libcpp_${package}${CMAKE_SHARED_LIBRARY_SUFFIX}) + install(FILES ${cpp_lib} COMPONENT qtd DESTINATION lib) - ## TODO: Do we need to generate *.di files? - if(GENERATE_DI_FILES) - regexseafestring(cbd_safe ${CMAKE_BINARY_DIR}) - regexseafestring(csd_safe ${CMAKE_SOURCE_DIR}) - set(regexp_str "(${csd}/qt/d${D_VERSION}|${csd_safe}|${cbd_safe})/([A-Za-z0-9\\-_\\\\/]+)[/]+([A-Za-z0-9\\-_\\\\]+).d") - foreach(source ${d_sources}) - # find_file(source ${source} PATHS ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR} - # ${CMAKE_BINARY_DIR} ${CMAKE_SOURCE_DIR}) - string(REGEX REPLACE ${regexp_str} "\\2" inc_path "${source}") - string(REGEX REPLACE ${regexp_str} "\\3" file_name "${source}") - set(interface_file_path ${CMAKE_BINARY_DIR}/d/${inc_path}) - set(interface_file "${interface_file_path}/${file_name}.di") - if(NOT "${file_name}" STREQUAL "QGlobal") - add_custom_command(OUTPUT "${interface_file}" - COMMAND "${DC}" - ARGS ${D_FLAGS} -o- -H -Hd${interface_file_path} ${source} - COMMENT "Generating header for ${source}" - DEPENDS ${source} - WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} - ) - else(NOT "${file_name}" STREQUAL "QGlobal") ## The DMD frontend crashes on this file. - add_custom_command(OUTPUT "${interface_file}" - COMMAND ${CMAKE_COMMAND} -E make_directory ${interface_file_path} - COMMAND ${CMAKE_COMMAND} -E remove -f ${interface_file} - COMMAND ${CMAKE_COMMAND} -E copy ${source} ${interface_file} - COMMENT "" - DEPENDS ${source} - WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} - ) - endif(NOT "${file_name}" STREQUAL "QGlobal" AND GENERATE_DI_FILES) - set(interfaces_list ${interfaces_list} ${interface_file_path}/${file_name}.di) - install(FILES ${interface_file} COMPONENT qtd DESTINATION include/d/${inc_path}) - endforeach(source) - endif(GENERATE_DI_FILES) - endif("${all_req_found}" EQUAL 1) -endforeach(package_big ${packages_big}) + if(CMAKE_HOST_WIN32) + ## Create an implib library which will be linked to the D part. + set(cpp_lib_native ${cpp_lib}) + make_native_path(cpp_lib_native) + set(d_implib ${CMAKE_BINARY_DIR}/CMakeFiles/${package}.dir/cpp_${package}.lib) + set(d_implib_native ${d_implib}) + make_native_path(d_implib_native) + add_custom_command( + OUTPUT "${d_implib}" + COMMAND "${IMPLIB}" + ARGS /system /PAGESIZE:64 ${d_implib_native} ${cpp_lib_native} + DEPENDS "cpp_${package}" + COMMENT "Creating implib ${lib_name}" + ) + endif() + else() + set(${package}_lib_param Qt${package_big}) + endif() + + ## Link the D part. + add_d_target(${lib_name} NOT_DETECT_DEPENDS TYPE ${build_type} INCLUDES ${QTD_IMPORT_PATH} SOURCES ${d_sources} OBJECTS ${cpp_objs} ${d_implib} + OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib DEPENDS ${d_implib} ) + install(FILES ${CMAKE_BINARY_DIR}/${lib} COMPONENT qtd DESTINATION lib) + ## Paths for the QtD libs. It is necessary for examples. + set(${package}_lib_param qtd${package} ${${package}_lib_param} ${link_example}) + + ## Generate dependences for make (or nmake). + add_custom_target(${package}) + add_dependencies(${package} ${lib_name}) + + add_dependencies(${lib_name} cpp_${package}) + foreach(depend ${required}) + string(TOLOWER ${depend} depend) + add_dependencies(cpp_${package} cpp_${depend}) + add_dependencies(${package} ${depend}) + endforeach() + add_dependencies(allpackages ${package}) + + ## TODO: Do we need to generate *.di files? + if(GENERATE_DI_FILES) + regexseafestring(cbd_safe ${CMAKE_BINARY_DIR}) + regexseafestring(csd_safe ${CMAKE_SOURCE_DIR}) + set(regexp_str "(${csd}/qt/d${D_VERSION}|${csd_safe}|${cbd_safe})/([A-Za-z0-9\\-_\\\\/]+)[/]+([A-Za-z0-9\\-_\\\\]+).d") + foreach(source ${d_sources}) + # find_file(source ${source} PATHS ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR} + # ${CMAKE_BINARY_DIR} ${CMAKE_SOURCE_DIR}) + string(REGEX REPLACE ${regexp_str} "\\2" inc_path "${source}") + string(REGEX REPLACE ${regexp_str} "\\3" file_name "${source}") + set(interface_file_path ${CMAKE_BINARY_DIR}/d/${inc_path}) + set(interface_file "${interface_file_path}/${file_name}.di") + if(NOT "${file_name}" STREQUAL "QGlobal") + add_custom_command(OUTPUT "${interface_file}" + COMMAND "${DC}" + ARGS ${D_FLAGS} -o- -H -Hd${interface_file_path} ${source} + COMMENT "Generating header for ${source}" + DEPENDS ${source} + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + ) + else(NOT "${file_name}" STREQUAL "QGlobal") ## The DMD frontend crashes on this file. + add_custom_command(OUTPUT "${interface_file}" + COMMAND ${CMAKE_COMMAND} -E make_directory ${interface_file_path} + COMMAND ${CMAKE_COMMAND} -E remove -f ${interface_file} + COMMAND ${CMAKE_COMMAND} -E copy ${source} ${interface_file} + COMMENT "" + DEPENDS ${source} + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + ) + endif(NOT "${file_name}" STREQUAL "QGlobal" AND GENERATE_DI_FILES) + set(interfaces_list ${interfaces_list} ${interface_file_path}/${file_name}.di) + install(FILES ${interface_file} COMPONENT qtd DESTINATION include/d/${inc_path}) + endforeach() + endif() + endif() +endforeach() if(GENERATE_DI_FILES) add_custom_target(generate_headers ALL DEPENDS ${interfaces_list}) endif(GENERATE_DI_FILES) @@ -624,7 +634,7 @@ set(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/changelog.txt") set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/license.txt") set(CPACK_PACKAGE_VENDOR "QtD team") -set(CPACK_PACKAGE_CONTACT "e@mail.com") +set(CPACK_PACKAGE_CONTACT "qtd@qtd.org") set(CPACK_PACKAGE_VERSION "0.6") set(CPACK_PACKAGE_INSTALL_DIRECTORY "qtd ${CPACK_PACKAGE_VERSION}") set(CPACK_PACKAGE_FILE_NAME "qtd-${CPACK_PACKAGE_VERSION}") diff -r bd7f485e3573 -r d2f48c4cb3e3 cmake/FindD.cmake --- a/cmake/FindD.cmake Mon Jul 12 22:50:58 2010 +0300 +++ b/cmake/FindD.cmake Fri Jul 16 20:04:29 2010 +0300 @@ -139,7 +139,7 @@ ## message(STATUS ${path}) ## Output: ## -- "c:\file_path\file_name.cpp" -## Command "file(TO_NATIVE_PATH ...)" is wrong on Windows +## Command "file(TO_NATIVE_PATH ...)" gives incorrect results on Windows macro(make_native_path pathname) if(CMAKE_HOST_WIN32) # An extra \\ escape is necessary to get a \ through CMake's processing. diff -r bd7f485e3573 -r d2f48c4cb3e3 cpp/qt_core/QLineF_shell.cpp --- a/cpp/qt_core/QLineF_shell.cpp Mon Jul 12 22:50:58 2010 +0300 +++ b/cpp/qt_core/QLineF_shell.cpp Fri Jul 16 20:04:29 2010 +0300 @@ -5,7 +5,7 @@ // QLineF::angle() const -QTD_EXTERN QTD_DLL_PUBLIC double qtd_QLineF_angle +QTD_EXTERN QTD_EXPORT double qtd_QLineF_angle (void* __this_nativeId) { QLineF *__qt_this = (QLineF *) __this_nativeId; @@ -17,7 +17,7 @@ } // QLineF::angle(const QLineF & l) const -QTD_EXTERN QTD_DLL_PUBLIC double qtd_QLineF_angle_QLineF +QTD_EXTERN QTD_EXPORT double qtd_QLineF_angle_QLineF (void* __this_nativeId, void* l0) { @@ -31,7 +31,7 @@ } // QLineF::angleTo(const QLineF & l) const -QTD_EXTERN QTD_DLL_PUBLIC double qtd_QLineF_angleTo_QLineF +QTD_EXTERN QTD_EXPORT double qtd_QLineF_angleTo_QLineF (void* __this_nativeId, void* l0) { @@ -45,7 +45,7 @@ } // QLineF::intersect(const QLineF & l, QPointF * intersectionPoint) const -QTD_EXTERN QTD_DLL_PUBLIC int qtd_QLineF_intersect_QLineF_nativepointerQPointF +QTD_EXTERN QTD_EXPORT int qtd_QLineF_intersect_QLineF_nativepointerQPointF (void* __this_nativeId, void* l0, void* intersectionPoint1) @@ -60,7 +60,7 @@ } // QLineF::isNull() const -QTD_EXTERN QTD_DLL_PUBLIC bool qtd_QLineF_isNull +QTD_EXTERN QTD_EXPORT bool qtd_QLineF_isNull (void* __this_nativeId) { QLineF *__qt_this = (QLineF *) __this_nativeId; @@ -72,7 +72,7 @@ } // QLineF::length() const -QTD_EXTERN QTD_DLL_PUBLIC double qtd_QLineF_length +QTD_EXTERN QTD_EXPORT double qtd_QLineF_length (void* __this_nativeId) { QLineF *__qt_this = (QLineF *) __this_nativeId; @@ -84,7 +84,7 @@ } // QLineF::operator<<(QDataStream & arg__1) -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QLineF_writeTo_QDataStream +QTD_EXTERN QTD_EXPORT void qtd_QLineF_writeTo_QDataStream (void* __this_nativeId, void* arg__1) { @@ -95,7 +95,7 @@ } // QLineF::operator>>(QDataStream & arg__1) -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QLineF_readFrom_QDataStream +QTD_EXTERN QTD_EXPORT void qtd_QLineF_readFrom_QDataStream (void* __this_nativeId, void* arg__1) { @@ -106,7 +106,7 @@ } // QLineF::p1() const -QTD_EXTERN QTD_DLL_PUBLIC QPointF qtd_QLineF_p1 +QTD_EXTERN QTD_EXPORT QPointF qtd_QLineF_p1 (void* __this_nativeId) { QLineF *__qt_this = (QLineF *) __this_nativeId; @@ -118,7 +118,7 @@ } // QLineF::setAngle(double angle) -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QLineF_setAngle_double +QTD_EXTERN QTD_EXPORT void qtd_QLineF_setAngle_double (void* __this_nativeId, double angle0) { @@ -128,7 +128,7 @@ } // QLineF::unitVector() const -QTD_EXTERN QTD_DLL_PUBLIC QLineF qtd_QLineF_unitVector +QTD_EXTERN QTD_EXPORT QLineF qtd_QLineF_unitVector (void* __this_nativeId) { QLineF *__qt_this = (QLineF *) __this_nativeId; @@ -136,7 +136,7 @@ } // QLineF::fromPolar(double length, double angle) -QTD_EXTERN QTD_DLL_PUBLIC QLineF qtd_QLineF_fromPolar_double_double +QTD_EXTERN QTD_EXPORT QLineF qtd_QLineF_fromPolar_double_double (double length0, double angle1) { diff -r bd7f485e3573 -r d2f48c4cb3e3 cpp/qt_core/QLine_shell.cpp --- a/cpp/qt_core/QLine_shell.cpp Mon Jul 12 22:50:58 2010 +0300 +++ b/cpp/qt_core/QLine_shell.cpp Fri Jul 16 20:04:29 2010 +0300 @@ -4,7 +4,7 @@ #include "qtd_core.h" // QLine::operator<<(QDataStream & arg__1) -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QLine_writeTo_QDataStream +QTD_EXTERN QTD_EXPORT void qtd_QLine_writeTo_QDataStream (void* __this_nativeId, void* arg__1) { @@ -15,7 +15,7 @@ } // QLine::operator>>(QDataStream & arg__1) -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QLine_readFrom_QDataStream +QTD_EXTERN QTD_EXPORT void qtd_QLine_readFrom_QDataStream (void* __this_nativeId, void* arg__1) { diff -r bd7f485e3573 -r d2f48c4cb3e3 cpp/qt_core/QMetaObject_shell.cpp --- a/cpp/qt_core/QMetaObject_shell.cpp Mon Jul 12 22:50:58 2010 +0300 +++ b/cpp/qt_core/QMetaObject_shell.cpp Fri Jul 16 20:04:29 2010 +0300 @@ -4,58 +4,58 @@ #include -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QMetaObject_superClass(void *nativeId) +QTD_EXTERN QTD_EXPORT void* qtd_QMetaObject_superClass(void *nativeId) { return (void*)((QMetaObject*)nativeId)->superClass(); } -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QMetaObject_activate(QObject *sender, int signal_index, void **argv) +QTD_EXTERN QTD_EXPORT void qtd_QMetaObject_activate(QObject *sender, int signal_index, void **argv) { QMetaObject::activate(sender, signal_index, argv); } -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QMetaObject_activate_3(QObject *sender, const QMetaObject *m, int local_signal_index, void **argv) +QTD_EXTERN QTD_EXPORT void qtd_QMetaObject_activate_3(QObject *sender, const QMetaObject *m, int local_signal_index, void **argv) { QMetaObject::activate(sender, m, local_signal_index, argv); } -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QMetaObject_activate_4(QObject *sender, const QMetaObject *m, int from_local_signal_index, int to_local_signal_index, void **argv) +QTD_EXTERN QTD_EXPORT void qtd_QMetaObject_activate_4(QObject *sender, const QMetaObject *m, int from_local_signal_index, int to_local_signal_index, void **argv) { QMetaObject::activate(sender, m, from_local_signal_index, to_local_signal_index, argv); } -QTD_EXTERN QTD_DLL_PUBLIC bool qtd_QMetaObject_connect(const QObject *sender, int signal_index, +QTD_EXTERN QTD_EXPORT bool qtd_QMetaObject_connect(const QObject *sender, int signal_index, const QObject *receiver, int method_index, int type, int *types) { return QMetaObject::connect(sender, signal_index, receiver, method_index, type, types); } -QTD_EXTERN QTD_DLL_PUBLIC int qtd_QMetaObject_indexOfMethod(void *nativeId, const char *method) +QTD_EXTERN QTD_EXPORT int qtd_QMetaObject_indexOfMethod(void *nativeId, const char *method) { return ((QMetaObject*)nativeId)->indexOfMethod(method); } -QTD_EXTERN QTD_DLL_PUBLIC int qtd_QMetaObject_methodCount(void *nativeId) +QTD_EXTERN QTD_EXPORT int qtd_QMetaObject_methodCount(void *nativeId) { return ((QMetaObject*)nativeId)->methodCount(); } -QTD_EXTERN QTD_DLL_PUBLIC void qtd_create_QList(void *nativeId) +QTD_EXTERN QTD_EXPORT void qtd_create_QList(void *nativeId) { QList & list = (*(QList *)nativeId); list.append(54); list.append(45); } -QTD_EXTERN QTD_DLL_PUBLIC void qtd_create_QList_double(void *nativeId) +QTD_EXTERN QTD_EXPORT void qtd_create_QList_double(void *nativeId) { QList & list = (*(QList *)nativeId); list.append(54.44); list.append(45.55); } -QTD_EXTERN QTD_DLL_PUBLIC void qtd_create_QList_QObject(void *nativeId) +QTD_EXTERN QTD_EXPORT void qtd_create_QList_QObject(void *nativeId) { QList & list2 = (*(QList *)nativeId); diff -r bd7f485e3573 -r d2f48c4cb3e3 cpp/qt_core/QModelIndex_shell.cpp --- a/cpp/qt_core/QModelIndex_shell.cpp Mon Jul 12 22:50:58 2010 +0300 +++ b/cpp/qt_core/QModelIndex_shell.cpp Fri Jul 16 20:04:29 2010 +0300 @@ -6,14 +6,14 @@ #include "qtd_core.h" -QTD_EXTERN QTD_DLL_PUBLIC void __qtd_QModelIndex_destructor(void *ptr) +QTD_EXTERN QTD_EXPORT void __qtd_QModelIndex_destructor(void *ptr) { delete (QModelIndex *)ptr; } // ---externC--- // QModelIndex::QModelIndex() -QTD_EXTERN QTD_DLL_PUBLIC void* __qtd_QModelIndex_QModelIndex +QTD_EXTERN QTD_EXPORT void* __qtd_QModelIndex_QModelIndex () { QModelIndex *__qt_this = new QModelIndex(); @@ -22,7 +22,7 @@ } // QModelIndex::QModelIndex(const QModelIndex & other) -QTD_EXTERN QTD_DLL_PUBLIC void* __qtd_QModelIndex_QModelIndex_QModelIndex +QTD_EXTERN QTD_EXPORT void* __qtd_QModelIndex_QModelIndex_QModelIndex (QModelIndex other0) { QModelIndex *__qt_this = new QModelIndex((const QModelIndex& )other0); @@ -31,7 +31,7 @@ } // QModelIndex::child(int row, int column) const -QTD_EXTERN QTD_DLL_PUBLIC QModelIndex __qtd_QModelIndex_child_int_int +QTD_EXTERN QTD_EXPORT QModelIndex __qtd_QModelIndex_child_int_int (void* __this_nativeId, int row0, int column1) @@ -44,7 +44,7 @@ } // QModelIndex::column() const -QTD_EXTERN QTD_DLL_PUBLIC int __qtd_QModelIndex_column +QTD_EXTERN QTD_EXPORT int __qtd_QModelIndex_column (void* __this_nativeId) { QModelIndex *__qt_this = (QModelIndex *) __this_nativeId; @@ -56,7 +56,7 @@ } // QModelIndex::data(int role) const -QTD_EXTERN QTD_DLL_PUBLIC void* __qtd_QModelIndex_data_int +QTD_EXTERN QTD_EXPORT void* __qtd_QModelIndex_data_int (void* __this_nativeId, int role0) { @@ -69,7 +69,7 @@ } // QModelIndex::flags() const -QTD_EXTERN QTD_DLL_PUBLIC int __qtd_QModelIndex_flags +QTD_EXTERN QTD_EXPORT int __qtd_QModelIndex_flags (void* __this_nativeId) { QModelIndex *__qt_this = (QModelIndex *) __this_nativeId; @@ -81,7 +81,7 @@ } // QModelIndex::internalId() const -QTD_EXTERN QTD_DLL_PUBLIC qint64 __qtd_QModelIndex_internalId +QTD_EXTERN QTD_EXPORT qint64 __qtd_QModelIndex_internalId (void* __this_nativeId) { QModelIndex *__qt_this = (QModelIndex *) __this_nativeId; @@ -93,7 +93,7 @@ } // QModelIndex::internalPointer() const -QTD_EXTERN QTD_DLL_PUBLIC void* __qtd_QModelIndex_internalPointer +QTD_EXTERN QTD_EXPORT void* __qtd_QModelIndex_internalPointer (void* __this_nativeId) { QModelIndex *__qt_this = (QModelIndex *) __this_nativeId; @@ -105,7 +105,7 @@ } // QModelIndex::isValid() const -QTD_EXTERN QTD_DLL_PUBLIC bool __qtd_QModelIndex_isValid +QTD_EXTERN QTD_EXPORT bool __qtd_QModelIndex_isValid (void* __this_nativeId) { QModelIndex *__qt_this = (QModelIndex *) __this_nativeId; @@ -117,7 +117,7 @@ } // QModelIndex::model() const -QTD_EXTERN QTD_DLL_PUBLIC void* __qtd_QModelIndex_model +QTD_EXTERN QTD_EXPORT void* __qtd_QModelIndex_model (void* __this_nativeId) { QModelIndex *__qt_this = (QModelIndex *) __this_nativeId; @@ -129,7 +129,7 @@ } // QModelIndex::operator<(const QModelIndex & other) const -QTD_EXTERN QTD_DLL_PUBLIC bool __qtd_QModelIndex_operator_less_QModelIndex +QTD_EXTERN QTD_EXPORT bool __qtd_QModelIndex_operator_less_QModelIndex (void* __this_nativeId, QModelIndex other0) { @@ -142,7 +142,7 @@ } // QModelIndex::operator==(const QModelIndex & other) const -QTD_EXTERN QTD_DLL_PUBLIC bool __qtd_QModelIndex_operator_equal_QModelIndex +QTD_EXTERN QTD_EXPORT bool __qtd_QModelIndex_operator_equal_QModelIndex (void* __this_nativeId, QModelIndex other0) { @@ -155,7 +155,7 @@ } // QModelIndex::parent() const -QTD_EXTERN QTD_DLL_PUBLIC QModelIndex __qtd_QModelIndex_parent +QTD_EXTERN QTD_EXPORT QModelIndex __qtd_QModelIndex_parent (void* __this_nativeId) { QModelIndex *__qt_this = (QModelIndex *) __this_nativeId; @@ -166,7 +166,7 @@ } // QModelIndex::row() const -QTD_EXTERN QTD_DLL_PUBLIC int __qtd_QModelIndex_row +QTD_EXTERN QTD_EXPORT int __qtd_QModelIndex_row (void* __this_nativeId) { QModelIndex *__qt_this = (QModelIndex *) __this_nativeId; @@ -178,7 +178,7 @@ } // QModelIndex::sibling(int row, int column) const -QTD_EXTERN QTD_DLL_PUBLIC QModelIndex __qtd_QModelIndex_sibling_int_int +QTD_EXTERN QTD_EXPORT QModelIndex __qtd_QModelIndex_sibling_int_int (void* __this_nativeId, int row0, int column1) diff -r bd7f485e3573 -r d2f48c4cb3e3 cpp/qt_core/QPointF_shell.cpp --- a/cpp/qt_core/QPointF_shell.cpp Mon Jul 12 22:50:58 2010 +0300 +++ b/cpp/qt_core/QPointF_shell.cpp Fri Jul 16 20:04:29 2010 +0300 @@ -5,7 +5,7 @@ // ---externC--- // QPointF::operator<<(QDataStream & arg__1) -QTD_EXTERN QTD_DLL_EXPORT void qtd_QPointF_writeTo_QDataStream +QTD_EXTERN QTD_EXPORT void qtd_QPointF_writeTo_QDataStream (void* __this_nativeId, void* arg__1) { @@ -16,7 +16,7 @@ } // QPointF::operator>>(QDataStream & arg__1) -QTD_EXTERN QTD_DLL_EXPORT void qtd_QPointF_readFrom_QDataStream +QTD_EXTERN QTD_EXPORT void qtd_QPointF_readFrom_QDataStream (void* __this_nativeId, void* arg__1) { diff -r bd7f485e3573 -r d2f48c4cb3e3 cpp/qt_core/QPoint_shell.cpp --- a/cpp/qt_core/QPoint_shell.cpp Mon Jul 12 22:50:58 2010 +0300 +++ b/cpp/qt_core/QPoint_shell.cpp Fri Jul 16 20:04:29 2010 +0300 @@ -5,7 +5,7 @@ // QPoint::manhattanLength() const -QTD_EXTERN QTD_DLL_EXPORT int qtd_QPoint_manhattanLength +QTD_EXTERN QTD_EXPORT int qtd_QPoint_manhattanLength (void* __this_nativeId) { QPoint *__qt_this = (QPoint *) __this_nativeId; @@ -17,7 +17,7 @@ } // QPoint::operator<<(QDataStream & arg__1) -QTD_EXTERN QTD_DLL_EXPORT void qtd_QPoint_writeTo_QDataStream +QTD_EXTERN QTD_EXPORT void qtd_QPoint_writeTo_QDataStream (void* __this_nativeId, void* arg__1) { @@ -28,7 +28,7 @@ } // QPoint::operator>>(QDataStream & arg__1) -QTD_EXTERN QTD_DLL_EXPORT void qtd_QPoint_readFrom_QDataStream +QTD_EXTERN QTD_EXPORT void qtd_QPoint_readFrom_QDataStream (void* __this_nativeId, void* arg__1) { diff -r bd7f485e3573 -r d2f48c4cb3e3 cpp/qt_core/QRectF_shell.cpp --- a/cpp/qt_core/QRectF_shell.cpp Mon Jul 12 22:50:58 2010 +0300 +++ b/cpp/qt_core/QRectF_shell.cpp Fri Jul 16 20:04:29 2010 +0300 @@ -5,7 +5,7 @@ // QRectF::contains(const QPointF & p) const -QTD_EXTERN QTD_DLL_PUBLIC bool qtd_QRectF_contains_QPointF +QTD_EXTERN QTD_EXPORT bool qtd_QRectF_contains_QPointF (void* __this_nativeId, void* p0) { @@ -20,7 +20,7 @@ } // QRectF::contains(const QRectF & r) const -QTD_EXTERN QTD_DLL_PUBLIC bool qtd_QRectF_contains_QRectF +QTD_EXTERN QTD_EXPORT bool qtd_QRectF_contains_QRectF (void* __this_nativeId, void* r0) { @@ -34,7 +34,7 @@ } // QRectF::intersects(const QRectF & r) const -QTD_EXTERN QTD_DLL_PUBLIC bool qtd_QRectF_intersects_QRectF +QTD_EXTERN QTD_EXPORT bool qtd_QRectF_intersects_QRectF (void* __this_nativeId, void* r0) { @@ -48,7 +48,7 @@ } // QRectF::normalized() const -QTD_EXTERN QTD_DLL_PUBLIC QRectF qtd_QRectF_normalized +QTD_EXTERN QTD_EXPORT QRectF qtd_QRectF_normalized (void* __this_nativeId) { QRectF *__qt_this = (QRectF *) __this_nativeId; @@ -56,7 +56,7 @@ } // QRectF::operator&(const QRectF & r) const -QTD_EXTERN QTD_DLL_PUBLIC QRectF qtd_QRectF_operator_and_QRectF +QTD_EXTERN QTD_EXPORT QRectF qtd_QRectF_operator_and_QRectF (void* __this_nativeId, void* r0) { @@ -66,7 +66,7 @@ } // QRectF::operator<<(QDataStream & arg__1) -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QRectF_writeTo_QDataStream +QTD_EXTERN QTD_EXPORT void qtd_QRectF_writeTo_QDataStream (void* __this_nativeId, void* arg__1) { @@ -77,7 +77,7 @@ } // QRectF::operator>>(QDataStream & arg__1) -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QRectF_readFrom_QDataStream +QTD_EXTERN QTD_EXPORT void qtd_QRectF_readFrom_QDataStream (void* __this_nativeId, void* arg__1) { @@ -88,7 +88,7 @@ } // QRectF::operator|(const QRectF & r) const -QTD_EXTERN QTD_DLL_PUBLIC QRectF qtd_QRectF_operator_or_QRectF +QTD_EXTERN QTD_EXPORT QRectF qtd_QRectF_operator_or_QRectF (void* __this_nativeId, void* r0) { @@ -98,7 +98,7 @@ } // QRectF::toAlignedRect() const -QTD_EXTERN QTD_DLL_PUBLIC QRect qtd_QRectF_toAlignedRect +QTD_EXTERN QTD_EXPORT QRect qtd_QRectF_toAlignedRect (void* __this_nativeId) { QRectF *__qt_this = (QRectF *) __this_nativeId; diff -r bd7f485e3573 -r d2f48c4cb3e3 cpp/qt_core/QRect_shell.cpp --- a/cpp/qt_core/QRect_shell.cpp Mon Jul 12 22:50:58 2010 +0300 +++ b/cpp/qt_core/QRect_shell.cpp Fri Jul 16 20:04:29 2010 +0300 @@ -4,7 +4,7 @@ #include "qtd_core.h" // QRect::contains(const QPoint & p, bool proper) const -QTD_EXTERN QTD_DLL_PUBLIC bool qtd_QRect_contains_QPoint_bool +QTD_EXTERN QTD_EXPORT bool qtd_QRect_contains_QPoint_bool (void* __this_nativeId, void* p0, bool proper1) @@ -19,7 +19,7 @@ } // QRect::contains(const QRect & r, bool proper) const -QTD_EXTERN QTD_DLL_PUBLIC bool qtd_QRect_contains_QRect_bool +QTD_EXTERN QTD_EXPORT bool qtd_QRect_contains_QRect_bool (void* __this_nativeId, void* r0, bool proper1) @@ -34,7 +34,7 @@ } // QRect::intersects(const QRect & r) const -QTD_EXTERN QTD_DLL_PUBLIC bool qtd_QRect_intersects_QRect +QTD_EXTERN QTD_EXPORT bool qtd_QRect_intersects_QRect (void* __this_nativeId, void* r0) { @@ -48,7 +48,7 @@ } // QRect::normalized() const -QTD_EXTERN QTD_DLL_PUBLIC QRect qtd_QRect_normalized +QTD_EXTERN QTD_EXPORT QRect qtd_QRect_normalized (void* __this_nativeId) { QRect *__qt_this = (QRect *) __this_nativeId; @@ -56,7 +56,7 @@ } // QRect::operator&(const QRect & r) const -QTD_EXTERN QTD_DLL_PUBLIC QRect qtd_QRect_operator_and_QRect +QTD_EXTERN QTD_EXPORT QRect qtd_QRect_operator_and_QRect (void* __this_nativeId, void* r0) { @@ -66,7 +66,7 @@ } // QRect::operator<<(QDataStream & arg__1) -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QRect_writeTo_QDataStream +QTD_EXTERN QTD_EXPORT void qtd_QRect_writeTo_QDataStream (void* __this_nativeId, void* arg__1) { @@ -77,7 +77,7 @@ } // QRect::operator>>(QDataStream & arg__1) -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QRect_readFrom_QDataStream +QTD_EXTERN QTD_EXPORT void qtd_QRect_readFrom_QDataStream (void* __this_nativeId, void* arg__1) { @@ -88,7 +88,7 @@ } // QRect::operator|(const QRect & r) const -QTD_EXTERN QTD_DLL_PUBLIC QRect qtd_QRect_operator_or_QRect +QTD_EXTERN QTD_EXPORT QRect qtd_QRect_operator_or_QRect (void* __this_nativeId, void* r0) { diff -r bd7f485e3573 -r d2f48c4cb3e3 cpp/qt_core/QSizeF_shell.cpp --- a/cpp/qt_core/QSizeF_shell.cpp Mon Jul 12 22:50:58 2010 +0300 +++ b/cpp/qt_core/QSizeF_shell.cpp Fri Jul 16 20:04:29 2010 +0300 @@ -3,7 +3,7 @@ #include "qtd_core.h" // QSizeF::operator<<(QDataStream & arg__1) -QTD_EXTERN QTD_DLL_PUBLIC void __qtd_QSizeF_writeTo_QDataStream +QTD_EXTERN QTD_EXPORT void __qtd_QSizeF_writeTo_QDataStream (void* __this_nativeId, void* arg__1) { @@ -14,7 +14,7 @@ } // QSizeF::operator>>(QDataStream & arg__1) -QTD_EXTERN QTD_DLL_PUBLIC void __qtd_QSizeF_readFrom_QDataStream +QTD_EXTERN QTD_EXPORT void __qtd_QSizeF_readFrom_QDataStream (void* __this_nativeId, void* arg__1) { @@ -25,7 +25,7 @@ } // QSizeF::scale(const QSizeF & s, Qt::AspectRatioMode mode) -QTD_EXTERN QTD_DLL_PUBLIC void __qtd_QSizeF_scale_QSizeF_AspectRatioMode +QTD_EXTERN QTD_EXPORT void __qtd_QSizeF_scale_QSizeF_AspectRatioMode (void* __this_nativeId, void* s0, int mode1) diff -r bd7f485e3573 -r d2f48c4cb3e3 cpp/qt_core/QSize_shell.cpp --- a/cpp/qt_core/QSize_shell.cpp Mon Jul 12 22:50:58 2010 +0300 +++ b/cpp/qt_core/QSize_shell.cpp Fri Jul 16 20:04:29 2010 +0300 @@ -4,7 +4,7 @@ // QSize::operator<<(QDataStream & arg__1) -QTD_EXTERN QTD_DLL_PUBLIC void __qtd_QSize_writeTo_QDataStream +QTD_EXTERN QTD_EXPORT void __qtd_QSize_writeTo_QDataStream (void* __this_nativeId, void* arg__1) { @@ -15,7 +15,7 @@ } // QSize::operator>>(QDataStream & arg__1) -QTD_EXTERN QTD_DLL_PUBLIC void __qtd_QSize_readFrom_QDataStream +QTD_EXTERN QTD_EXPORT void __qtd_QSize_readFrom_QDataStream (void* __this_nativeId, void* arg__1) { @@ -26,7 +26,7 @@ } // QSize::scale(const QSize & s, Qt::AspectRatioMode mode) -QTD_EXTERN QTD_DLL_PUBLIC void __qtd_QSize_scale_QSize_AspectRatioMode +QTD_EXTERN QTD_EXPORT void __qtd_QSize_scale_QSize_AspectRatioMode (void* __this_nativeId, void* s0, int mode1) diff -r bd7f485e3573 -r d2f48c4cb3e3 cpp/qt_core/QString_shell.cpp --- a/cpp/qt_core/QString_shell.cpp Mon Jul 12 22:50:58 2010 +0300 +++ b/cpp/qt_core/QString_shell.cpp Fri Jul 16 20:04:29 2010 +0300 @@ -1,21 +1,21 @@ #include #include "qtd_core.h" -QTD_EXTERN QTD_DLL_PUBLIC const ushort* qtd_QString_utf16 +QTD_EXTERN QTD_EXPORT const ushort* qtd_QString_utf16 (void* __this_nativeId) { QString *__qt_this = (QString *) __this_nativeId; return __qt_this->utf16(); } -QTD_EXTERN QTD_DLL_PUBLIC int qtd_QString_size +QTD_EXTERN QTD_EXPORT int qtd_QString_size (void* __this_nativeId) { QString *__qt_this = (QString *) __this_nativeId; return __qt_this->size(); } -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QString_operatorAssign +QTD_EXTERN QTD_EXPORT void qtd_QString_operatorAssign (void* __this_nativeId, DArray text) { @@ -23,18 +23,18 @@ *__qt_this = QString::fromUtf8((const char *)text.ptr, text.length); } -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QString_destructor(void *ptr) +QTD_EXTERN QTD_EXPORT void qtd_QString_destructor(void *ptr) { delete (QString *)ptr; } -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QString_call_destructor(QString *ptr) +QTD_EXTERN QTD_EXPORT void qtd_QString_call_destructor(QString *ptr) { ptr->~QString(); } -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QString_QString_QString +QTD_EXTERN QTD_EXPORT void* qtd_QString_QString_QString (void* string0) { const QString& __qt_string0 = (const QString& ) *(QString *)string0; @@ -42,7 +42,7 @@ return (void *) __qt_this; } -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QString_new_fromUtf8_at +QTD_EXTERN QTD_EXPORT void* qtd_QString_new_fromUtf8_at (void* place, DArray text) { QString *__qt_this = new(place) QString; @@ -50,17 +50,17 @@ return __qt_this; } -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QString_placed_copy(void* string0, void* place) { +QTD_EXTERN QTD_EXPORT void* qtd_QString_placed_copy(void* string0, void* place) { const QString& __qt_string0 = (const QString& ) *(QString *)string0; QString *result = new (place)QString((const QString& )__qt_string0); return (void *) result; } -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QString_placed_ctor(void* place) { +QTD_EXTERN QTD_EXPORT void qtd_QString_placed_ctor(void* place) { new (place) QString(); } -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QString_assign_fromUtf8 +QTD_EXTERN QTD_EXPORT void qtd_QString_assign_fromUtf8 (QString *__qt_this, DArray text) { *__qt_this = QString::fromUtf8((const char *)text.ptr, text.length); diff -r bd7f485e3573 -r d2f48c4cb3e3 cpp/qt_core/QVariant_shell.cpp --- a/cpp/qt_core/QVariant_shell.cpp Mon Jul 12 22:50:58 2010 +0300 +++ b/cpp/qt_core/QVariant_shell.cpp Fri Jul 16 20:04:29 2010 +0300 @@ -17,12 +17,12 @@ #include #include "qtd_core.h" -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QVariant_destructor(void *ptr) +QTD_EXTERN QTD_EXPORT void qtd_QVariant_destructor(void *ptr) { delete (QVariant *)ptr; } -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QVariant_call_destructor(QVariant *ptr) +QTD_EXTERN QTD_EXPORT void qtd_QVariant_call_destructor(QVariant *ptr) { ptr->~QVariant(); } @@ -217,7 +217,7 @@ // Write virtual function overries used to decide on static/virtual calls // ---externC--- // QVariant::QVariant() -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant () { QVariant_QtDShell *__qt_this = new QVariant_QtDShell(); @@ -226,7 +226,7 @@ } // QVariant::QVariant(QDataStream & s) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_QDataStream +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_QDataStream (void* s0) { QDataStream& __qt_s0 = (QDataStream& ) * (QDataStream *) s0; @@ -236,7 +236,7 @@ } // QVariant::QVariant(Qt::GlobalColor color) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_GlobalColor +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_GlobalColor (int color0) { Qt::GlobalColor __qt_color0 = (Qt::GlobalColor) color0; @@ -246,7 +246,7 @@ } // QVariant::QVariant(bool b) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_bool +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_bool (bool b0) { QVariant_QtDShell *__qt_this = new QVariant_QtDShell((bool )b0); @@ -255,7 +255,7 @@ } // QVariant::QVariant(const QBitArray & bitarray) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_QBitArray +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_QBitArray (void* bitarray0) { const QBitArray& __qt_bitarray0 = (const QBitArray& ) *(QBitArray *)bitarray0; @@ -265,7 +265,7 @@ } // QVariant::QVariant(const QByteArray & bytearray) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_QByteArray +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_QByteArray (void* bytearray0) { const QByteArray& __qt_bytearray0 = (const QByteArray& ) *(QByteArray *)bytearray0; @@ -276,7 +276,7 @@ // QVariant::QVariant(const QChar & qchar) // QVariant::QVariant(const QDate & date) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_QDate +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_QDate (void* date0) { const QDate& __qt_date0 = (const QDate& ) *(QDate *)date0; @@ -286,7 +286,7 @@ } // QVariant::QVariant(const QDateTime & datetime) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_QDateTime +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_QDateTime (void* datetime0) { const QDateTime& __qt_datetime0 = (const QDateTime& ) *(QDateTime *)datetime0; @@ -296,7 +296,7 @@ } // QVariant::QVariant(const QLine & line) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_QLine +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_QLine (void* line0) { const QLine& __qt_line0 = (const QLine& ) *(QLine *)line0; @@ -306,7 +306,7 @@ } // QVariant::QVariant(const QLineF & line) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_QLineF +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_QLineF (void* line0) { const QLineF& __qt_line0 = (const QLineF& ) *(QLineF *)line0; @@ -317,7 +317,7 @@ // QVariant::QVariant(const QList & list) // QVariant::QVariant(const QLocale & locale) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_QLocale +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_QLocale (void* locale0) { const QLocale& __qt_locale0 = (const QLocale& ) *(QLocale *)locale0; @@ -328,7 +328,7 @@ // QVariant::QVariant(const QMap & map) // QVariant::QVariant(const QPoint & pt) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_QPoint +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_QPoint (void* pt0) { const QPoint& __qt_pt0 = (const QPoint& ) *(QPoint *)pt0; @@ -338,7 +338,7 @@ } // QVariant::QVariant(const QPointF & pt) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_QPointF +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_QPointF (void* pt0) { const QPointF& __qt_pt0 = (const QPointF& ) *(QPointF *)pt0; @@ -348,7 +348,7 @@ } // QVariant::QVariant(const QRect & rect) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_QRect +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_QRect (void* rect0) { const QRect& __qt_rect0 = (const QRect& ) *(QRect *)rect0; @@ -358,7 +358,7 @@ } // QVariant::QVariant(const QRectF & rect) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_QRectF +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_QRectF (void* rect0) { const QRectF& __qt_rect0 = (const QRectF& ) *(QRectF *)rect0; @@ -368,7 +368,7 @@ } // QVariant::QVariant(const QRegExp & regExp) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_QRegExp +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_QRegExp (void* regExp0) { const QRegExp& __qt_regExp0 = (const QRegExp& ) *(QRegExp *)regExp0; @@ -378,7 +378,7 @@ } // QVariant::QVariant(const QSize & size) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_QSize +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_QSize (void* size0) { const QSize& __qt_size0 = (const QSize& ) *(QSize *)size0; @@ -388,7 +388,7 @@ } // QVariant::QVariant(const QSizeF & size) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_QSizeF +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_QSizeF (void* size0) { const QSizeF& __qt_size0 = (const QSizeF& ) *(QSizeF *)size0; @@ -398,7 +398,7 @@ } // QVariant::QVariant(const QString & string) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_String +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_String (DArray string0) { QString __qt_string0 = QString::fromUtf8((const char *)string0.ptr, string0.length); @@ -409,7 +409,7 @@ // QVariant::QVariant(const QStringList & stringlist) // QVariant::QVariant(const QTime & time) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_QTime +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_QTime (void* time0) { const QTime& __qt_time0 = (const QTime& ) *(QTime *)time0; @@ -419,7 +419,7 @@ } // QVariant::QVariant(const QUrl & url) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_QUrl +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_QUrl (void* url0) { const QUrl& __qt_url0 = (const QUrl& ) *(QUrl *)url0; @@ -429,7 +429,7 @@ } // QVariant::QVariant(const QVariant & other) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_QVariant +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_QVariant (void* other0) { const QVariant& __qt_other0 = (const QVariant& ) *(QVariant *)other0; @@ -439,7 +439,7 @@ } // QVariant::QVariant(const char * str) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_nativepointerchar +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_nativepointerchar (char* str0) { const char* __qt_str0 = (const char* ) str0; @@ -449,7 +449,7 @@ } // QVariant::QVariant(double d) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_double +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_double (double d0) { QVariant_QtDShell *__qt_this = new QVariant_QtDShell((double )d0); @@ -458,7 +458,7 @@ } // QVariant::QVariant(int i) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_int +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_int (int i0) { QVariant_QtDShell *__qt_this = new QVariant_QtDShell((int )i0); @@ -467,7 +467,7 @@ } // QVariant::QVariant(int typeOrUserType, const void * copy) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_int_nativepointervoid +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_int_nativepointervoid (int typeOrUserType0, void* copy1) { @@ -478,7 +478,7 @@ } // QVariant::QVariant(long long ll) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_long +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_long (qint64 ll0) { QVariant_QtDShell *__qt_this = new QVariant_QtDShell((qint64 )ll0); @@ -487,7 +487,7 @@ } // QVariant::QVariant(uint ui) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_uint +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_uint (uint ui0) { QVariant_QtDShell *__qt_this = new QVariant_QtDShell((uint )ui0); @@ -496,7 +496,7 @@ } // QVariant::QVariant(unsigned long long ull) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_QVariant_ulong +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_QVariant_ulong (quint64 ull0) { QVariant_QtDShell *__qt_this = new QVariant_QtDShell((quint64 )ull0); @@ -505,7 +505,7 @@ } // QVariant::canConvert() const -QTD_EXTERN QTD_DLL_PUBLIC bool qtd_QVariant_canConvert +QTD_EXTERN QTD_EXPORT bool qtd_QVariant_canConvert (void* __this_nativeId, QVariant::Type type) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -517,7 +517,7 @@ } // QVariant::clear() -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QVariant_clear +QTD_EXTERN QTD_EXPORT void qtd_QVariant_clear (void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -526,7 +526,7 @@ } // QVariant::cmp(const QVariant & other) const -QTD_EXTERN QTD_DLL_PUBLIC bool qtd_QVariant_cmp_QVariant +QTD_EXTERN QTD_EXPORT bool qtd_QVariant_cmp_QVariant (void* __this_nativeId, void* other0) { @@ -540,7 +540,7 @@ } // QVariant::create(int type, const void * copy) -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QVariant_create_int_nativepointervoid +QTD_EXTERN QTD_EXPORT void qtd_QVariant_create_int_nativepointervoid (void* __this_nativeId, int type0, void* copy1) @@ -552,7 +552,7 @@ } // QVariant::isNull() const -QTD_EXTERN QTD_DLL_PUBLIC bool qtd_QVariant_isNull +QTD_EXTERN QTD_EXPORT bool qtd_QVariant_isNull (void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -564,7 +564,7 @@ } // QVariant::isValid() const -QTD_EXTERN QTD_DLL_PUBLIC bool qtd_QVariant_isValid +QTD_EXTERN QTD_EXPORT bool qtd_QVariant_isValid (void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -576,7 +576,7 @@ } // QVariant::load(QDataStream & ds) -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QVariant_load_QDataStream +QTD_EXTERN QTD_EXPORT void qtd_QVariant_load_QDataStream (void* __this_nativeId, void* ds0) { @@ -587,7 +587,7 @@ } // QVariant::operator<<(QDataStream & s) -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QVariant_writeTo_QDataStream +QTD_EXTERN QTD_EXPORT void qtd_QVariant_writeTo_QDataStream (void* __this_nativeId, void* s0) { @@ -598,7 +598,7 @@ } // QVariant::operator=(const QVariant & other) -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_operator_assign_QVariant +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_operator_assign_QVariant (void* __this_nativeId, void* other0) { @@ -612,7 +612,7 @@ } // QVariant::operator==(const QVariant & v) const -QTD_EXTERN QTD_DLL_PUBLIC bool qtd_QVariant_operator_equal_QVariant +QTD_EXTERN QTD_EXPORT bool qtd_QVariant_operator_equal_QVariant (void* __this_nativeId, void* v0) { @@ -626,7 +626,7 @@ } // QVariant::operator>>(QDataStream & s) -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QVariant_readFrom_QDataStream +QTD_EXTERN QTD_EXPORT void qtd_QVariant_readFrom_QDataStream (void* __this_nativeId, void* s0) { @@ -637,7 +637,7 @@ } // QVariant::save(QDataStream & ds) const -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QVariant_save_QDataStream +QTD_EXTERN QTD_EXPORT void qtd_QVariant_save_QDataStream (void* __this_nativeId, void* ds0) { @@ -648,7 +648,7 @@ } // QVariant::toBitArray() const -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_toBitArray +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_toBitArray (void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -660,7 +660,7 @@ } // QVariant::toBool() const -QTD_EXTERN QTD_DLL_PUBLIC bool qtd_QVariant_toBool +QTD_EXTERN QTD_EXPORT bool qtd_QVariant_toBool (void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -672,7 +672,7 @@ } // QVariant::toByteArray() const -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_toByteArray +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_toByteArray (void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -685,7 +685,7 @@ // QVariant::toChar() const // QVariant::toDate() const -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_toDate +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_toDate (void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -697,7 +697,7 @@ } // QVariant::toDateTime() const -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_toDateTime +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_toDateTime (void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -709,7 +709,7 @@ } // QVariant::toDouble(bool * ok) const -QTD_EXTERN QTD_DLL_PUBLIC double qtd_QVariant_toDouble_nativepointerbool +QTD_EXTERN QTD_EXPORT double qtd_QVariant_toDouble_nativepointerbool (void* __this_nativeId, bool* ok0) { @@ -723,7 +723,7 @@ } // QVariant::toInt(bool * ok) const -QTD_EXTERN QTD_DLL_PUBLIC int qtd_QVariant_toInt_nativepointerbool +QTD_EXTERN QTD_EXPORT int qtd_QVariant_toInt_nativepointerbool (void* __this_nativeId, bool* ok0) { @@ -737,7 +737,7 @@ } // QVariant::toLine() const -QTD_EXTERN QTD_DLL_PUBLIC QLine qtd_QVariant_toLine +QTD_EXTERN QTD_EXPORT QLine qtd_QVariant_toLine (void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -745,7 +745,7 @@ } // QVariant::toLineF() const -QTD_EXTERN QTD_DLL_PUBLIC QLineF qtd_QVariant_toLineF +QTD_EXTERN QTD_EXPORT QLineF qtd_QVariant_toLineF (void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -754,7 +754,7 @@ // QVariant::toList() const // QVariant::toLocale() const -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_toLocale +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_toLocale (void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -766,7 +766,7 @@ } // QVariant::toLongLong(bool * ok) const -QTD_EXTERN QTD_DLL_PUBLIC qint64 qtd_QVariant_toLongLong_nativepointerbool +QTD_EXTERN QTD_EXPORT qint64 qtd_QVariant_toLongLong_nativepointerbool (void* __this_nativeId, bool* ok0) { @@ -781,7 +781,7 @@ // QVariant::toMap() const // QVariant::toPoint() const -QTD_EXTERN QTD_DLL_PUBLIC QPoint qtd_QVariant_toPoint +QTD_EXTERN QTD_EXPORT QPoint qtd_QVariant_toPoint (void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -791,7 +791,7 @@ } // QVariant::toPointF() const -QTD_EXTERN QTD_DLL_PUBLIC QPointF qtd_QVariant_toPointF +QTD_EXTERN QTD_EXPORT QPointF qtd_QVariant_toPointF (void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -801,7 +801,7 @@ } // QVariant::toRect() const -QTD_EXTERN QTD_DLL_PUBLIC QRect qtd_QVariant_toRect +QTD_EXTERN QTD_EXPORT QRect qtd_QVariant_toRect (void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -811,7 +811,7 @@ } // QVariant::toRectF() const -QTD_EXTERN QTD_DLL_PUBLIC QRectF qtd_QVariant_toRectF +QTD_EXTERN QTD_EXPORT QRectF qtd_QVariant_toRectF (void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -821,7 +821,7 @@ } // QVariant::toRegExp() const -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_toRegExp +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_toRegExp (void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -833,7 +833,7 @@ } // QVariant::toSize() const -QTD_EXTERN QTD_DLL_PUBLIC QSize qtd_QVariant_toSize +QTD_EXTERN QTD_EXPORT QSize qtd_QVariant_toSize (void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -844,7 +844,7 @@ } // QVariant::toSizeF() const -QTD_EXTERN QTD_DLL_PUBLIC QSizeF qtd_QVariant_toSizeF +QTD_EXTERN QTD_EXPORT QSizeF qtd_QVariant_toSizeF (void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -855,7 +855,7 @@ } // QVariant::toString() const -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QVariant_toString +QTD_EXTERN QTD_EXPORT void qtd_QVariant_toString (void* __this_nativeId, void* __java_return_value) { @@ -868,7 +868,7 @@ // QVariant::toStringList() const // QVariant::toTime() const -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_toTime +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_toTime (void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -880,7 +880,7 @@ } // QVariant::toUInt(bool * ok) const -QTD_EXTERN QTD_DLL_PUBLIC uint qtd_QVariant_toUInt_nativepointerbool +QTD_EXTERN QTD_EXPORT uint qtd_QVariant_toUInt_nativepointerbool (void* __this_nativeId, bool* ok0) { @@ -894,7 +894,7 @@ } // QVariant::toULongLong(bool * ok) const -QTD_EXTERN QTD_DLL_PUBLIC quint64 qtd_QVariant_toULongLong_nativepointerbool +QTD_EXTERN QTD_EXPORT quint64 qtd_QVariant_toULongLong_nativepointerbool (void* __this_nativeId, bool* ok0) { @@ -908,7 +908,7 @@ } // QVariant::toUrl() const -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_toUrl +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_toUrl (void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -920,7 +920,7 @@ } // QVariant::typeName() const -QTD_EXTERN QTD_DLL_PUBLIC char* qtd_QVariant_typeName +QTD_EXTERN QTD_EXPORT char* qtd_QVariant_typeName (void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -932,7 +932,7 @@ } // QVariant::type() const -QTD_EXTERN QTD_DLL_PUBLIC int qtd_QVariant_type +QTD_EXTERN QTD_EXPORT int qtd_QVariant_type (void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -944,7 +944,7 @@ } // QVariant::userType() const -QTD_EXTERN QTD_DLL_PUBLIC int qtd_QVariant_userType +QTD_EXTERN QTD_EXPORT int qtd_QVariant_userType (void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; @@ -955,7 +955,7 @@ return __java_return_value; } -QTD_EXTERN QTD_DLL_PUBLIC void *qtd_QVariant_data(void* __this_nativeId) +QTD_EXTERN QTD_EXPORT void *qtd_QVariant_data(void* __this_nativeId) { QVariant_QtDShell *__qt_this = (QVariant_QtDShell *) __this_nativeId; return __qt_this->data(); @@ -966,7 +966,7 @@ -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QVariant_placed_copy(void* variant0, void* place) { +QTD_EXTERN QTD_EXPORT void* qtd_QVariant_placed_copy(void* variant0, void* place) { const QVariant& __qt_variant0 = (const QVariant& ) *(QVariant *)variant0; QVariant *result = new (place)QVariant((const QVariant& )__qt_variant0); return (void *) result; diff -r bd7f485e3573 -r d2f48c4cb3e3 cpp/qt_qtd/ArrayOpsPrimitive_shell.cpp --- a/cpp/qt_qtd/ArrayOpsPrimitive_shell.cpp Mon Jul 12 22:50:58 2010 +0300 +++ b/cpp/qt_qtd/ArrayOpsPrimitive_shell.cpp Fri Jul 16 20:04:29 2010 +0300 @@ -5,20 +5,20 @@ #include "ArrayOpsPrimitive.h" -QTD_EXPORT(CORE, allocate_int_array) -QTD_EXPORT(CORE, assign_int_array_element) -QTD_EXPORT(CORE, get_int_from_array) +QTD_FUNC(CORE, allocate_int_array) +QTD_FUNC(CORE, assign_int_array_element) +QTD_FUNC(CORE, get_int_from_array) -QTD_EXPORT(CORE, allocate_uint_array) -QTD_EXPORT(CORE, assign_uint_array_element) -QTD_EXPORT(CORE, get_uint_from_array) +QTD_FUNC(CORE, allocate_uint_array) +QTD_FUNC(CORE, assign_uint_array_element) +QTD_FUNC(CORE, get_uint_from_array) -QTD_EXPORT(CORE, allocate_double_array) -QTD_EXPORT(CORE, assign_double_array_element) -QTD_EXPORT(CORE, get_double_from_array) +QTD_FUNC(CORE, allocate_double_array) +QTD_FUNC(CORE, assign_double_array_element) +QTD_FUNC(CORE, get_double_from_array) -QTD_EXPORT(CORE, allocate_string_array) -QTD_EXPORT(CORE, assign_string_array_element) -QTD_EXPORT(CORE, string_from_array) -QTD_EXPORT(CORE, get_string_from_array) +QTD_FUNC(CORE, allocate_string_array) +QTD_FUNC(CORE, assign_string_array_element) +QTD_FUNC(CORE, string_from_array) +QTD_FUNC(CORE, get_string_from_array) diff -r bd7f485e3573 -r d2f48c4cb3e3 cpp/qt_qtd/qtd_core.cpp --- a/cpp/qt_qtd/qtd_core.cpp Mon Jul 12 22:50:58 2010 +0300 +++ b/cpp/qt_qtd/qtd_core.cpp Fri Jul 16 20:04:29 2010 +0300 @@ -6,15 +6,15 @@ #include "qtd_core.h" #include -QTD_EXPORT(CORE, toUtf8); -QTD_EXPORT(CORE, QtdObject_delete); +QTD_FUNC(CORE, toUtf8); +QTD_FUNC(CORE, QtdObject_delete); -QTD_EXTERN QTD_DLL_PUBLIC void qtdInitCore() +QTD_EXTERN QTD_EXPORT void qtdInitCore() { QObjectLink::userDataId = QObject::registerUserData(); } -QTD_EXTERN QTD_DLL_PUBLIC bool qtdTypeInfosEqual(void* info1, void* info2) +QTD_EXTERN QTD_EXPORT bool qtdTypeInfosEqual(void* info1, void* info2) { std::type_info* i1 = (std::type_info*)info1; std::type_info* i2 = (std::type_info*)info2; @@ -22,12 +22,12 @@ return i1 == i2 || strcmp(i1->name(), i2->name()) == 0; } -QTD_EXTERN QTD_DLL_PUBLIC QModelIndex qtd_to_QModelIndex(QModelIndexAccessor mia) +QTD_EXTERN QTD_EXPORT QModelIndex qtd_to_QModelIndex(QModelIndexAccessor mia) { return * (QModelIndex *) (&mia) ; } -QTD_EXTERN QTD_DLL_PUBLIC QModelIndexAccessor qtd_from_QModelIndex(const QModelIndex &index) +QTD_EXTERN QTD_EXPORT QModelIndexAccessor qtd_from_QModelIndex(const QModelIndex &index) { QModelIndexAccessor mia = { index.row(), @@ -39,12 +39,12 @@ return mia; } -QTD_EXTERN QTD_DLL_PUBLIC const char* qtd_qVersion() +QTD_EXTERN QTD_EXPORT const char* qtd_qVersion() { return qVersion(); } -QTD_EXTERN QTD_DLL_PUBLIC bool qtd_qSharedBuild() +QTD_EXTERN QTD_EXPORT bool qtd_qSharedBuild() { return qSharedBuild(); } @@ -55,24 +55,24 @@ extern bool qUnregisterResourceData (int, const unsigned char *, const unsigned char *, const unsigned char *); -QTD_EXTERN QTD_DLL_PUBLIC bool qtd_qRegisterResourceData(int version, const unsigned char *tree, +QTD_EXTERN QTD_EXPORT bool qtd_qRegisterResourceData(int version, const unsigned char *tree, const unsigned char *name, const unsigned char *data) { return qRegisterResourceData(version, tree, name, data); } -QTD_EXTERN QTD_DLL_PUBLIC bool qtd_qUnregisterResourceData(int version, const unsigned char *tree, +QTD_EXTERN QTD_EXPORT bool qtd_qUnregisterResourceData(int version, const unsigned char *tree, const unsigned char *name, const unsigned char *data) { return qUnregisterResourceData(version, tree, name, data); } -QTD_EXTERN QTD_DLL_PUBLIC int qtd_qrand() +QTD_EXTERN QTD_EXPORT int qtd_qrand() { return qrand(); } -QTD_EXTERN QTD_DLL_PUBLIC void qtd_qsrand(uint seed) +QTD_EXTERN QTD_EXPORT void qtd_qsrand(uint seed) { qsrand(seed); } diff -r bd7f485e3573 -r d2f48c4cb3e3 d2/qtd/Core.d --- a/d2/qtd/Core.d Mon Jul 12 22:50:58 2010 +0300 +++ b/d2/qtd/Core.d Fri Jul 16 20:04:29 2010 +0300 @@ -35,8 +35,6 @@ alias T Type; } -enum qtdExtern = "extern (C)"; - extern(C) alias void function() VoidFunc; extern(C) void qtdInitCore(); @@ -53,21 +51,27 @@ string qtdExport(string retType, string name, string args, string funcBody) { string ret; - version (cpp_shared) // TODO: cpp_shared implies Windows, which is not correct + enum ext = "extern (C)"; + version (QtdCppShared) { + version(Windows) + enum exp = "export"; + else + enum exp = ""; + // TODO: hackery to workaround a dmd/optlink bug corrupting symbol names // when a direct function pointer export is used ret ~= format_ctfe( " ${4} ${0} qtd_export_${1}(${2}) { ${3} }\n" - " ${4} export void qtd_set_${1}(VoidFunc func);\n" + " ${4} ${5} void qtd_set_${1}(VoidFunc func);\n" " static this() { qtd_set_${1}(cast(VoidFunc)&qtd_export_${1}); }\n", - retType, name, args, funcBody, qtdExtern); + retType, name, args, funcBody, ext, exp); } else { ret = format_ctfe( "${4} ${0} qtd_${1}(${2}) { ${3} }\n", - retType, name, args, funcBody, qtdExtern); + retType, name, args, funcBody, ext); } return ret; diff -r bd7f485e3573 -r d2f48c4cb3e3 generator/CMakeLists.txt --- a/generator/CMakeLists.txt Mon Jul 12 22:50:58 2010 +0300 +++ b/generator/CMakeLists.txt Fri Jul 16 20:04:29 2010 +0300 @@ -4,13 +4,14 @@ ## Hack for msvc: force Release settings string(TOUPPER "${CMAKE_BUILD_TYPE}" build_type_upper) -set(CMAKE_CXX_FLAGS_${build_type_upper} ${CMAKE_CXX_FLAGS_RELEASE}) -get_property(dir_prop DIRECTORY +set(CMAKE_CXX_FLAGS_${build_type_upper} ${CMAKE_CXX_FLAGS_RELEASE}) +get_property(dir_prop DIRECTORY PROPERTY COMPILE_DEFINITIONS_RELEASE) set_property(DIRECTORY PROPERTY COMPILE_DEFINITIONS_${build_type_upper} ${dir_prop}) ## Sources set(srcs + global.cpp classlistgenerator.cpp cppgenerator.cpp cppheadergenerator.cpp @@ -24,7 +25,7 @@ qdocgenerator.cpp uiconverter.cpp containergenerator.cpp - + generator.cpp main.cpp reporthandler.cpp @@ -38,7 +39,7 @@ abstractmetabuilder.cpp abstractmetalang.cpp prigenerator.cpp - + # rxx parser/ast.cpp parser/lexer.cpp @@ -58,7 +59,7 @@ parser/class_compiler.cpp parser/codemodel_finder.cpp parser/compiler_utils.cpp - + ## rpp parser/rpp/preprocessor.cpp ) @@ -90,7 +91,7 @@ #abstractmetabuilder.h #abstractmetalang.h prigenerator.h - + ## rxx #parser/ast.h #parser/lexer.h @@ -115,7 +116,7 @@ #parser/class_compiler.h #parser/codemodel_finder.h #parser/compiler_utils.h - + # rpp #parser/rpp/pp-cctype.h #parser/rpp/pp-engine-bits.h @@ -131,7 +132,7 @@ #parser/rpp/pp-symbol.h #parser/rpp/pp.h #parser/rpp/preprocessor.h - + ) ## Resources. @@ -141,11 +142,11 @@ ## Includes path. set(inc_paths_for_build - ${CMAKE_CURRENT_SOURCE_DIR}/../common + ${CMAKE_CURRENT_SOURCE_DIR}/../common ${CMAKE_CURRENT_SOURCE_DIR}/parser ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_CURRENT_SOURCE_DIR}/parser/rpp - #${CMAKE_CURRENT_SOURCE_DIR}/parser/include + ${CMAKE_CURRENT_SOURCE_DIR}/parser/rpp + #${CMAKE_CURRENT_SOURCE_DIR}/parser/include ) add_definitions(-DRXX_ALLOCATOR_INIT_0) @@ -156,15 +157,15 @@ set (QT_USE_QTGUI false) set (QT_USE_QTXML true) -include(${QT_USE_FILE} ${CMAKE_CURRENT_SOURCE_DIR}) +include(${QT_USE_FILE} ${CMAKE_CURRENT_SOURCE_DIR}) set(inc_paths_for_build ${inc_paths_for_build} - ${QT_INCLUDES} + ${QT_INCLUDES} ) set(lib_paths ${lib_paths} - ${QT_LIBRARY_DIR} + ${QT_LIBRARY_DIR} ) set(libs ${QT_LIBRARIES} @@ -173,18 +174,18 @@ qt4_wrap_cpp(moc_srcs ${moc_hdrs}) qt4_add_resources(res_wrapped_files ${res_files}) -set (all_srcs - ${srcs} ${moc_srcs} - ${res_wrapped_files}) +set (all_srcs + ${srcs} ${moc_srcs} + ${res_wrapped_files}) include_directories(${inc_paths_for_build}) add_executable(generator ${all_srcs} ) target_link_libraries(generator ${libs}) -## TODO: Precompilated header works well, but I don't know a license of PCHSupport_26.cmake which -## was downloaded from http://www.vtk.org/Bug/view.php?id=1260. +## TODO: Precompilated header works well, but I don't know a license of PCHSupport_26.cmake which +## was downloaded from http://www.vtk.org/Bug/view.php?id=1260. #OPTION(USEPCH "Build the project with precompiled-headers" ON) #include(../cmake/PCHSupport_26.cmake) -# +# #IF(NOT USEPCH) # MESSAGE(STATUS "NOT using precompiled-header") #ELSE(NOT USEPCH) @@ -194,15 +195,15 @@ set(dgen_build_conf ${CMAKE_BINARY_DIR}/CMakeFiles/build.txt) set(jambi_inc ${CMAKE_BINARY_DIR}/CMakeFiles/qtjambi_masterinclude.h) -if( NOT "${packages_in_build_txt}" STREQUAL "${packages}" +if( NOT "${packages_in_build_txt}" STREQUAL "${packages}" OR NOT EXISTS ${dgen_build_conf} OR NOT EXISTS ${jambi_inc}) file(REMOVE ${dgen_build_conf}) file(REMOVE ${jambi_inc}) file(APPEND ${dgen_build_conf} "\n") foreach(package_normal ${packages}) - string(TOLOWER ${package_normal} package) - string(TOUPPER ${package_normal} package_upper) + string(TOLOWER ${package_normal} package) + string(TOUPPER ${package_normal} package_upper) file(APPEND ${dgen_build_conf} " \n") # only append include if we have QT_QT${MODULE}_INCLUDE_DIR defined, otherwise handle customly if(NOT ${QT_QT${package_upper}_INCLUDE_DIR} STREQUAL "") @@ -217,20 +218,20 @@ file(APPEND ${jambi_inc} ${jambi_inc_qwt}) endif() endif() - + set(gen_sources) foreach(package_normal ${packages}) - string(TOLOWER ${package_normal} package) + string(TOLOWER ${package_normal} package) set(gen_sources ${gen_sources} ${CMAKE_CURRENT_SOURCE_DIR}/typesystem_${package}.xml) - set(d_inc_file_found d_inc_file_found-NOTFOUND) - find_file(d_inc_file_found typesystem_${package}-java.java PATHS ${CMAKE_CURRENT_SOURCE_DIR}/) + set(d_inc_file_found d_inc_file_found-NOTFOUND) + find_file(d_inc_file_found typesystem_${package}-java.java PATHS ${CMAKE_CURRENT_SOURCE_DIR}/) if(d_inc_file_found) set(gen_sources ${gen_sources} ${d_inc_file_found}) endif() endforeach() mark_as_advanced(d_inc_file_found) set(d_inc_file_found 1) - + foreach(path ${QT_INCLUDES}) set(inc_paths_tmp ${path}${sep}) endforeach() @@ -247,10 +248,10 @@ COMMAND "generator" ARGS ${GEN_OPT} --include-paths=${inc_paths} --output-directory=${out_dir} - --source-directory=${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_BINARY_DIR}/CMakeFiles/qtjambi_masterinclude.h + --source-directory=${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/CMakeFiles/qtjambi_masterinclude.h ${CMAKE_BINARY_DIR}/CMakeFiles/build.txt COMMENT "Generating binding..." DEPENDS generator ${gen_sources} ${CMAKE_BINARY_DIR}/CMakeFiles/build.txt -) -add_custom_target(dgen ALL DEPENDS ${dgen_impl} COMMENT "") +) +add_custom_target(dgen ALL DEPENDS ${dgen_impl} COMMENT "") diff -r bd7f485e3573 -r d2f48c4cb3e3 generator/containergenerator.cpp --- a/generator/containergenerator.cpp Mon Jul 12 22:50:58 2010 +0300 +++ b/generator/containergenerator.cpp Fri Jul 16 20:04:29 2010 +0300 @@ -229,9 +229,9 @@ QString module = packageToQtModule(cls->package()); setFuncNames(cls_name); - s << "QTD_EXPORT(" << module << ", " << all_name << ")" << endl - << "QTD_EXPORT(" << module << ", " << ass_name << ")" << endl - << "QTD_EXPORT(" << module << ", " << get_name << ")" << endl << endl; + s << "QTD_FUNC(" << module << ", " << all_name << ")" << endl + << "QTD_FUNC(" << module << ", " << ass_name << ")" << endl + << "QTD_FUNC(" << module << ", " << get_name << ")" << endl << endl; } } @@ -242,7 +242,7 @@ while (i.hasNext()) { i.next(); s << "// " << i.key()->targetLangName() << endl - << "QTD_EXTERN QTD_DLL_PUBLIC void qtd_" << package << "_" << i.key()->targetLangName() << "_to_d_array(void *cpp_ptr, DArray* __d_container) {" << endl; + << "QTD_EXTERN QTD_EXPORT void qtd_" << package << "_" << i.key()->targetLangName() << "_to_d_array(void *cpp_ptr, DArray* __d_container) {" << endl; AbstractMetaType *arg_type = i.value(); m_cpp_impl_generator->writeTypeInfo(s, arg_type, NoOption); @@ -259,7 +259,7 @@ foreach(AbstractMetaType* arg_type, signalEntries[cls->package()]) { const TypeEntry *te = arg_type->instantiations().first()->typeEntry(); s << "// " << te->targetLangName() << endl - << "QTD_EXTERN QTD_DLL_PUBLIC void " << cppContainerConversionName(cls, arg_type, FromCpp) << "(void *cpp_ptr, DArray* __d_container) {" << endl; + << "QTD_EXTERN QTD_EXPORT void " << cppContainerConversionName(cls, arg_type, FromCpp) << "(void *cpp_ptr, DArray* __d_container) {" << endl; m_cpp_impl_generator->writeTypeInfo(s, arg_type, NoOption); s << "container = (*reinterpret_cast< "; @@ -318,9 +318,9 @@ QString module = packageToQtModule(centry->javaPackage()); - s << "QTD_EXPORT_DECL(" << module << ", void, " << all_name << ", (void* arr, size_t len))" << endl - << "QTD_EXPORT_DECL(" << module << ", void, " << ass_name << ", (void* arr, size_t pos, " << cpp_type << " elem))" << endl - << "QTD_EXPORT_DECL(" << module << ", void, " << get_name << ", (void* arr, size_t pos, " << cpp_type << " elem))" << endl; + s << "QTD_FUNC_DECL(" << module << ", void, " << all_name << ", (void* arr, size_t len))" << endl + << "QTD_FUNC_DECL(" << module << ", void, " << ass_name << ", (void* arr, size_t pos, " << cpp_type << " elem))" << endl + << "QTD_FUNC_DECL(" << module << ", void, " << get_name << ", (void* arr, size_t pos, " << cpp_type << " elem))" << endl; s << endl; diff -r bd7f485e3573 -r d2f48c4cb3e3 generator/cppimplgenerator.cpp --- a/generator/cppimplgenerator.cpp Mon Jul 12 22:50:58 2010 +0300 +++ b/generator/cppimplgenerator.cpp Fri Jul 16 20:04:29 2010 +0300 @@ -39,6 +39,7 @@ ** ****************************************************************************/ +#include "global.h" #include "cppimplgenerator.h" #include "dgenerator.h" #include "reporthandler.h" @@ -384,7 +385,7 @@ QString s; if (options & CppImplGenerator::ExternC) - s += "QTD_EXTERN QTD_DLL_PUBLIC "; + s += "QTD_EXTERN QTD_EXPORT "; /* qtd if (options & CppImplGenerator::JNIExport) s += "Q_DECL_EXPORT "; @@ -480,7 +481,7 @@ InterfaceTypeEntry *ite = static_cast(iface->typeEntry()); QString real_name = ite->origin()->qualifiedCppName(); - s << "QTD_EXTERN QTD_DLL_PUBLIC " << real_name << "* qtd_" << java_class->name() << "_cast_to_" << iface->qualifiedCppName() + s << "QTD_EXTERN QTD_EXPORT " << real_name << "* qtd_" << java_class->name() << "_cast_to_" << iface->qualifiedCppName() << "(" << java_class->qualifiedCppName() << " *ptr)" << endl << "{" << endl; Indentation indent(INDENT); s << INDENT << "return dynamic_cast<" << real_name << "*>(ptr);" << endl; @@ -575,7 +576,7 @@ writeShellVirtualFunction(s, function, java_class, pos); } - if (cpp_shared) + if (global.cppShared) writeInitCallbacks(s, java_class); // Functions in shell class @@ -673,7 +674,7 @@ if (java_class->isQObject()) { s << endl << endl - << "QTD_EXTERN QTD_DLL_PUBLIC void* qtd_" << java_class->name() << "_staticMetaObject() {" << endl + << "QTD_EXTERN QTD_EXPORT void* qtd_" << java_class->name() << "_staticMetaObject() {" << endl << " return (void*)&" << java_class->name() << "::staticMetaObject;" << endl << "}" << endl; } @@ -684,7 +685,7 @@ { QString argName = "orig"; s << endl << endl - << "QTD_EXTERN QTD_DLL_PUBLIC void qtd_" << java_class->name() << "_placed_copy(void* " + << "QTD_EXTERN QTD_EXPORT void qtd_" << java_class->name() << "_placed_copy(void* " << argName << ", void* place) {" << endl << QString(" const %1& __qt_%2 = (const %1& ) *(%1 *)%2;").arg(shellClassName(java_class)).arg(argName) << endl << QString(" %1 *result = new (place) %1 (__qt_%2);").arg(java_class->qualifiedCppName()).arg(argName) << endl; @@ -692,7 +693,7 @@ s << "}"; s << endl << endl - << "QTD_EXTERN QTD_DLL_PUBLIC void* qtd_" << java_class->name() << "_native_copy(void* " << argName << ") {" << endl + << "QTD_EXTERN QTD_EXPORT void* qtd_" << java_class->name() << "_native_copy(void* " << argName << ") {" << endl << QString(" const %1& __qt_%2 = (const %1& ) *(%1 *)%2;").arg(shellClassName(java_class)).arg(argName) << endl << QString(" %1 *result = new %1 (__qt_%2);").arg(java_class->qualifiedCppName()).arg(argName) << endl << " return result;" << endl; @@ -707,11 +708,11 @@ void CppImplGenerator::writeValueFunctions(QTextStream &s, const AbstractMetaClass *java_class) { - s << QString("QTD_EXTERN QTD_DLL_PUBLIC bool qtd_%1_QTypeInfo_isComplex() { return (bool) QTypeInfo<%2>::isComplex; }\n").arg(java_class->name()).arg(java_class->qualifiedCppName()); - s << QString("QTD_EXTERN QTD_DLL_PUBLIC bool qtd_%1_QTypeInfo_isStatic() { return (bool) QTypeInfo<%2>::isStatic; }\n").arg(java_class->name()).arg(java_class->qualifiedCppName()); - s << QString("QTD_EXTERN QTD_DLL_PUBLIC bool qtd_%1_QTypeInfo_isLarge() { return (bool) QTypeInfo<%2>::isLarge; }\n").arg(java_class->name()).arg(java_class->qualifiedCppName()); - s << QString("QTD_EXTERN QTD_DLL_PUBLIC bool qtd_%1_QTypeInfo_isPointer() { return (bool) QTypeInfo<%2>::isPointer; }\n").arg(java_class->name()).arg(java_class->qualifiedCppName()); - s << QString("QTD_EXTERN QTD_DLL_PUBLIC bool qtd_%1_QTypeInfo_isDummy() { return (bool) QTypeInfo<%2>::isDummy; }\n").arg(java_class->name()).arg(java_class->qualifiedCppName()); + s << QString("QTD_EXTERN QTD_EXPORT bool qtd_%1_QTypeInfo_isComplex() { return (bool) QTypeInfo<%2>::isComplex; }\n").arg(java_class->name()).arg(java_class->qualifiedCppName()); + s << QString("QTD_EXTERN QTD_EXPORT bool qtd_%1_QTypeInfo_isStatic() { return (bool) QTypeInfo<%2>::isStatic; }\n").arg(java_class->name()).arg(java_class->qualifiedCppName()); + s << QString("QTD_EXTERN QTD_EXPORT bool qtd_%1_QTypeInfo_isLarge() { return (bool) QTypeInfo<%2>::isLarge; }\n").arg(java_class->name()).arg(java_class->qualifiedCppName()); + s << QString("QTD_EXTERN QTD_EXPORT bool qtd_%1_QTypeInfo_isPointer() { return (bool) QTypeInfo<%2>::isPointer; }\n").arg(java_class->name()).arg(java_class->qualifiedCppName()); + s << QString("QTD_EXTERN QTD_EXPORT bool qtd_%1_QTypeInfo_isDummy() { return (bool) QTypeInfo<%2>::isDummy; }\n").arg(java_class->name()).arg(java_class->qualifiedCppName()); } void CppImplGenerator::writeVirtualDispatchFunction(QTextStream &s, const AbstractMetaFunction *function, const AbstractMetaClass *java_class, bool d_export) @@ -723,10 +724,15 @@ QString f_name = function->marshalledName(opts) + "_dispatch"; if (d_export) { - QString qtdExtern = "extern(C)"; // TODO: should be settable via a generator switch - if (cpp_shared) { - - s << qtdExtern << "{ extern export " << return_type << " function"; + QString qtdExtern = "extern(C)"; + QString qtdExport; + if (global.targetPlatform == Global::Win32Target) + qtdExport = "export "; + + + if (global.cppShared) { + + s << qtdExtern << "{ extern " << qtdExport << return_type << " function"; writeVirtualDispatchArguments(s, function, d_export); s << " qtd_" << f_name << "; }" << endl; @@ -739,12 +745,12 @@ } } else { QString module = packageToQtModule(java_class->package()); - s << "QTD_EXPORT_DECL(" << module << ", " << return_type << ", " << f_name << ", "; + s << "QTD_FUNC_DECL(" << module << ", " << return_type << ", " << f_name << ", "; writeVirtualDispatchArguments(s, function, d_export); s << ")" << endl; if (function->declaringClass() == java_class) { - s << "QTD_EXPORT(" << module << ", " << f_name << ")" << endl; + s << "QTD_FUNC(" << module << ", " << f_name << ")" << endl; } } } @@ -905,7 +911,7 @@ if (java_class->name() == "QObject") initArgs += ", VoidFunc *sigs"; - s << "QTD_EXTERN QTD_DLL_EXPORT void qtd_" << java_class->name() + s << "QTD_EXTERN QTD_EXPORT void qtd_" << java_class->name() << QString("_initCallBacks(%1) {").arg(initArgs) << endl; // virtual functions handlers @@ -1290,7 +1296,7 @@ << " return -1;" << endl << "}" << endl << endl; */ - s << "QTD_EXTERN QTD_DLL_PUBLIC void qtd_" << className << "_createEntity(void *nativeId, void* dId)" << endl + s << "QTD_EXTERN QTD_EXPORT void qtd_" << className << "_createEntity(void *nativeId, void* dId)" << endl << "{" << endl << " new " << entityName << "((QObject*)nativeId, dId);" << endl << "}" << endl << endl; @@ -1352,12 +1358,12 @@ QString module = packageToQtModule(java_class->package()); - s << "QTD_EXPORT_DECL(" << module << ", const QMetaObject*, QObject_metaObject_dispatch, (void *dId))" << endl - << "QTD_EXPORT_DECL(" << module << ", int, QObject_qt_metacall_dispatch, (void *dId, QMetaObject::Call _c, int _id, void **_a))" << endl; + s << "QTD_FUNC_DECL(" << module << ", const QMetaObject*, QObject_metaObject_dispatch, (void *dId))" << endl + << "QTD_FUNC_DECL(" << module << ", int, QObject_qt_metacall_dispatch, (void *dId, QMetaObject::Call _c, int _id, void **_a))" << endl; if (java_class->name() == "QObject") { - s << "QTD_EXPORT(" << module << ", QObject_metaObject_dispatch)" << endl - << "QTD_EXPORT(" << module << ", QObject_qt_metacall_dispatch)" << endl; + s << "QTD_FUNC(" << module << ", QObject_metaObject_dispatch)" << endl + << "QTD_FUNC(" << module << ", QObject_qt_metacall_dispatch)" << endl; } // TODO: QMetaObject should be included in the typesystem @@ -1384,7 +1390,7 @@ << " return " << java_class->qualifiedCppName() << "::qt_metacall(_c, _id, _a);" << "}" << endl << endl - << "QTD_EXTERN QTD_DLL_PUBLIC int qtd_" << java_class->name() << "_qt_metacall(void* __this_nativeId, QMetaObject::Call _c, int _id, void **_a)" + << "QTD_EXTERN QTD_EXPORT int qtd_" << java_class->name() << "_qt_metacall(void* __this_nativeId, QMetaObject::Call _c, int _id, void **_a)" << "{" << endl << " " << shellClassName(java_class) << " *__qt_this = (" << shellClassName(java_class) << " *) __this_nativeId;" << endl << " return __qt_this->__override_qt_metacall(_c, _id, _a);" << endl @@ -1803,7 +1809,7 @@ void CppImplGenerator::writeQtdEntityFunction(QTextStream &s, const AbstractMetaClass *java_class) { - s << "QTD_EXTERN QTD_DLL_PUBLIC void *__" << java_class->name() << "_entity(void *q_ptr)" << endl; + s << "QTD_EXTERN QTD_EXPORT void *__" << java_class->name() << "_entity(void *q_ptr)" << endl; s << "{" << endl; { Indentation indent(INDENT); @@ -2013,7 +2019,7 @@ s << translateType(argument->type(), EnumAsInts, d_export); } else if (d_type->name() == "QModelIndex") { - if(d_export && dVersion == 2 && d_type->isConstant()) + if(d_export && global.dVersion == 2 && d_type->isConstant()) s << "const(QModelIndexAccessor)"; else s << "QModelIndexAccessor"; @@ -2362,12 +2368,12 @@ void CppImplGenerator::writeFinalDestructor(QTextStream &s, const AbstractMetaClass *cls) { if (cls->hasConstructors() && cls->isDestructorBase()) { - s << INDENT << "QTD_EXTERN QTD_DLL_PUBLIC void qtd_" << cls->name() << "_delete(void* nativeId)" << endl + s << INDENT << "QTD_EXTERN QTD_EXPORT void qtd_" << cls->name() << "_delete(void* nativeId)" << endl << INDENT << "{" << endl << INDENT << " delete (" << shellClassName(cls) << "*)nativeId;" << endl << INDENT << "}" << endl << endl; - s << INDENT << "QTD_EXTERN QTD_DLL_PUBLIC void qtd_" << cls->name() << "_destroy(void* nativeId)" << endl + s << INDENT << "QTD_EXTERN QTD_EXPORT void qtd_" << cls->name() << "_destroy(void* nativeId)" << endl << INDENT << "{" << endl << INDENT << " call_destructor((" << shellClassName(cls) << "*)nativeId);" << endl << INDENT << "}" << endl << endl; @@ -3703,14 +3709,14 @@ else return d_name + " "+ QString(java_type->actualIndirections(), '*'); } else if (java_type->isNativePointer()) { - if (java_type->typeEntry()->isStructInD() && dVersion == 2 && java_type->isConstant() && d_export) + if (java_type->typeEntry()->isStructInD() && global.dVersion == 2 && java_type->isConstant() && d_export) return "const(" + d_name + QString(java_type->indirections()-1, '*') + ")*"; else if (java_type->typeEntry()->isValue()) return "void*"; else if (java_type->typeEntry()->isEnum() && d_export) return "int" + QString(java_type->indirections(), '*'); else { - if (java_type->isConstant() && dVersion == 2 && d_export) + if (java_type->isConstant() && global.dVersion == 2 && d_export) return "const (" + d_name + QString(java_type->indirections(), '*') + ")"; else return d_name + QString(java_type->indirections(), '*'); diff -r bd7f485e3573 -r d2f48c4cb3e3 generator/dgenerator.cpp --- a/generator/dgenerator.cpp Mon Jul 12 22:50:58 2010 +0300 +++ b/generator/dgenerator.cpp Fri Jul 16 20:04:29 2010 +0300 @@ -39,6 +39,7 @@ ** ****************************************************************************/ +#include "global.h" #include "dgenerator.h" #include "reporthandler.h" #include "docparser.h" @@ -124,7 +125,7 @@ d_type = d_type->originalTemplateType(); QString constPrefix, constPostfix; - if (d_type && d_type->isConstant() && dVersion == 2) { + if (d_type && d_type->isConstant() && global.dVersion == 2) { constPrefix = "const("; constPostfix = ")"; } @@ -855,7 +856,7 @@ s << arg_name << " is null ? null : "; } // else if (value type is abstract) then we will get a null pointer exception, which is all right - if(dVersion == 2 && type->isConstant()) + if(global.dVersion == 2 && type->isConstant()) s << "(cast(" << type->name() << ")" << arg_name << ").qtdNativeId"; else s << arg_name << ".qtdNativeId"; @@ -1852,7 +1853,7 @@ auxFile.stream << "module " << auxModName << ";" << endl << endl; bool staticInit = d_class->isQObject() || d_class->typeEntry()->isValue() - || (cpp_shared && d_class->generateShellClass() && !d_class->isInterface() && !d_class->isNamespace()); + || (global.cppShared && d_class->generateShellClass() && !d_class->isInterface() && !d_class->isNamespace()); if (staticInit) { auxFile.isDone = false; @@ -1986,7 +1987,7 @@ s << "// automatic imports-------------" << endl; writeRequiredImports(s, d_class); s << endl; - if (dPhobos) + if (global.dPhobos) { s << "import std.stdio;" << endl << "import std.string : toStringz;" << endl @@ -2548,7 +2549,7 @@ // write static constructor if (staticInit) { QString initArgs; - if (cpp_shared && d_class->generateShellClass()) + if (global.cppShared && d_class->generateShellClass()) { initArgs = "void* virtuals"; if (d_class->name() == "QObject") @@ -2563,7 +2564,7 @@ if (d_class->typeEntry()->isValue()) s << INDENT << d_class->name() << ".QTypeInfo.init();" << endl; - if (cpp_shared && d_class->generateShellClass()) { + if (global.cppShared && d_class->generateShellClass()) { AbstractMetaFunction::Options opts(AbstractMetaFunction::DeclaringClass | AbstractMetaFunction::NoExternNamespace); @@ -2688,7 +2689,7 @@ << "extern(C) void qtd_" << d_class->name() << "_createEntity(void* nativeId, void* dId);" << endl << endl << "extern(C) int qtd_" << d_class->name() << "_qt_metacall(void *nativeId, MetaCall _c, int _id, void **_a);" << endl; - QString prefix = cpp_shared ? "qtd_export_" : "qtd_"; + QString prefix = global.cppShared ? "qtd_export_" : "qtd_"; if (d_class->name() == "QObject") { s << "extern(C) int " << prefix << "QObject_qt_metacall_dispatch(void *d_entity, MetaCall _c, int _id, void **_a) {" << endl @@ -3485,16 +3486,21 @@ void DGenerator::writeDExport(QTextStream &s, QString retType, QString name, QString args, QString funcBody) { - QString qtdExtern = "extern (C)"; // TODO: should be settable via a generator switch - if (cpp_shared) { + QString ext = "extern (C)"; + + if (global.cppShared) { + QString exp; + if (global.targetPlatform == Global::Win32Target) + exp = "export"; + s << QString( " %5 %1 qtd_export_%2(%3) { %4 }\n" - " %5 export void qtd_set_%2(VoidFunc func);\n" + " %5 %6 void qtd_set_%2(VoidFunc func);\n" " static this() { qtd_set_%2(cast(VoidFunc)&qtd_export_%2); }\n") - .arg(retType, name, args, funcBody, qtdExtern); + .arg(retType, name, args, funcBody, ext, exp); } else { s << QString("%5 %1 qtd_%2(%3) { %4 }\n") - .arg(retType, name, args, funcBody, qtdExtern); + .arg(retType, name, args, funcBody, ext); } } diff -r bd7f485e3573 -r d2f48c4cb3e3 generator/generator.h --- a/generator/generator.h Mon Jul 12 22:50:58 2010 +0300 +++ b/generator/generator.h Fri Jul 16 20:04:29 2010 +0300 @@ -50,10 +50,6 @@ #include #include -extern bool cpp_shared; -extern bool dPhobos; -extern int dVersion; - class Generator : public QObject { Q_OBJECT diff -r bd7f485e3573 -r d2f48c4cb3e3 generator/generator.pri --- a/generator/generator.pri Mon Jul 12 22:50:58 2010 +0300 +++ b/generator/generator.pri Fri Jul 16 20:04:29 2010 +0300 @@ -1,77 +1,65 @@ isEmpty(GENERATORPATH):GENERATORPATH = $$PWD INCLUDEPATH += $$GENERATORPATH - TEMPLATE = app -TARGET += -DEPENDPATH += $$GENERATORPATH tests parser +TARGET += +DEPENDPATH += $$GENERATORPATH \ + tests \ + parser mac:CONFIG -= app_bundle INCLUDEPATH += $$GENERATORPATH/. INCLUDEPATH += $$GENERATORPATH/../common - unix:CONFIG += debug_and_release - CONFIG += console RESOURCES += generator.qrc - include($$GENERATORPATH/parser/rxx.pri) - include($$GENERATORPATH/parser/rpp/rpp.pri) - -win32-msvc2005:{ - QMAKE_CXXFLAGS += -wd4996 - QMAKE_CFLAGS += -wd4996 +win32-msvc2005: { + QMAKE_CXXFLAGS += -wd4996 + QMAKE_CFLAGS += -wd4996 } # Input -HEADERS += \ - $$GENERATORPATH/generator.h \ - $$GENERATORPATH/main.h \ - $$GENERATORPATH/reporthandler.h \ - $$GENERATORPATH/typeparser.h \ - $$GENERATORPATH/typesystem.h \ - $$GENERATORPATH/asttoxml.h \ - $$GENERATORPATH/fileout.h \ - $$GENERATORPATH/generatorset.h \ - $$GENERATORPATH/metajava.h \ - $$GENERATORPATH/customtypes.h \ - $$GENERATORPATH/abstractmetabuilder.h \ - $$GENERATORPATH/abstractmetalang.h \ - $$GENERATORPATH/prigenerator.h \ - - - - -SOURCES += \ - $$GENERATORPATH/generator.cpp \ - $$GENERATORPATH/main.cpp \ - $$GENERATORPATH/reporthandler.cpp \ - $$GENERATORPATH/typeparser.cpp \ - $$GENERATORPATH/typesystem.cpp \ - $$GENERATORPATH/asttoxml.cpp \ - $$GENERATORPATH/fileout.cpp \ - $$GENERATORPATH/generatorset.cpp \ - $$GENERATORPATH/metajava.cpp \ - $$GENERATORPATH/customtypes.cpp \ - $$GENERATORPATH/abstractmetabuilder.cpp \ - $$GENERATORPATH/abstractmetalang.cpp \ - $$GENERATORPATH/prigenerator.cpp \ - - - -QT = core xml - -win32{ - PRECOMPILED_HEADER = generator_pch.h - CONFIG += precompile_header +HEADERS += $$GENERATORPATH/generator.h \ + $$GENERATORPATH/main.h \ + $$GENERATORPATH/reporthandler.h \ + $$GENERATORPATH/typeparser.h \ + $$GENERATORPATH/typesystem.h \ + $$GENERATORPATH/asttoxml.h \ + $$GENERATORPATH/fileout.h \ + $$GENERATORPATH/generatorset.h \ + $$GENERATORPATH/metajava.h \ + $$GENERATORPATH/customtypes.h \ + $$GENERATORPATH/abstractmetabuilder.h \ + $$GENERATORPATH/abstractmetalang.h \ + $$GENERATORPATH/prigenerator.h \ + global.h +SOURCES += $$GENERATORPATH/generator.cpp \ + $$GENERATORPATH/main.cpp \ + $$GENERATORPATH/reporthandler.cpp \ + $$GENERATORPATH/typeparser.cpp \ + $$GENERATORPATH/typesystem.cpp \ + $$GENERATORPATH/asttoxml.cpp \ + $$GENERATORPATH/fileout.cpp \ + $$GENERATORPATH/generatorset.cpp \ + $$GENERATORPATH/metajava.cpp \ + $$GENERATORPATH/customtypes.cpp \ + $$GENERATORPATH/abstractmetabuilder.cpp \ + $$GENERATORPATH/abstractmetalang.cpp \ + $$GENERATORPATH/prigenerator.cpp \ + global.cpp +QT = core \ + xml +win32 { + PRECOMPILED_HEADER = generator_pch.h + CONFIG += precompile_header } - -win32-msvc.net { - QMAKE_CXXFLAGS += /Zm500 - QMAKE_CXXFLAGS -= -Zm200 - QMAKE_CFLAGS -= -Zm200 +win32-msvc.net { + QMAKE_CXXFLAGS += /Zm500 + QMAKE_CXXFLAGS -= -Zm200 + QMAKE_CFLAGS -= -Zm200 } - -mac { - contains(QT_CONFIG, x86):contains(QT_CONFIG, ppc):CONFIG += x86 ppc +mac { + contains(QT_CONFIG, x86):contains(QT_CONFIG, ppc):CONFIG += x86 \ + ppc CONFIG -= precompile_header } diff -r bd7f485e3573 -r d2f48c4cb3e3 generator/main.cpp --- a/generator/main.cpp Mon Jul 12 22:50:58 2010 +0300 +++ b/generator/main.cpp Fri Jul 16 20:04:29 2010 +0300 @@ -46,15 +46,12 @@ #include "generatorset.h" #include "fileout.h" #include "binder.h" +#include "global.h" #include "abstractmetalang.h" #include -bool cpp_shared; -bool dPhobos = false; -int dVersion = 1; - void ReportHandler_message_handler(const std::string &str) { ReportHandler::warning(QString::fromStdString(str)); @@ -130,19 +127,20 @@ TypeDatabase::instance()->setRebuildClasses(classes); } - if (args.contains("d-target")) + QString dTarget = args.value("d-target"); + if (!dTarget.isEmpty()) { - QString dTarget = args.value("d-target"); + dTarget = args.value("d-target"); if (dTarget == "d1-tango") - dVersion = 1; + global.dVersion = 1; /* else if (dtarget == "d2-tango") qFatal("Tango D2 target is not supported"); */ else if (dTarget == "d2-phobos") { - dVersion = 2; - dPhobos = true; + global.dVersion = 2; + global.dPhobos = true; } else { @@ -179,7 +177,9 @@ if (!gs->readParameters(args)) displayHelp(gs); - cpp_shared = args.contains("cpp_shared"); + global.cppShared = args.contains("cpp-shared"); + + global.setTargetPlatform(args.value("target-platform")); printf("Running the QtD Generator. Please wait while source files are being generated...\n"); diff -r bd7f485e3573 -r d2f48c4cb3e3 generator/typesystem_core.xml --- a/generator/typesystem_core.xml Mon Jul 12 22:50:58 2010 +0300 +++ b/generator/typesystem_core.xml Fri Jul 16 20:04:29 2010 +0300 @@ -1985,12 +1985,12 @@ -QTD_EXTERN QTD_DLL_PUBLIC int qtd_QMetaType_registerType(char* namePtr, VoidFunc dtor, VoidFunc ctor) +QTD_EXTERN QTD_EXPORT int qtd_QMetaType_registerType(char* namePtr, VoidFunc dtor, VoidFunc ctor) { return QMetaType::registerType(namePtr, (QMetaType::Destructor)dtor, (QMetaType::Constructor)ctor); } -QTD_EXTERN QTD_DLL_PUBLIC void qtd_QMetaType_registerStreamOperators(const char *typeName, VoidFunc saveOp, +QTD_EXTERN QTD_EXPORT void qtd_QMetaType_registerStreamOperators(const char *typeName, VoidFunc saveOp, VoidFunc loadOp) { QMetaType::registerStreamOperators(typeName, (QMetaType::SaveOperator)saveOp, @@ -2385,17 +2385,17 @@ -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_get_d_qobject(void *nativeId) +QTD_EXTERN QTD_EXPORT void* qtd_get_d_qobject(void *nativeId) { return QObjectEntity::getDId((QObject*)nativeId); } -QTD_EXTERN QTD_DLL_PUBLIC void qtd_create_qobject_entity(void* nativeId, void *dId) +QTD_EXTERN QTD_EXPORT void qtd_create_qobject_entity(void* nativeId, void *dId) { new QObjectLink((QObject*)nativeId, dId); } -QTD_EXTERN QTD_DLL_PUBLIC void* qtd_QObject_metaObject(void* nativeId) +QTD_EXTERN QTD_EXPORT void* qtd_QObject_metaObject(void* nativeId) { return (void*)((QObject*)nativeId)->metaObject(); } diff -r bd7f485e3573 -r d2f48c4cb3e3 generator/typesystem_gui.xml --- a/generator/typesystem_gui.xml Mon Jul 12 22:50:58 2010 +0300 +++ b/generator/typesystem_gui.xml Fri Jul 16 20:04:29 2010 +0300 @@ -19,7 +19,7 @@