build: build C sources using OCaml API with CAML_NAME_SPACE

This way no non-namespaced OCaml C symbols are used, reducing the risk
of clashes with other code.

The only exception is ocaml-augeas, which does not build with
CAML_NAME_SPACE; it will be fixed upstream, and it affects only
ocaml-augeas itself.
This commit is contained in:
Pino Toscano
2019-05-28 10:17:46 +02:00
parent c2918b8b74
commit 0cafcc0e88
12 changed files with 15 additions and 0 deletions

View File

@@ -135,6 +135,7 @@ bin_PROGRAMS += virt-builder virt-builder-repository
virt_builder_SOURCES = $(SOURCES_C)
virt_builder_CPPFLAGS = \
-DCAML_NAME_SPACE \
-I$(builddir) -I$(srcdir) \
-I$(top_builddir) \
-I$(top_srcdir)/gnulib/lib -I$(top_builddir)/gnulib/lib \
@@ -156,6 +157,7 @@ XOBJECTS = $(BOBJECTS:.cmo=.cmx)
virt_builder_repository_SOURCES = $(REPOSITORY_SOURCES_C)
virt_builder_repository_CPPFLAGS = \
-DCAML_NAME_SPACE \
-I$(builddir) -I$(srcdir) \
-I$(top_builddir) \
-I$(top_srcdir)/gnulib/lib -I$(top_builddir)/gnulib/lib \

View File

@@ -59,6 +59,7 @@ noinst_DATA = $(MLLIBVIRT_CMA)
libmllibvirt_a_SOURCES = $(SOURCES_C)
libmllibvirt_a_CPPFLAGS = \
-DCAML_NAME_SPACE \
-I. \
-I$(top_builddir) \
-I$(shell $(OCAMLC) -where)

View File

@@ -49,6 +49,7 @@ noinst_DATA = $(MLPCRE_CMA)
libmlpcre_a_SOURCES = $(SOURCES_C)
libmlpcre_a_CPPFLAGS = \
-DCAML_NAME_SPACE \
-I. \
-I$(top_builddir) \
-I$(top_srcdir)/gnulib/lib -I$(top_builddir)/gnulib/lib \

View File

@@ -50,6 +50,7 @@ noinst_DATA = $(MLPROGRESS_CMA)
libmlprogress_a_SOURCES = $(SOURCES_C)
libmlprogress_a_CPPFLAGS = \
-DCAML_NAME_SPACE \
-I. \
-I$(top_builddir) \
-I$(top_srcdir)/gnulib/lib -I$(top_builddir)/gnulib/lib \

View File

@@ -87,6 +87,7 @@ noinst_DATA = $(MLTOOLS_CMA)
libmltools_a_SOURCES = $(SOURCES_C)
libmltools_a_CPPFLAGS = \
-DCAML_NAME_SPACE \
-I. \
-I$(top_builddir) \
-I$(top_srcdir)/gnulib/lib -I$(top_builddir)/gnulib/lib \

View File

@@ -54,6 +54,7 @@ noinst_DATA = $(MLCUTILS_CMA)
# shouldn't be located under lib. XXX
libmlcutils_a_SOURCES = $(SOURCES_C)
libmlcutils_a_CPPFLAGS = \
-DCAML_NAME_SPACE \
-I. \
-I$(top_builddir) \
-I$(top_srcdir)/gnulib/lib -I$(top_builddir)/gnulib/lib \

View File

@@ -51,6 +51,7 @@ noinst_DATA = $(MLVISIT_CMA)
libmlvisit_a_SOURCES = $(SOURCES_C)
libmlvisit_a_CPPFLAGS = \
-DCAML_NAME_SPACE \
-I. \
-I$(top_builddir) \
-I$(top_srcdir)/gnulib/lib -I$(top_builddir)/gnulib/lib \

View File

@@ -50,6 +50,7 @@ noinst_DATA = $(MLXML_CMA)
libmlxml_a_SOURCES = $(SOURCES_C)
libmlxml_a_CPPFLAGS = \
-DCAML_NAME_SPACE \
-I. \
-I$(top_builddir) \
-I$(top_srcdir)/gnulib/lib -I$(top_builddir)/gnulib/lib \

View File

@@ -92,6 +92,7 @@ noinst_DATA = $(CUSTOMIZE_CMA)
libcustomize_a_SOURCES = $(SOURCES_C)
libcustomize_a_CPPFLAGS = \
-DCAML_NAME_SPACE \
-I. \
-I$(top_builddir) \
-I$(top_srcdir)/gnulib/lib -I$(top_builddir)/gnulib/lib \

View File

@@ -239,6 +239,7 @@ guestfsd_LDADD = \
$(OCAML_LIBS)
guestfsd_CPPFLAGS = \
-DCAML_NAME_SPACE \
-I$(shell $(OCAMLC) -where) \
-I$(shell $(OCAMLC) -where)/hivex \
-I$(top_srcdir)/gnulib/lib \
@@ -398,6 +399,7 @@ daemon_utils_tests_SOURCES = \
utils.c \
utils-c.c
daemon_utils_tests_CPPFLAGS = \
-DCAML_NAME_SPACE \
-I. \
-I$(top_builddir) \
-I$(shell $(OCAMLC) -where) \

View File

@@ -78,6 +78,7 @@ endif
touch $@
libguestfsocaml_a_CPPFLAGS = \
-DCAML_NAME_SPACE \
-DGUESTFS_PRIVATE=1 \
-I$(top_builddir) -I$(OCAMLLIB) -I$(top_srcdir)/ocaml \
-I$(top_srcdir)/common/utils -I$(top_builddir)/common/utils \

View File

@@ -179,6 +179,7 @@ bin_PROGRAMS = virt-v2v virt-v2v-copy-to-local
virt_v2v_SOURCES = $(SOURCES_C)
virt_v2v_CPPFLAGS = \
-DCAML_NAME_SPACE \
-I. \
-I$(top_builddir) \
-I$(shell $(OCAMLC) -where) \
@@ -254,6 +255,7 @@ virt_v2v_LINK = \
virt_v2v_copy_to_local_SOURCES = \
dummy.c
virt_v2v_copy_to_local_CPPFLAGS = \
-DCAML_NAME_SPACE \
-I. \
-I$(top_builddir) \
-I$(shell $(OCAMLC) -where) \