transactd 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (218) hide show
  1. checksums.yaml +7 -0
  2. data/BUILD_UNIX-JA +174 -0
  3. data/BUILD_WIN-JA +256 -0
  4. data/CMakeLists.txt +96 -0
  5. data/COPYING +339 -0
  6. data/README +406 -0
  7. data/README-JA +424 -0
  8. data/bin/common/tdclc_32_1_0.dll +0 -0
  9. data/bin/common/tdclc_64_1_0.dll +0 -0
  10. data/build/common/check_for_link_iconv.cmake +73 -0
  11. data/build/common/copyifgreater.cmd +30 -0
  12. data/build/common/copyifgreater.js +290 -0
  13. data/build/common/get_boost_libs.cmake +106 -0
  14. data/build/common/get_ruby_path.cmake +115 -0
  15. data/build/common/options.cmake +127 -0
  16. data/build/common/smart_install.cmake +263 -0
  17. data/build/common/system.cmake +122 -0
  18. data/build/common/transactd.rc.in +52 -0
  19. data/build/common/transactd_cl_common.cmake +101 -0
  20. data/build/common/transactd_cl_output.cmake +93 -0
  21. data/build/common/transactd_common.cmake +237 -0
  22. data/build/common/transactd_required.cmake +28 -0
  23. data/build/swig/ruby/generate.cmake.in +35 -0
  24. data/build/swig/ruby/generate.cmd.in +19 -0
  25. data/build/swig/ruby/ruby.swg +101 -0
  26. data/build/swig/tdcl.i +188 -0
  27. data/build/tdclc/BUILDNUMBER.txt +1 -0
  28. data/build/tdclc/CMakeLists.txt +170 -0
  29. data/build/tdclc/tdclc_32.cbproj +181 -0
  30. data/build/tdclc/tdclc_64.cbproj +205 -0
  31. data/build/tdclcpp/BUILDNUMBER.txt +1 -0
  32. data/build/tdclcpp/CMakeLists.txt +142 -0
  33. data/build/tdclcpp/tdclcpp_bcb_32.cbproj +239 -0
  34. data/build/tdclcpp/tdclcpp_bcb_64.cbproj +304 -0
  35. data/build/tdclrb/BUILDNUMBER.txt +1 -0
  36. data/build/tdclrb/CMakeLists.txt +258 -0
  37. data/build/tdclrb/GEM_VERSION +3 -0
  38. data/build/tdclrb/bldgem/extconf.rb +123 -0
  39. data/build/tdclrb/gem/INSTALLLOG.win32 +9 -0
  40. data/build/tdclrb/gem/Makefile.win32-VS +65 -0
  41. data/build/tdclrb/gem/Makefile.win32-prebuilt +48 -0
  42. data/build/tdclrb/gem/detect.rb +31 -0
  43. data/build/tdclrb/gem/helper.rb +113 -0
  44. data/build/tdclrb/gem/transactd.rb +22 -0
  45. data/build/tdclrb/gem_output.cmake +44 -0
  46. data/source/bzs/db/IBlobBuffer.h +51 -0
  47. data/source/bzs/db/blobBuffer.h +177 -0
  48. data/source/bzs/db/blobStructs.h +85 -0
  49. data/source/bzs/db/engine/mysql/IReadRecords.h +52 -0
  50. data/source/bzs/db/engine/mysql/bookmark.h +195 -0
  51. data/source/bzs/db/engine/mysql/database.cpp +1882 -0
  52. data/source/bzs/db/engine/mysql/database.h +465 -0
  53. data/source/bzs/db/engine/mysql/dbManager.cpp +303 -0
  54. data/source/bzs/db/engine/mysql/dbManager.h +143 -0
  55. data/source/bzs/db/engine/mysql/errorMessage.cpp +75 -0
  56. data/source/bzs/db/engine/mysql/errorMessage.h +43 -0
  57. data/source/bzs/db/engine/mysql/fieldAccess.h +158 -0
  58. data/source/bzs/db/engine/mysql/mydebuglog.cpp +349 -0
  59. data/source/bzs/db/engine/mysql/mydebuglog.h +89 -0
  60. data/source/bzs/db/engine/mysql/mysqlInternal.h +171 -0
  61. data/source/bzs/db/engine/mysql/mysqlThd.cpp +169 -0
  62. data/source/bzs/db/engine/mysql/mysqlThd.h +35 -0
  63. data/source/bzs/db/engine/mysql/percentageKey.h +260 -0
  64. data/source/bzs/db/protocol/ICommandExecuter.h +49 -0
  65. data/source/bzs/db/protocol/hs/hsCommandExecuter.cpp +689 -0
  66. data/source/bzs/db/protocol/hs/hsCommandExecuter.h +228 -0
  67. data/source/bzs/db/protocol/tdap/btrDate.cpp +437 -0
  68. data/source/bzs/db/protocol/tdap/btrDate.h +227 -0
  69. data/source/bzs/db/protocol/tdap/client/bulkInsert.h +127 -0
  70. data/source/bzs/db/protocol/tdap/client/client.cpp +106 -0
  71. data/source/bzs/db/protocol/tdap/client/client.h +292 -0
  72. data/source/bzs/db/protocol/tdap/client/connMgr.cpp +144 -0
  73. data/source/bzs/db/protocol/tdap/client/connMgr.h +82 -0
  74. data/source/bzs/db/protocol/tdap/client/database.cpp +863 -0
  75. data/source/bzs/db/protocol/tdap/client/database.h +118 -0
  76. data/source/bzs/db/protocol/tdap/client/databaseFactory.cpp +100 -0
  77. data/source/bzs/db/protocol/tdap/client/dbDef.cpp +1640 -0
  78. data/source/bzs/db/protocol/tdap/client/dbDef.h +135 -0
  79. data/source/bzs/db/protocol/tdap/client/dllmain.cpp +434 -0
  80. data/source/bzs/db/protocol/tdap/client/errorMessage.cpp +92 -0
  81. data/source/bzs/db/protocol/tdap/client/errorMessage_ja.cpp +98 -0
  82. data/source/bzs/db/protocol/tdap/client/fieldDDF.cpp +174 -0
  83. data/source/bzs/db/protocol/tdap/client/fieldDDF.h +91 -0
  84. data/source/bzs/db/protocol/tdap/client/fileDDF.cpp +140 -0
  85. data/source/bzs/db/protocol/tdap/client/fileDDF.h +86 -0
  86. data/source/bzs/db/protocol/tdap/client/filter.cpp +527 -0
  87. data/source/bzs/db/protocol/tdap/client/filter.h +154 -0
  88. data/source/bzs/db/protocol/tdap/client/indexDDF.cpp +137 -0
  89. data/source/bzs/db/protocol/tdap/client/indexDDF.h +84 -0
  90. data/source/bzs/db/protocol/tdap/client/nsDatabase.cpp +724 -0
  91. data/source/bzs/db/protocol/tdap/client/nsDatabase.h +123 -0
  92. data/source/bzs/db/protocol/tdap/client/nsTable.cpp +899 -0
  93. data/source/bzs/db/protocol/tdap/client/nsTable.h +199 -0
  94. data/source/bzs/db/protocol/tdap/client/request.h +198 -0
  95. data/source/bzs/db/protocol/tdap/client/sharedData.cpp +58 -0
  96. data/source/bzs/db/protocol/tdap/client/sharedData.h +56 -0
  97. data/source/bzs/db/protocol/tdap/client/sqlBuilder.cpp +574 -0
  98. data/source/bzs/db/protocol/tdap/client/sqlBuilder.h +53 -0
  99. data/source/bzs/db/protocol/tdap/client/stringConverter.h +627 -0
  100. data/source/bzs/db/protocol/tdap/client/table.cpp +2613 -0
  101. data/source/bzs/db/protocol/tdap/client/table.h +221 -0
  102. data/source/bzs/db/protocol/tdap/client/trdboostapi.h +1096 -0
  103. data/source/bzs/db/protocol/tdap/client/trdboostapiInternal.h +179 -0
  104. data/source/bzs/db/protocol/tdap/client/trdclcppautolink.h +40 -0
  105. data/source/bzs/db/protocol/tdap/client/trnsctcl.def +11 -0
  106. data/source/bzs/db/protocol/tdap/myDateTime.cpp +500 -0
  107. data/source/bzs/db/protocol/tdap/mysql/characterset.cpp +184 -0
  108. data/source/bzs/db/protocol/tdap/mysql/characterset.h +60 -0
  109. data/source/bzs/db/protocol/tdap/mysql/databaseSchema.cpp +284 -0
  110. data/source/bzs/db/protocol/tdap/mysql/databaseSchema.h +53 -0
  111. data/source/bzs/db/protocol/tdap/mysql/debuglog.cpp +383 -0
  112. data/source/bzs/db/protocol/tdap/mysql/debuglog.h +106 -0
  113. data/source/bzs/db/protocol/tdap/mysql/recordsetReader.h +680 -0
  114. data/source/bzs/db/protocol/tdap/mysql/request.h +202 -0
  115. data/source/bzs/db/protocol/tdap/mysql/tdapCommandExecuter.cpp +1020 -0
  116. data/source/bzs/db/protocol/tdap/mysql/tdapCommandExecuter.h +141 -0
  117. data/source/bzs/db/protocol/tdap/tdapRequest.h +190 -0
  118. data/source/bzs/db/protocol/tdap/tdapSchema.cpp +295 -0
  119. data/source/bzs/db/protocol/tdap/tdapSchema.h +558 -0
  120. data/source/bzs/db/protocol/tdap/tdapcapi.h +423 -0
  121. data/source/bzs/db/transactd/appBuilderImple.h +55 -0
  122. data/source/bzs/db/transactd/appModule.cpp +183 -0
  123. data/source/bzs/db/transactd/appModule.h +80 -0
  124. data/source/bzs/db/transactd/connManager.cpp +201 -0
  125. data/source/bzs/db/transactd/connManager.h +60 -0
  126. data/source/bzs/db/transactd/connectionRecord.h +69 -0
  127. data/source/bzs/db/transactd/transactd.cpp +325 -0
  128. data/source/bzs/env/compiler.h +135 -0
  129. data/source/bzs/env/crosscompile.cpp +130 -0
  130. data/source/bzs/env/crosscompile.h +150 -0
  131. data/source/bzs/env/fileopen.h +36 -0
  132. data/source/bzs/env/mbcswchrLinux.cpp +40 -0
  133. data/source/bzs/env/mbcswchrLinux.h +88 -0
  134. data/source/bzs/env/tstring.h +183 -0
  135. data/source/bzs/example/changeSchema.cpp +117 -0
  136. data/source/bzs/example/changeSchema_c.cpp +78 -0
  137. data/source/bzs/example/connection_pool_c.cpp +171 -0
  138. data/source/bzs/example/createDatabase.cpp +305 -0
  139. data/source/bzs/example/createDatabase_c.cpp +202 -0
  140. data/source/bzs/example/deleteRecords.cpp +87 -0
  141. data/source/bzs/example/deleteRecords_c.cpp +57 -0
  142. data/source/bzs/example/dropDatabase.cpp +59 -0
  143. data/source/bzs/example/dropDatabase_c.cpp +34 -0
  144. data/source/bzs/example/insertRecords.cpp +212 -0
  145. data/source/bzs/example/insertRecords_c.cpp +153 -0
  146. data/source/bzs/example/readRecords.cpp +141 -0
  147. data/source/bzs/example/readRecords_c.cpp +107 -0
  148. data/source/bzs/example/updateRecords.cpp +99 -0
  149. data/source/bzs/example/updateRecords_c.cpp +71 -0
  150. data/source/bzs/example/update_with_transaction.cpp +104 -0
  151. data/source/bzs/example/update_with_transaction_c.cpp +80 -0
  152. data/source/bzs/netsvc/client/tcpClient.cpp +226 -0
  153. data/source/bzs/netsvc/client/tcpClient.h +489 -0
  154. data/source/bzs/netsvc/server/IAppModule.h +94 -0
  155. data/source/bzs/netsvc/server/iserver.h +65 -0
  156. data/source/bzs/netsvc/server/serverCpt.cpp +522 -0
  157. data/source/bzs/netsvc/server/serverCpt.h +88 -0
  158. data/source/bzs/netsvc/server/serverPipe.cpp +705 -0
  159. data/source/bzs/netsvc/server/serverPipe.h +96 -0
  160. data/source/bzs/netsvc/server/serverTpool.cpp +416 -0
  161. data/source/bzs/netsvc/server/serverTpool.h +84 -0
  162. data/source/bzs/rtl/benchmark.cpp +96 -0
  163. data/source/bzs/rtl/benchmark.h +65 -0
  164. data/source/bzs/rtl/datetime.cpp +375 -0
  165. data/source/bzs/rtl/datetime.h +53 -0
  166. data/source/bzs/rtl/debuglog.cpp +106 -0
  167. data/source/bzs/rtl/debuglog.h +97 -0
  168. data/source/bzs/rtl/exception.h +116 -0
  169. data/source/bzs/rtl/stl_uty.cpp +35 -0
  170. data/source/bzs/rtl/stl_uty.h +29 -0
  171. data/source/bzs/rtl/stringBuffers.cpp +101 -0
  172. data/source/bzs/rtl/stringBuffers.h +58 -0
  173. data/source/bzs/rtl/strtrim.cpp +135 -0
  174. data/source/bzs/rtl/strtrim.h +46 -0
  175. data/source/bzs/test/tdclatl/bench_tdclatl.js +445 -0
  176. data/source/bzs/test/tdclrb/bench_tdclcpp.rb +375 -0
  177. data/source/bzs/test/tdclrb/prepare.rb +226 -0
  178. data/source/bzs/test/tdclrb/transactd_datetime_spec.rb +172 -0
  179. data/source/bzs/test/tdclrb/transactd_kanjischema_spec.rb +208 -0
  180. data/source/bzs/test/tdclrb/transactd_spec.rb +1536 -0
  181. data/source/bzs/test/transactdBench/transactdBench.cpp +430 -0
  182. data/source/bzs/test/transactdBench/transactdBench2.cpp +342 -0
  183. data/source/bzs/test/trdclengn/test_trdclengn.cpp +2030 -0
  184. data/source/global/tdclatl/Database.cpp +503 -0
  185. data/source/global/tdclatl/Database.h +139 -0
  186. data/source/global/tdclatl/DbDef.cpp +242 -0
  187. data/source/global/tdclatl/DbDef.h +79 -0
  188. data/source/global/tdclatl/Field.cpp +92 -0
  189. data/source/global/tdclatl/Field.h +59 -0
  190. data/source/global/tdclatl/FieldDef.cpp +238 -0
  191. data/source/global/tdclatl/FieldDef.h +87 -0
  192. data/source/global/tdclatl/Flags.cpp +111 -0
  193. data/source/global/tdclatl/Flags.h +55 -0
  194. data/source/global/tdclatl/KeyDef.cpp +51 -0
  195. data/source/global/tdclatl/KeyDef.h +55 -0
  196. data/source/global/tdclatl/KeySegment.cpp +55 -0
  197. data/source/global/tdclatl/Table.cpp +600 -0
  198. data/source/global/tdclatl/Table.h +144 -0
  199. data/source/global/tdclatl/TableDef.cpp +291 -0
  200. data/source/global/tdclatl/TableDef.h +86 -0
  201. data/source/global/tdclatl/TdVersion.cpp +74 -0
  202. data/source/global/tdclatl/TdVersion.h +54 -0
  203. data/source/global/tdclatl/_IDatabaseEvents_CP.h +113 -0
  204. data/source/global/tdclatl/dllmain.cpp +30 -0
  205. data/source/global/tdclatl/dllmain.h +27 -0
  206. data/source/global/tdclatl/keySegment.h +57 -0
  207. data/source/global/tdclatl/resource.h +0 -0
  208. data/source/global/tdclatl/stdafx.cpp +2 -0
  209. data/source/global/tdclatl/stdafx.h +25 -0
  210. data/source/global/tdclatl/targetver.h +4 -0
  211. data/source/global/tdclatl/tdclatl.cpp +68 -0
  212. data/source/global/tdclatl/tdclatl.def +10 -0
  213. data/source/global/tdclatl/tdclatl.idl +1035 -0
  214. data/source/linux/charsetConvert.h +112 -0
  215. data/source/linux/linuxTypes.h +33 -0
  216. data/source/linux/tchar.h +428 -0
  217. data/transactd.gemspec +97 -0
  218. metadata +267 -0
