Skip to content

Commit 40cd310

Browse files
authored
Fix ctypes header location (#49)
The ctypes headers are installed in the ctypes package, not ctypes.stubs. This has not mattered too much before but they are being installed in a separate directory in ctypes.0.21.0. This patch ensures that mariadb can build with old and new ctypes.
1 parent 9db2e4d commit 40cd310

File tree

5 files changed

+30
-9
lines changed

5 files changed

+30
-9
lines changed

_oasis

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ Library "mariadb_bindings"
5454
Modules: Ffi_bindings
5555
ByteOpt: -warn-error +1..45
5656
NativeOpt: -warn-error +1..45
57-
BuildDepends: ctypes.stubs
57+
BuildDepends: ctypes,ctypes.stubs
5858

5959
Executable "ffi_stubgen"
6060
Install: false

_tags

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# OASIS_START
2-
# DO NOT EDIT (digest: fc4f1def45cd9de0092739442e8a8081)
2+
# DO NOT EDIT (digest: 95bb932199002f3267d7d5edf10f0fe6)
33
# Ignore VCS directories, you can use the same kind of rule outside
44
# OASIS_START/STOP if you want to exclude directories that contains
55
# useless stuff for the build process
@@ -20,6 +20,7 @@ true: annot, bin_annot
2020
<bindings/*.ml{,i,y}>: oasis_library_mariadb_bindings_byte
2121
<bindings/mariadb_bindings.{cma,cmxa}>: oasis_library_mariadb_bindings_native
2222
<bindings/*.ml{,i,y}>: oasis_library_mariadb_bindings_native
23+
<bindings/*.ml{,i,y}>: package(ctypes)
2324
<bindings/*.ml{,i,y}>: package(ctypes.stubs)
2425
# Library mariadb
2526
"lib/mariadb.cmxs": use_mariadb
@@ -37,9 +38,11 @@ true: annot, bin_annot
3738
<lib/*.ml{,i,y}>: oasis_library_mariadb_native
3839
"lib/ffi_generated_stubs.c": oasis_library_mariadb_native
3940
<lib/mariadb.{cma,cmxa}>: use_libmariadb_stubs
41+
<lib/*.ml{,i,y}>: package(ctypes)
4042
<lib/*.ml{,i,y}>: package(ctypes.stubs)
4143
<lib/*.ml{,i,y}>: package(unix)
4244
<lib/*.ml{,i,y}>: use_mariadb_bindings
45+
"lib/ffi_generated_stubs.c": package(ctypes)
4346
"lib/ffi_generated_stubs.c": package(ctypes.stubs)
4447
"lib/ffi_generated_stubs.c": package(unix)
4548
"lib/ffi_generated_stubs.c": use_mariadb_bindings
@@ -48,22 +51,26 @@ true: annot, bin_annot
4851
<stubgen/*.ml{,i,y}>: oasis_executable_ffi_stubgen_byte
4952
"stubgen/ffi_stubgen.byte": oasis_executable_ffi_stubgen_native
5053
<stubgen/*.ml{,i,y}>: oasis_executable_ffi_stubgen_native
54+
"stubgen/ffi_stubgen.byte": package(ctypes)
5155
"stubgen/ffi_stubgen.byte": package(ctypes.stubs)
5256
"stubgen/ffi_stubgen.byte": use_mariadb_bindings
5357
# Executable ffi_types_stubgen
5458
"stubgen/ffi_types_stubgen.byte": oasis_executable_ffi_types_stubgen_byte
5559
<stubgen/*.ml{,i,y}>: oasis_executable_ffi_types_stubgen_byte
5660
"stubgen/ffi_types_stubgen.byte": oasis_executable_ffi_types_stubgen_native
5761
<stubgen/*.ml{,i,y}>: oasis_executable_ffi_types_stubgen_native
62+
"stubgen/ffi_types_stubgen.byte": package(ctypes)
5863
"stubgen/ffi_types_stubgen.byte": package(ctypes.stubs)
5964
"stubgen/ffi_types_stubgen.byte": use_mariadb_bindings
65+
<stubgen/*.ml{,i,y}>: package(ctypes)
6066
<stubgen/*.ml{,i,y}>: package(ctypes.stubs)
6167
<stubgen/*.ml{,i,y}>: use_mariadb_bindings
6268
# Executable nonblocking_select
6369
<examples/select/nonblocking_select_example.{native,byte}>: oasis_executable_nonblocking_select_byte
6470
<examples/select/*.ml{,i,y}>: oasis_executable_nonblocking_select_byte
6571
<examples/select/nonblocking_select_example.{native,byte}>: oasis_executable_nonblocking_select_native
6672
<examples/select/*.ml{,i,y}>: oasis_executable_nonblocking_select_native
73+
<examples/select/nonblocking_select_example.{native,byte}>: package(ctypes)
6774
<examples/select/nonblocking_select_example.{native,byte}>: package(ctypes.stubs)
6875
<examples/select/nonblocking_select_example.{native,byte}>: package(unix)
6976
<examples/select/nonblocking_select_example.{native,byte}>: use_mariadb
@@ -73,10 +80,12 @@ true: annot, bin_annot
7380
<examples/select/*.ml{,i,y}>: oasis_executable_nonblocking_select_stress_test_byte
7481
<examples/select/nonblocking_select_stress_test.{native,byte}>: oasis_executable_nonblocking_select_stress_test_native
7582
<examples/select/*.ml{,i,y}>: oasis_executable_nonblocking_select_stress_test_native
83+
<examples/select/nonblocking_select_stress_test.{native,byte}>: package(ctypes)
7684
<examples/select/nonblocking_select_stress_test.{native,byte}>: package(ctypes.stubs)
7785
<examples/select/nonblocking_select_stress_test.{native,byte}>: package(unix)
7886
<examples/select/nonblocking_select_stress_test.{native,byte}>: use_mariadb
7987
<examples/select/nonblocking_select_stress_test.{native,byte}>: use_mariadb_bindings
88+
<examples/select/*.ml{,i,y}>: package(ctypes)
8089
<examples/select/*.ml{,i,y}>: package(ctypes.stubs)
8190
<examples/select/*.ml{,i,y}>: package(unix)
8291
<examples/select/*.ml{,i,y}>: use_mariadb
@@ -86,6 +95,7 @@ true: annot, bin_annot
8695
<examples/lwt/*.ml{,i,y}>: oasis_executable_nonblocking_lwt_byte
8796
<examples/lwt/nonblocking_lwt_example.{native,byte}>: oasis_executable_nonblocking_lwt_native
8897
<examples/lwt/*.ml{,i,y}>: oasis_executable_nonblocking_lwt_native
98+
<examples/lwt/nonblocking_lwt_example.{native,byte}>: package(ctypes)
8999
<examples/lwt/nonblocking_lwt_example.{native,byte}>: package(ctypes.stubs)
90100
<examples/lwt/nonblocking_lwt_example.{native,byte}>: package(lwt)
91101
<examples/lwt/nonblocking_lwt_example.{native,byte}>: package(lwt.unix)
@@ -97,12 +107,14 @@ true: annot, bin_annot
97107
<examples/lwt/*.ml{,i,y}>: oasis_executable_nonblocking_lwt_stress_test_byte
98108
<examples/lwt/nonblocking_lwt_stress_test.{native,byte}>: oasis_executable_nonblocking_lwt_stress_test_native
99109
<examples/lwt/*.ml{,i,y}>: oasis_executable_nonblocking_lwt_stress_test_native
110+
<examples/lwt/nonblocking_lwt_stress_test.{native,byte}>: package(ctypes)
100111
<examples/lwt/nonblocking_lwt_stress_test.{native,byte}>: package(ctypes.stubs)
101112
<examples/lwt/nonblocking_lwt_stress_test.{native,byte}>: package(lwt)
102113
<examples/lwt/nonblocking_lwt_stress_test.{native,byte}>: package(lwt.unix)
103114
<examples/lwt/nonblocking_lwt_stress_test.{native,byte}>: package(unix)
104115
<examples/lwt/nonblocking_lwt_stress_test.{native,byte}>: use_mariadb
105116
<examples/lwt/nonblocking_lwt_stress_test.{native,byte}>: use_mariadb_bindings
117+
<examples/lwt/*.ml{,i,y}>: package(ctypes)
106118
<examples/lwt/*.ml{,i,y}>: package(ctypes.stubs)
107119
<examples/lwt/*.ml{,i,y}>: package(lwt)
108120
<examples/lwt/*.ml{,i,y}>: package(lwt.unix)
@@ -115,6 +127,7 @@ true: annot, bin_annot
115127
<examples/async/nonblocking_async_example.{native,byte}>: oasis_executable_nonblocking_async_native
116128
<examples/async/*.ml{,i,y}>: oasis_executable_nonblocking_async_native
117129
<examples/async/nonblocking_async_example.{native,byte}>: package(async)
130+
<examples/async/nonblocking_async_example.{native,byte}>: package(ctypes)
118131
<examples/async/nonblocking_async_example.{native,byte}>: package(ctypes.stubs)
119132
<examples/async/nonblocking_async_example.{native,byte}>: package(threads)
120133
<examples/async/nonblocking_async_example.{native,byte}>: package(unix)
@@ -126,12 +139,14 @@ true: annot, bin_annot
126139
<examples/async/nonblocking_async_stress_test.{native,byte}>: oasis_executable_nonblocking_async_stress_test_native
127140
<examples/async/*.ml{,i,y}>: oasis_executable_nonblocking_async_stress_test_native
128141
<examples/async/nonblocking_async_stress_test.{native,byte}>: package(async)
142+
<examples/async/nonblocking_async_stress_test.{native,byte}>: package(ctypes)
129143
<examples/async/nonblocking_async_stress_test.{native,byte}>: package(ctypes.stubs)
130144
<examples/async/nonblocking_async_stress_test.{native,byte}>: package(threads)
131145
<examples/async/nonblocking_async_stress_test.{native,byte}>: package(unix)
132146
<examples/async/nonblocking_async_stress_test.{native,byte}>: use_mariadb
133147
<examples/async/nonblocking_async_stress_test.{native,byte}>: use_mariadb_bindings
134148
<examples/async/*.ml{,i,y}>: package(async)
149+
<examples/async/*.ml{,i,y}>: package(ctypes)
135150
<examples/async/*.ml{,i,y}>: package(ctypes.stubs)
136151
<examples/async/*.ml{,i,y}>: package(threads)
137152
<examples/async/*.ml{,i,y}>: package(unix)
@@ -142,6 +157,7 @@ true: annot, bin_annot
142157
<examples/blocking/*.ml{,i,y}>: oasis_executable_blocking_byte
143158
<examples/blocking/blocking_example.{native,byte}>: oasis_executable_blocking_native
144159
<examples/blocking/*.ml{,i,y}>: oasis_executable_blocking_native
160+
<examples/blocking/blocking_example.{native,byte}>: package(ctypes)
145161
<examples/blocking/blocking_example.{native,byte}>: package(ctypes.stubs)
146162
<examples/blocking/blocking_example.{native,byte}>: package(unix)
147163
<examples/blocking/blocking_example.{native,byte}>: use_mariadb
@@ -151,10 +167,12 @@ true: annot, bin_annot
151167
<examples/blocking/*.ml{,i,y}>: oasis_executable_blocking_stress_test_byte
152168
<examples/blocking/blocking_stress_test.{native,byte}>: oasis_executable_blocking_stress_test_native
153169
<examples/blocking/*.ml{,i,y}>: oasis_executable_blocking_stress_test_native
170+
<examples/blocking/blocking_stress_test.{native,byte}>: package(ctypes)
154171
<examples/blocking/blocking_stress_test.{native,byte}>: package(ctypes.stubs)
155172
<examples/blocking/blocking_stress_test.{native,byte}>: package(unix)
156173
<examples/blocking/blocking_stress_test.{native,byte}>: use_mariadb
157174
<examples/blocking/blocking_stress_test.{native,byte}>: use_mariadb_bindings
175+
<examples/blocking/*.ml{,i,y}>: package(ctypes)
158176
<examples/blocking/*.ml{,i,y}>: package(ctypes.stubs)
159177
<examples/blocking/*.ml{,i,y}>: package(unix)
160178
<examples/blocking/*.ml{,i,y}>: use_mariadb

bindings/META

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# OASIS_START
2-
# DO NOT EDIT (digest: b1c8f540e34aa763d77aa317840bf85d)
2+
# DO NOT EDIT (digest: 47cccea31efa35a55e6091b7e92cea5c)
33
version = "1.1.6"
44
description = "OCaml bindings for MariaDB"
5-
requires = "ctypes.stubs"
5+
requires = "ctypes ctypes.stubs"
66
archive(byte) = "mariadb_bindings.cma"
77
archive(byte, plugin) = "mariadb_bindings.cma"
88
archive(native) = "mariadb_bindings.cmxa"

myocamlbuild.ml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1372,7 +1372,7 @@ let dispatch = function
13721372
let env = BaseEnvLight.load () in
13731373
let cc = BaseEnvLight.var_get "bytecomp_c_compiler" env in
13741374
let stdlib = BaseEnvLight.var_get "standard_library" env in
1375-
let ctypes = BaseEnvLight.var_get "pkg_ctypes_stubs" env in
1375+
let ctypes = BaseEnvLight.var_get "pkg_ctypes" env in
13761376
Cmd (S [Sh cc; A"stubgen/ffi_ml_types_stubgen.c";
13771377
A"-I"; P ctypes; A"-I"; P stdlib;
13781378
A"-o"; A stubgen_ml_types])

setup.ml

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ module Pervasives = Stdlib
66
(* setup.ml generated for the first time by OASIS v0.4.6 *)
77

88
(* OASIS_START *)
9-
(* DO NOT EDIT (digest: 356ce038ca5fafb6373fb62a81ec27da) *)
9+
(* DO NOT EDIT (digest: a07ab61f795ee78f9ec3214b3386e511) *)
1010
(*
1111
Regenerated by OASIS v0.4.11
1212
Visit http://oasis.forge.ocamlcore.org for more information and
@@ -6962,7 +6962,10 @@ let setup_t =
69626962
bs_path = "bindings";
69636963
bs_compiled_object = Best;
69646964
bs_build_depends =
6965-
[FindlibPackage ("ctypes.stubs", None)];
6965+
[
6966+
FindlibPackage ("ctypes", None);
6967+
FindlibPackage ("ctypes.stubs", None)
6968+
];
69666969
bs_build_tools = [ExternalTool "ocamlbuild"];
69676970
bs_interface_patterns =
69686971
[
@@ -8796,15 +8799,15 @@ let setup_t =
87968799
};
87978800
oasis_fn = Some "_oasis";
87988801
oasis_version = "0.4.11";
8799-
oasis_digest = Some "\000YVj\173\139\003dq\148\197\224 (u\017";
8802+
oasis_digest = Some "\159\158\226N+zm\127\230\249\236xj\166\\\n";
88008803
oasis_exec = None;
88018804
oasis_setup_args = [];
88028805
setup_update = false
88038806
};;
88048807

88058808
let setup () = BaseSetup.setup setup_t;;
88068809

8807-
# 8803 "setup.ml"
8810+
# 8806 "setup.ml"
88088811
let setup_t = BaseCompat.Compat_0_4.adapt_setup_t setup_t
88098812
open BaseCompat.Compat_0_4
88108813
(* OASIS_STOP *)

0 commit comments

Comments
 (0)