@@ -0,0 +1,263 @@
1
+ ##=================================================================
2
+ # Copyright (C) 2012 2013 BizStation Corp All rights reserved.
3
+ #
4
+ # This program is free software; you can redistribute it and/or
5
+ # modify it under the terms of the GNU General Public License
6
+ # as published by the Free Software Foundation; either version 2
7
+ # of the License, or (at your option) any later version.
8
+ #
9
+ # This program is distributed in the hope that it will be useful,
10
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
11
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
+ # GNU General Public License for more details.
13
+ #
14
+ # You should have received a copy of the GNU General Public License
15
+ # along with this program; if not, write to the Free Software
16
+ # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
17
+ # 02111-1307, USA.
18
+ ##=================================================================
19
+ ## need system.cmake
20
+ # ==========================================================
21
+ # install so/dll if greater
22
+ # * compare .dll with binary version info
23
+ # * compere .so with file name suffix
24
+ # ==========================================================
25
+ if(NOT COMMAND bz_smart_install)
26
+ set(BZ_SI_SCRIPT "${CMAKE_CURRENT_LIST_FILE}")
27
+ get_filename_component(BZ_SI_WINCMD "${CMAKE_CURRENT_LIST_FILE}" PATH)
28
+ set(BZ_SI_WINCMD "${BZ_SI_WINCMD}/copyifgreater.cmd")
29
+ macro(bz_smart_install)
30
+ cmake_parse_arguments(BZ_SI
31
+ "TO_WIN_SYSTEMDIR;ADD_ME" "DEST;VER_MAJOR;VER_MINOR;VER_RELEASE" "SOURCES" ${ARGN})
32
+ bz_smart_install_set_arguments(
33
+ SOURCES "${BZ_SI_SOURCES}"
34
+ DEST "${BZ_SI_DEST}"
35
+ ADD_ME "${BZ_SI_ADD_ME}"
36
+ TO_WIN_SYSTEMDIR "${BZ_SI_TO_WIN_SYSTEMDIR}"
37
+ )
38
+ if(WIN32)
39
+ install(CODE "
40
+ include (CMakeParseArguments)
41
+ if(NOT COMMAND bz_do_smart_install_dll)
42
+ include(\"${BZ_SI_SCRIPT}\")
43
+ endif()
44
+ bz_do_smart_install_dll(
45
+ CMD \"${BZ_SI_WINCMD}\"
46
+ DEST \"${BZ_SI_DEST}\"
47
+ SOURCES \"${BZ_SI_SOURCES}\"
48
+ )
49
+ ")
50
+ else()
51
+ install(CODE "
52
+ include (CMakeParseArguments)
53
+ if(NOT COMMAND bz_smart_install_so)
54
+ include(\"${BZ_SI_SCRIPT}\")
55
+ endif()
56
+ bz_smart_install_so(
57
+ DEST \"${BZ_SI_DEST}\"
58
+ SOURCE \"${BZ_SI_SOURCES}\"
59
+ VMAJOR \"${BZ_SI_VER_MAJOR}\"
60
+ VMINOR \"${BZ_SI_VER_MINOR}\"
61
+ VRELEASE \"${BZ_SI_VER_RELEASE}\"
62
+ )
63
+ ")
64
+ endif()
65
+ endmacro()
66
+ endif()
67
+
68
+ # ==========================================================
69
+ # set arguments for smart_install
70
+ # ==========================================================
71
+ if(NOT COMMAND bz_smart_install_set_arguments)
72
+ macro(bz_smart_install_set_arguments)
73
+ cmake_parse_arguments(BZ_SISA "" "TO_WIN_SYSTEMDIR;ADD_ME;DEST" "SOURCES" ${ARGN})
74
+ # set dest to sysdir if Windows and TO_WIN_SYSTEMDIR flag on
75
+ if(WIN32 AND (${BZ_SISA_TO_WIN_SYSTEMDIR} STREQUAL "TRUE"))
76
+ bz_get_win_sysdir()
77
+ set(BZ_SI_DEST "${BZ_WIN_SYSDIR}")
78
+ endif()
79
+ # set this target file to sources if ADD_ME flag on
80
+ if("${BZ_SISA_ADD_ME}" STREQUAL "TRUE")
81
+ get_target_property(BZ_SISA_tmp_var "${this_target}" LOCATION)
82
+ set(BZ_SI_SOURCES "${BZ_SISA_SOURCES}" "${BZ_SISA_tmp_var}")
83
+ # get .so version info
84
+ if(NOT WIN32)
85
+ get_target_property(BZ_SISA_tmp_var "${this_target}" VERSION)
86
+ string(REPLACE "." ";" BZ_SISA_tmp_list "${BZ_SISA_tmp_var}")
87
+ list(GET BZ_SISA_tmp_list 0 BZ_SI_VER_MAJOR)
88
+ list(GET BZ_SISA_tmp_list 1 BZ_SI_VER_MINOR)
89
+ list(GET BZ_SISA_tmp_list 2 BZ_SI_VER_RELEASE)
90
+ math(EXPR BZ_SI_VER_MAJOR "${BZ_SI_VER_MAJOR}")
91
+ math(EXPR BZ_SI_VER_MINOR "${BZ_SI_VER_MINOR}")
92
+ math(EXPR BZ_SI_VER_RELEASE "${BZ_SI_VER_RELEASE}")
93
+ endif()
94
+ endif()
95
+ endmacro()
96
+ endif()
97
+
98
+ # ==========================================================
99
+ # install dll if greater (compare with binary version)
100
+ # ==========================================================
101
+ if(NOT COMMAND bz_do_smart_install_dll)
102
+ macro(bz_do_smart_install_dll)
103
+ cmake_parse_arguments(BZ_SID "" "CMD;DEST" "SOURCES" ${ARGN})
104
+ execute_process(COMMAND
105
+ "${BZ_SID_CMD}" "${BZ_SID_SOURCES}" "${BZ_SID_DEST}"
106
+ RESULT_VARIABLE tmp_ret
107
+ OUTPUT_VARIABLE tmp_var
108
+ ERROR_VARIABLE tmp_err
109
+ OUTPUT_STRIP_TRAILING_WHITESPACE
110
+ ERROR_STRIP_TRAILING_WHITESPACE
111
+ )
112
+ string(STRIP "${tmp_var}" tmp_var)
113
+ string(REGEX REPLACE "\n" ";" tmp_list "${tmp_var}")
114
+ foreach(tmp_line ${tmp_list})
115
+ message(STATUS "${tmp_line}")
116
+ foreach(tmp_key "Installing-if-grater: " "Up-to-date-if-grater: ")
117
+ string(REGEX MATCH "${tmp_key}(.*)" tmp_filename "${tmp_line}")
118
+ string(STRIP "${tmp_filename}" tmp_filename)
119
+ string(REPLACE "${tmp_key}" "" tmp_filename "${tmp_filename}")
120
+ if(NOT "${tmp_filename}" STREQUAL "")
121
+ file(TO_CMAKE_PATH "${tmp_filename}" tmp_filename)
122
+ set(CMAKE_INSTALL_MANIFEST_FILES "${CMAKE_INSTALL_MANIFEST_FILES}" "${tmp_filename}")
123
+ endif()
124
+ endforeach()
125
+ endforeach()
126
+ string(STRIP "${tmp_ret}" tmp_ret)
127
+ if(NOT "${tmp_err}" STREQUAL "")
128
+ if("${tmp_ret}" STREQUAL "1")
129
+ message(SEND_ERROR "
130
+ ***********************************************************************
131
+ (EROOR MESSAGE)
132
+ Failed to Install.
133
+ Perhaps it require to run as Administrator, or file is in use.
134
+ Return Code: ${tmp_ret}
135
+ ${tmp_err}
136
+ ***********************************************************************
137
+ ")
138
+ else()
139
+ message(WARNING "
140
+ ***********************************************************************
141
+ (WARNING MESSAGE)
142
+ Files not copied because it could not read the version from the binary.
143
+ There is a possibility that the program does not work properly.
144
+ Please check the compatibility of following binaries.
145
+ Return Code: ${tmp_ret}
146
+ ${tmp_err}
147
+ ***********************************************************************
148
+ ")
149
+ endif()
150
+ endif()
151
+ endmacro()
152
+ endif()
153
+
154
+ # ==========================================================
155
+ # install so if greater (compare with file name)
156
+ # ==========================================================
157
+ if(NOT COMMAND bz_smart_install_so)
158
+ macro(bz_smart_install_so)
159
+ cmake_parse_arguments(BZ_DSI "" "DEST;SOURCE;VMAJOR;VMINOR;VRELEASE" "" ${ARGN})
160
+ get_filename_component(BZ_DSI_BASE "${BZ_DSI_SOURCE}" NAME)
161
+ file(TO_CMAKE_PATH "${BZ_DSI_DEST}/${BZ_DSI_BASE}" BZ_DSI_DEST_BASE)
162
+ #
163
+ # copy file like libfoo.so.1.2.3
164
+ #
165
+ if(NOT EXISTS "${BZ_DSI_DEST}")
166
+ file(MAKE_DIRECTORY "${BZ_DSI_DEST}")
167
+ endif()
168
+ execute_process(COMMAND ${CMAKE_COMMAND} -E copy
169
+ "${BZ_DSI_SOURCE}.${BZ_DSI_VMAJOR}.${BZ_DSI_VMINOR}.${BZ_DSI_VRELEASE}" "${BZ_DSI_DEST}")
170
+ message(STATUS "Installing: ${BZ_DSI_DEST_BASE}.${BZ_DSI_VMAJOR}.${BZ_DSI_VMINOR}.${BZ_DSI_VRELEASE}")
171
+ set(CMAKE_INSTALL_MANIFEST_FILES "${CMAKE_INSTALL_MANIFEST_FILES}"
172
+ "${BZ_DSI_DEST_BASE}.${BZ_DSI_VMAJOR}.${BZ_DSI_VMINOR}.${BZ_DSI_VRELEASE}")
173
+ #
174
+ # create libfoo.so.1.2 symlink
175
+ #
176
+ set(BZ_DSI_INSTALLED_LINK_1 OFF)
177
+ if(NOT EXISTS "${BZ_DSI_DEST_BASE}.${BZ_DSI_VMAJOR}.${BZ_DSI_VMINOR}")
178
+ execute_process(COMMAND ${CMAKE_COMMAND} -E remove
179
+ "${BZ_DSI_DEST_BASE}.${BZ_DSI_VMAJOR}.${BZ_DSI_VMINOR}")
180
+ execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink
181
+ "${BZ_DSI_BASE}.${BZ_DSI_VMAJOR}.${BZ_DSI_VMINOR}.${BZ_DSI_VRELEASE}"
182
+ "${BZ_DSI_DEST_BASE}.${BZ_DSI_VMAJOR}.${BZ_DSI_VMINOR}")
183
+ set(BZ_DSI_INSTALLED_LINK_1 ON)
184
+ else()
185
+ get_filename_component(BZ_DSI_REAL "${BZ_DSI_DEST_BASE}.${BZ_DSI_VMAJOR}.${BZ_DSI_VMINOR}" REALPATH)
186
+ get_filename_component(BZ_DSI_REAL_NAME "${BZ_DSI_REAL}" NAME)
187
+ if(NOT EXISTS "${BZ_DSI_REAL}")
188
+ execute_process(COMMAND ${CMAKE_COMMAND} -E remove
189
+ "${BZ_DSI_DEST_BASE}.${BZ_DSI_VMAJOR}.${BZ_DSI_VMINOR}")
190
+ execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink
191
+ "${BZ_DSI_BASE}.${BZ_DSI_VMAJOR}.${BZ_DSI_VMINOR}.${BZ_DSI_VRELEASE}"
192
+ "${BZ_DSI_DEST_BASE}.${BZ_DSI_VMAJOR}.${BZ_DSI_VMINOR}")
193
+ set(BZ_DSI_INSTALLED_LINK_1 ON)
194
+ else()
195
+ if("${BZ_DSI_REAL_NAME}" MATCHES "^${BZ_DSI_BASE}\\.${BZ_DSI_VMAJOR}\\.${BZ_DSI_VMINOR}\\.[0-9]+$")
196
+ string(REPLACE "${BZ_DSI_BASE}.${BZ_DSI_VMAJOR}.${BZ_DSI_VMINOR}." "" BZ_DSI_TMP_VER "${BZ_DSI_REAL_NAME}")
197
+ math(EXPR BZ_DSI_TMP_VER "${BZ_DSI_TMP_VER}")
198
+ if(${BZ_DSI_TMP_VER} LESS ${BZ_DSI_VRELEASE})
199
+ execute_process(COMMAND ${CMAKE_COMMAND} -E remove
200
+ "${BZ_DSI_DEST_BASE}.${BZ_DSI_VMAJOR}.${BZ_DSI_VMINOR}")
201
+ execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink
202
+ "${BZ_DSI_BASE}.${BZ_DSI_VMAJOR}.${BZ_DSI_VMINOR}.${BZ_DSI_VRELEASE}"
203
+ "${BZ_DSI_DEST_BASE}.${BZ_DSI_VMAJOR}.${BZ_DSI_VMINOR}")
204
+ set(BZ_DSI_INSTALLED_LINK_1 ON)
205
+ endif()
206
+ endif()
207
+ endif()
208
+ endif()
209
+ if(BZ_DSI_INSTALLED_LINK_1)
210
+ set(CMAKE_INSTALL_MANIFEST_FILES "${CMAKE_INSTALL_MANIFEST_FILES}"
211
+ "${BZ_DSI_DEST_BASE}.${BZ_DSI_VMAJOR}.${BZ_DSI_VMINOR}")
212
+ message(STATUS "Installing: ${BZ_DSI_DEST_BASE}.${BZ_DSI_VMAJOR}.${BZ_DSI_VMINOR}")
213
+ else()
214
+ message(STATUS "Up-to-date: ${BZ_DSI_DEST_BASE}.${BZ_DSI_VMAJOR}.${BZ_DSI_VMINOR}")
215
+ endif()
216
+ #
217
+ # create libfoo.so symlink
218
+ #
219
+ set(BZ_DSI_INSTALLED_LINK_2 OFF)
220
+ if(NOT EXISTS "${BZ_DSI_DEST_BASE}")
221
+ execute_process(COMMAND ${CMAKE_COMMAND} -E remove "${BZ_DSI_DEST_BASE}")
222
+ execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink
223
+ "${BZ_DSI_BASE}.${BZ_DSI_VMAJOR}.${BZ_DSI_VMINOR}" "${BZ_DSI_DEST_BASE}")
224
+ set(BZ_DSI_INSTALLED_LINK_2 ON)
225
+ else()
226
+ get_filename_component(BZ_DSI_REAL "${BZ_DSI_DEST_BASE}" REALPATH)
227
+ get_filename_component(BZ_DSI_REAL_NAME "${BZ_DSI_REAL}" NAME)
228
+ if(NOT EXISTS "${BZ_DSI_REAL}")
229
+ execute_process(COMMAND ${CMAKE_COMMAND} -E remove "${BZ_DSI_DEST_BASE}")
230
+ execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink
231
+ "${BZ_DSI_BASE}.${BZ_DSI_VMAJOR}.${BZ_DSI_VMINOR}" "${BZ_DSI_DEST_BASE}")
232
+ set(BZ_DSI_INSTALLED_LINK_2 ON)
233
+ else()
234
+ if("${BZ_DSI_REAL_NAME}" MATCHES "^${BZ_DSI_BASE}\\.[0-9]+\\.[0-9]+\\.[0-9]+$")
235
+ string(REPLACE "${BZ_DSI_BASE}." "" BZ_DSI_TMP_VER "${BZ_DSI_REAL_NAME}")
236
+ string(REPLACE "." ";" BZ_DSI_TMP_VER_LIST "${BZ_DSI_TMP_VER}")
237
+ list(GET BZ_DSI_TMP_VER_LIST 0 BZ_DSI_TMP_VER_MAJOR)
238
+ list(GET BZ_DSI_TMP_VER_LIST 1 BZ_DSI_TMP_VER_MINOR)
239
+ math(EXPR BZ_DSI_TMP_VER_MAJOR "${BZ_DSI_TMP_VER_MAJOR}")
240
+ math(EXPR BZ_DSI_TMP_VER_MINOR "${BZ_DSI_TMP_VER_MINOR}")
241
+ if(${BZ_DSI_TMP_VER_MAJOR} LESS ${BZ_DSI_VMAJOR})
242
+ execute_process(COMMAND ${CMAKE_COMMAND} -E remove "${BZ_DSI_DEST_BASE}")
243
+ execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink
244
+ "${BZ_DSI_BASE}.${BZ_DSI_VMAJOR}.${BZ_DSI_VMINOR}" "${BZ_DSI_DEST_BASE}")
245
+ set(BZ_DSI_INSTALLED_LINK_2 ON)
246
+ elseif((${BZ_DSI_TMP_VER_MAJOR} EQUAL ${BZ_DSI_VMAJOR}) AND
247
+ (${BZ_DSI_TMP_VER_MINOR} LESS ${BZ_DSI_VMINOR}))
248
+ execute_process(COMMAND ${CMAKE_COMMAND} -E remove "${BZ_DSI_DEST_BASE}")
249
+ execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink
250
+ "${BZ_DSI_BASE}.${BZ_DSI_VMAJOR}.${BZ_DSI_VMINOR}" "${BZ_DSI_DEST_BASE}")
251
+ set(BZ_DSI_INSTALLED_LINK_2 ON)
252
+ endif()
253
+ endif()
254
+ endif()
255
+ endif()
256
+ if(BZ_DSI_INSTALLED_LINK_2)
257
+ set(CMAKE_INSTALL_MANIFEST_FILES "${CMAKE_INSTALL_MANIFEST_FILES}" "${BZ_DSI_DEST_BASE}")
258
+ message(STATUS "Installing: ${BZ_DSI_DEST_BASE}")
259
+ else()
260
+ message(STATUS "Up-to-date: ${BZ_DSI_DEST_BASE}")
261
+ endif()
262
+ endmacro()
263
+ endif()
@@ -0,0 +1,122 @@
1
+ ##=================================================================
2
+ # Copyright (C) 2012 2013 BizStation Corp All rights reserved.
3
+ #
4
+ # This program is free software; you can redistribute it and/or
5
+ # modify it under the terms of the GNU General Public License
6
+ # as published by the Free Software Foundation; either version 2
7
+ # of the License, or (at your option) any later version.
8
+ #
9
+ # This program is distributed in the hope that it will be useful,
10
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
11
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
+ # GNU General Public License for more details.
13
+ #
14
+ # You should have received a copy of the GNU General Public License
15
+ # along with this program; if not, write to the Free Software
16
+ # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
17
+ # 02111-1307, USA.
18
+ ##=================================================================
19
+ # ==========================================================
20
+ # get compiler bitness
21
+ # ==========================================================
22
+ if(NOT COMMAND bz_get_compiler_bitness)
23
+ macro(bz_get_compiler_bitness)
24
+ if(CMAKE_SIZEOF_VOID_P)
25
+ set(SIZEOF_VOID_P "${CMAKE_SIZEOF_VOID_P}")
26
+ else()
27
+ include(CheckTypeSize)
28
+ check_type_size("void*" SIZEOF_VOID_P BUILTIN_TYPES_ONLY)
29
+ endif()
30
+ if(SIZEOF_VOID_P EQUAL 8)
31
+ set(BZ_BITNESS "64")
32
+ else()
33
+ set(BZ_BITNESS "32")
34
+ endif()
35
+ if(MSVC AND "${CMAKE_GENERATOR}" MATCHES "Visual Studio")
36
+ if("${CMAKE_GENERATOR}" MATCHES "Win64")
37
+ set(BZ_BITNESS "64")
38
+ else()
39
+ set(BZ_BITNESS "32")
40
+ endif()
41
+ endif()
42
+ endmacro()
43
+ endif()
44
+
45
+
46
+ # ==========================================================
47
+ # get compiler
48
+ # ==========================================================
49
+ if(NOT COMMAND bz_get_compiler)
50
+ macro(bz_get_compiler)
51
+ set(BZ_COMPILER "")
52
+ if(WIN32)
53
+ if(MSVC60)
54
+ set(BZ_COMPILER "_vc060")
55
+ elseif(MSVC70)
56
+ set(BZ_COMPILER "_vc070")
57
+ elseif(MSVC80)
58
+ set(BZ_COMPILER "_vc080")
59
+ elseif(MSVC90)
60
+ set(BZ_COMPILER "_vc090")
61
+ elseif(MSVC10)
62
+ set(BZ_COMPILER "_vc100")
63
+ elseif(MSVC11)
64
+ set(BZ_COMPILER "_vc110")
65
+ elseif(MINGW)
66
+ string(REPLACE "." ";" tmp_list ${CMAKE_CXX_COMPILER_VERSION})
67
+ list (GET tmp_list 0 MINGW_MAJOR)
68
+ list (GET tmp_list 1 MINGW_MINOR)
69
+ list (GET tmp_list 2 MINGW_RELEASE)
70
+ set(BZ_COMPILER "_mgw${MINGW_MAJOR}${MINGW_MINOR}")
71
+ endif()
72
+ endif()
73
+ endmacro()
74
+ endif()
75
+
76
+
77
+ # ==========================================================
78
+ # get windows system bitness
79
+ # ==========================================================
80
+ if(NOT COMMAND bz_get_win_bitness)
81
+ macro(bz_get_win_bitness)
82
+ if(WIN32)
83
+ set(tmp_var "$ENV{PROGRAMFILES(x86)}")
84
+ if(DEFINED tmp_var)
85
+ set(BZ_WIN_BITNESS "64")
86
+ else()
87
+ set(BZ_WIN_BITNESS "32")
88
+ endif()
89
+ else()
90
+ set(BZ_WIN_BITNESS "")
91
+ endif()
92
+ endmacro()
93
+ endif()
94
+
95
+
96
+ # ==========================================================
97
+ # get windows system directories
98
+ # ==========================================================
99
+ if(NOT COMMAND bz_get_win_sysdir)
100
+ macro(bz_get_win_sysdir)
101
+ set(BZ_WIN_SYSDIR_FOR_32BIT_BINARY "")
102
+ set(BZ_WIN_SYSDIR_FOR_64BIT_BINARY "")
103
+ set(BZ_WIN_SYSDIR "")
104
+ if(WIN32)
105
+ bz_get_win_bitness()
106
+ set(tmp_var "$ENV{Systemroot}")
107
+ if(DEFINED tmp_var)
108
+ if("${BZ_WIN_BITNESS}" STREQUAL "32")
109
+ file(TO_CMAKE_PATH "${tmp_var}/System32" BZ_WIN_SYSDIR_FOR_32BIT_BINARY)
110
+ elseif("${BZ_WIN_BITNESS}" STREQUAL "64")
111
+ file(TO_CMAKE_PATH "${tmp_var}/SysWOW64" BZ_WIN_SYSDIR_FOR_32BIT_BINARY)
112
+ file(TO_CMAKE_PATH "${tmp_var}/System32" BZ_WIN_SYSDIR_FOR_64BIT_BINARY)
113
+ endif()
114
+ endif()
115
+ endif()
116
+ bz_get_compiler_bitness()
117
+ if(("${BZ_BITNESS}" STREQUAL "32") OR ("${BZ_BITNESS}" STREQUAL "64"))
118
+ set(BZ_WIN_SYSDIR "${BZ_WIN_SYSDIR_FOR_${BZ_BITNESS}BIT_BINARY}")
119
+ endif()
120
+ endmacro()
121
+ endif()
122
+
@@ -0,0 +1,52 @@
1
+ //=================================================================
2
+ // Copyright (C) 2012 2013 BizStation Corp All rights reserved.
3
+ //
4
+ // This program is free software; you can redistribute it and/or
5
+ // modify it under the terms of the GNU General Public License
6
+ // as published by the Free Software Foundation; either version 2
7
+ // of the License, or (at your option) any later version.
8
+ //
9
+ // This program is distributed in the hope that it will be useful,
10
+ // but WITHOUT ANY WARRANTY; without even the implied warranty of
11
+ // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
+ // GNU General Public License for more details.
13
+ //
14
+ // You should have received a copy of the GNU General Public License
15
+ // along with this program; if not, write to the Free Software
16
+ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
17
+ // 02111-1307, USA.
18
+ //=================================================================
19
+
20
+ #include <windows.h>
21
+ #define IDC_STATIC -1
22
+
23
+ VS_VERSION_INFO VERSIONINFO
24
+ FILEVERSION @TD_RC_F_VER_MAJOR@,@TD_RC_F_VER_MINOR@,@TD_RC_F_VER_RELEASE@,@TD_RC_F_VER_BUILD@
25
+ PRODUCTVERSION @TD_RC_P_VER_MAJOR@,@TD_RC_P_VER_MINOR@,@TD_RC_P_VER_RELEASE@,@TD_RC_P_VER_BUILD@
26
+ FILEFLAGSMASK 0x3fL
27
+ #ifdef _DEBUG
28
+ FILEFLAGS 0x1L
29
+ #else
30
+ FILEFLAGS 0x0L
31
+ #endif
32
+ FILEOS 0x40004L
33
+ FILETYPE 0x2L
34
+ FILESUBTYPE 0x0L
35
+ BEGIN
36
+ BLOCK "StringFileInfo"
37
+ BEGIN
38
+ BLOCK "041104b0"
39
+ BEGIN
40
+ VALUE "CompanyName", "BizStation Corp."
41
+ VALUE "FileDescription", "@TD_RC_F_DESC@"
42
+ VALUE "FileVersion", "@TD_RC_F_VER_MAJOR@.@TD_RC_F_VER_MINOR@.@TD_RC_F_VER_RELEASE@.@TD_RC_F_VER_BUILD@"
43
+ VALUE "LegalCopyright", "Copyright (C) 2013 BizStation Corp."
44
+ VALUE "ProductName", "@TD_RC_P_NAME@"
45
+ VALUE "ProductVersion", "@TD_RC_P_VER_MAJOR@.@TD_RC_P_VER_MINOR@.@TD_RC_P_VER_RELEASE@.@TD_RC_P_VER_BUILD@"
46
+ END
47
+ END
48
+ BLOCK "VarFileInfo"
49
+ BEGIN
50
+ VALUE "Translation", 0x411, 1200
51
+ END
52
+ END
@@ -0,0 +1,101 @@
1
+ ##=================================================================
2
+ # Copyright (C) 2012 2013 BizStation Corp All rights reserved.
3
+ #
4
+ # This program is free software; you can redistribute it and/or
5
+ # modify it under the terms of the GNU General Public License
6
+ # as published by the Free Software Foundation; either version 2
7
+ # of the License, or (at your option) any later version.
8
+ #
9
+ # This program is distributed in the hope that it will be useful,
10
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
11
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
+ # GNU General Public License for more details.
13
+ #
14
+ # You should have received a copy of the GNU General Public License
15
+ # along with this program; if not, write to the Free Software
16
+ # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
17
+ # 02111-1307, USA.
18
+ ##=================================================================
19
+ # ==========================================================
20
+ # add source files macro
21
+ # ==========================================================
22
+ if(NOT COMMAND tdcl_add_source_files)
23
+ macro(tdcl_add_source_files TRANSACTD_ROOT)
24
+ set(${this_target}_SOURCE_FILES
25
+ ${${this_target}_SOURCE_FILES}
26
+ ${TRANSACTD_ROOT}/source/bzs/db/protocol/tdap/btrDate.cpp
27
+ ${TRANSACTD_ROOT}/source/bzs/db/protocol/tdap/tdapSchema.cpp
28
+ ${TRANSACTD_ROOT}/source/bzs/db/protocol/tdap/client/connMgr.cpp
29
+ ${TRANSACTD_ROOT}/source/bzs/db/protocol/tdap/client/database.cpp
30
+ ${TRANSACTD_ROOT}/source/bzs/db/protocol/tdap/client/databaseFactory.cpp
31
+ ${TRANSACTD_ROOT}/source/bzs/db/protocol/tdap/client/dbDef.cpp
32
+ ${TRANSACTD_ROOT}/source/bzs/db/protocol/tdap/client/errorMessage.cpp
33
+ ${TRANSACTD_ROOT}/source/bzs/db/protocol/tdap/client/fieldDDF.cpp
34
+ ${TRANSACTD_ROOT}/source/bzs/db/protocol/tdap/client/fileDDF.cpp
35
+ ${TRANSACTD_ROOT}/source/bzs/db/protocol/tdap/client/filter.cpp
36
+ ${TRANSACTD_ROOT}/source/bzs/db/protocol/tdap/client/indexDDF.cpp
37
+ ${TRANSACTD_ROOT}/source/bzs/db/protocol/tdap/client/nsDatabase.cpp
38
+ ${TRANSACTD_ROOT}/source/bzs/db/protocol/tdap/client/nsTable.cpp
39
+ ${TRANSACTD_ROOT}/source/bzs/db/protocol/tdap/client/sharedData.cpp
40
+ ${TRANSACTD_ROOT}/source/bzs/db/protocol/tdap/client/table.cpp
41
+ ${TRANSACTD_ROOT}/source/bzs/db/protocol/tdap/mysql/characterset.cpp
42
+ ${TRANSACTD_ROOT}/source/bzs/rtl/datetime.cpp
43
+ ${TRANSACTD_ROOT}/source/bzs/rtl/stringBuffers.cpp
44
+ ${TRANSACTD_ROOT}/source/bzs/rtl/strtrim.cpp
45
+ )
46
+ if(WIN32)
47
+ set(${this_target}_SOURCE_FILES ${${this_target}_SOURCE_FILES}
48
+ ${TRANSACTD_ROOT}/source/bzs/db/protocol/tdap/myDateTime.cpp
49
+ )
50
+ else()
51
+ set(${this_target}_SOURCE_FILES ${${this_target}_SOURCE_FILES}
52
+ ${TRANSACTD_ROOT}/source/bzs/env/crosscompile.cpp
53
+ ${TRANSACTD_ROOT}/source/bzs/env/mbcswchrLinux.cpp
54
+ )
55
+ endif()
56
+ endmacro()
57
+ endif()
58
+
59
+
60
+ # ==========================================================
61
+ # add include directory macro
62
+ # ==========================================================
63
+ if(NOT COMMAND tdcl_add_include_directory)
64
+ macro(tdcl_add_include_directory TRANSACTD_ROOT)
65
+ include_directories(${TRANSACTD_ROOT}/source;)
66
+ if(UNIX)
67
+ include_directories(${TRANSACTD_ROOT}/source/linux;)
68
+ endif()
69
+ endmacro()
70
+ endif()
71
+
72
+ # ==========================================================
73
+ # add compiler / linker options macro
74
+ # ==========================================================
75
+ if(NOT COMMAND tdcl_add_compiler_options)
76
+ macro(tdcl_add_compiler_options)
77
+ foreach(build_type "" "_RELEASE" "_DEBUG" "_RELWITHDEBINFO" "_MINSIZEREL")
78
+ bz_add_cxx_flag("-DBOOST_ALL_NO_LIB -DPIC" "${build_type}")
79
+ bz_remove_cxx_flag("-fno-exceptions" "${build_type}")
80
+ bz_remove_cxx_flag("-fno-rtti" "${build_type}")
81
+ bz_remove_cxx_flag("-fno-implicit-templates" "${build_type}")
82
+ bz_remove_cxx_flag("/EHsc" "${build_type}")
83
+ bz_remove_cxx_flag("/EHs" "${build_type}")
84
+ bz_remove_cxx_flag("-DPACKAGE_NO_EXPORT" "${build_type}")
85
+ if(MSVC)
86
+ bz_add_cxx_flag("/EHa /wd4068 /DARBTREGN_PKG /DTRDCL_AUTOLINK_OFF /DTRDCLENGN_EXPORTS" "${build_type}")
87
+ bz_set_MTMTd_cxx_flag("${build_type}")
88
+ else()
89
+ bz_add_cxx_flag("-fPIC -fabi-version=2 -fexceptions -finput-charset=utf-8" "${build_type}")
90
+ bz_add_cxx_flag("-fno-omit-frame-pointer -fno-strict-aliasing -fpermissive -frtti" "${build_type}")
91
+ if(NOT MINGW)
92
+ bz_add_cxx_flag("-DLINUX" "${build_type}")
93
+ endif()
94
+ endif()
95
+ endforeach()
96
+ if(MINGW)
97
+ add_definitions(-DWIN32)
98
+ add_definitions(-D_WIN32)
99
+ endif()
100
+ endmacro()
101
+ endif()
@@ -0,0 +1,93 @@
1
+ ##=================================================================
2
+ # Copyright (C) 2012 2013 BizStation Corp All rights reserved.
3
+ #
4
+ # This program is free software; you can redistribute it and/or
5
+ # modify it under the terms of the GNU General Public License
6
+ # as published by the Free Software Foundation; either version 2
7
+ # of the License, or (at your option) any later version.
8
+ #
9
+ # This program is distributed in the hope that it will be useful,
10
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
11
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
+ # GNU General Public License for more details.
13
+ #
14
+ # You should have received a copy of the GNU General Public License
15
+ # along with this program; if not, write to the Free Software
16
+ # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
17
+ # 02111-1307, USA.
18
+ ##=================================================================
19
+ # ==========================================================
20
+ # tdcl_set_output
21
+ # ==========================================================
22
+ if(NOT COMMAND tdcl_set_output)
23
+ macro(tdcl_set_output TRANSACTD_BINARY_ROOT prefix)
24
+ if(WIN32)
25
+ set_target_properties(${this_target} PROPERTIES
26
+ RUNTIME_OUTPUT_DIRECTORY "${TRANSACTD_BINARY_ROOT}/bin"
27
+ LIBRARY_OUTPUT_DIRECTORY "${TRANSACTD_BINARY_ROOT}/bin"
28
+ ARCHIVE_OUTPUT_DIRECTORY "${TRANSACTD_BINARY_ROOT}/lib")
29
+ if(MSVC)
30
+ transactd_make_msvc_install_file("${TRANSACTD_BINARY_ROOT}")
31
+ add_custom_command(TARGET ${this_target} POST_BUILD
32
+ COMMAND ${CMAKE_COMMAND} -P
33
+ ${CMAKE_CURRENT_BINARY_DIR}/msvc_install_$<CONFIGURATION>.cmake)
34
+ endif()
35
+ else()
36
+ if("${prefix}" STREQUAL "")
37
+ install(TARGETS ${this_target} LIBRARY DESTINATION /usr/lib)
38
+ else()
39
+ install(TARGETS ${this_target} LIBRARY DESTINATION "${prefix}")
40
+ endif()
41
+ endif()
42
+ endmacro()
43
+ endif()
44
+
45
+
46
+ # ==========================================================
47
+ # transactd_set_exe_output
48
+ # ==========================================================
49
+ if(NOT COMMAND transactd_set_exe_output)
50
+ macro(transactd_set_exe_output TRANSACTD_BINARY_ROOT prefix)
51
+ if(WIN32)
52
+ set_target_properties(${this_target} PROPERTIES
53
+ RUNTIME_OUTPUT_DIRECTORY "${TRANSACTD_BINARY_ROOT}/bin")
54
+ if(MSVC)
55
+ transactd_make_msvc_install_file("${TRANSACTD_BINARY_ROOT}")
56
+ add_custom_command(TARGET ${this_target} POST_BUILD
57
+ COMMAND ${CMAKE_COMMAND} -P
58
+ ${CMAKE_CURRENT_BINARY_DIR}/msvc_install_$<CONFIGURATION>.cmake)
59
+ endif()
60
+ else()
61
+ if("${prefix}" STREQUAL "")
62
+ install(TARGETS ${this_target} RUNTIME DESTINATION /usr/local/transactd/bin)
63
+ else()
64
+ install(TARGETS ${this_target} RUNTIME DESTINATION "${prefix}/bin")
65
+ endif()
66
+ endif()
67
+ endmacro()
68
+ endif()
69
+
70
+
71
+ # ==========================================================
72
+ # transactd_make_msvc_install_file MACRO
73
+ # ==========================================================
74
+ if(NOT COMMAND transactd_make_msvc_install_file)
75
+ macro(transactd_make_msvc_install_file TRANSACTD_BINARY_ROOT)
76
+ get_target_property(${this_target}_BINARY_BASENAME "${this_target}" LOCATION)
77
+ get_filename_component(${this_target}_BINARY_BASENAME "${${this_target}_BINARY_BASENAME}" NAME_WE)
78
+ foreach(build_type "RELEASE" "DEBUG" "RELWITHDEBINFO" "MINSIZEREL")
79
+ file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/msvc_install_${build_type}.cmake
80
+ "
81
+ foreach(dirname bin lib)
82
+ file(GLOB dellist \"${TRANSACTD_BINARY_ROOT}/\${dirname}/${${this_target}_BINARY_BASENAME}*\")
83
+ if(NOT \"\${dellist}\" STREQUAL \"\")
84
+ file(REMOVE \${dellist})
85
+ endif()
86
+ file(GLOB copylist
87
+ \"${TRANSACTD_BINARY_ROOT}/\${dirname}/${build_type}/${${this_target}_BINARY_BASENAME}*\")
88
+ file(COPY \${copylist} DESTINATION \"${TRANSACTD_BINARY_ROOT}/\${dirname}/\")
89
+ endforeach()
90
+ ")
91
+ endforeach()
92
+ endmacro()
93
+ endif()