Skip to content

Commit

Permalink
cleanups
Browse files Browse the repository at this point in the history
  • Loading branch information
WillAyd committed Jun 18, 2024
1 parent abfec33 commit 529b460
Show file tree
Hide file tree
Showing 7 changed files with 192 additions and 179 deletions.
29 changes: 17 additions & 12 deletions meson.build
Original file line number Diff line number Diff line change
Expand Up @@ -53,23 +53,28 @@ configure_file(input: 'src/nanoarrow/nanoarrow_config.h.in',
output: 'nanoarrow_config.h',
configuration: conf_data)

# Windows shared libraries are not exporting the right symbols
# See https://github.com/mesonbuild/wrapdb/pull/1536#issuecomment-2136011408
# and https://github.com/apache/arrow-nanoarrow/issues/495

if host_machine.system() == 'windows'
libtype = 'static_library'
else
libtype = 'library'
libtype = get_option('default_library')
if libtype == 'shared' # TODO: do we need to handle default_library=both?
if meson.is_subproject()
add_project_arguments('-DNANOARROW_CONSUME_DLL', language: 'c')
add_project_arguments('-DNANOARROW_CONSUME_DLL', language: 'cpp')
else
add_project_arguments('-DNANOARROW_BUILD_DLL', language: 'c')
add_project_arguments('-DNANOARROW_BUILD_DLL', language: 'cpp')
endif
endif
endif

nanoarrow_lib = build_target(
nanoarrow_lib = library(
'nanoarrow',
'src/nanoarrow/array.c',
'src/nanoarrow/schema.c',
'src/nanoarrow/array_stream.c',
'src/nanoarrow/utils.c',
install: true,
target_type: libtype,
gnu_symbol_visibility: 'hidden',
)

incdir = include_directories('src/')
Expand All @@ -80,13 +85,13 @@ nanoarrow_dep = declare_dependency(include_directories: [incdir],
if get_option('ipc')
flatcc_dep = dependency('flatcc')

nanoarrow_ipc_lib = build_target(
nanoarrow_ipc_lib = library(
'nanoarrow_ipc',
'src/nanoarrow/nanoarrow_ipc_decoder.c',
'src/nanoarrow/nanoarrow_ipc_reader.c',
dependencies: [nanoarrow_dep, flatcc_dep],
install: true,
target_type: libtype,
gnu_symbol_visibility: 'hidden',
)
nanoarrow_ipc_dep = declare_dependency(include_directories: [incdir],
link_with: nanoarrow_ipc_lib,
Expand All @@ -112,13 +117,13 @@ if needs_device
error('CUDA support with the Meson build system is not implemented')
endif

nanoarrow_device_lib = build_target(
nanoarrow_device_lib = library(
'nanoarrow_device',
sources: device_srcs,
dependencies: device_deps,
install: true,
target_type: libtype,
cpp_args: device_defines,
gnu_symbol_visibility: 'hidden',
)
endif

Expand Down
8 changes: 4 additions & 4 deletions src/nanoarrow/integration/c_data_integration.cc
Original file line number Diff line number Diff line change
Expand Up @@ -209,25 +209,25 @@ static const char* ConvertError(ArrowErrorCode errno_code) {

int64_t nanoarrow_BytesAllocated() { return kBytesAllocated; }

NANOARROW_DLL_EXPORT const char* nanoarrow_CDataIntegration_ExportSchemaFromJson(
NANOARROW_EXPORT const char* nanoarrow_CDataIntegration_ExportSchemaFromJson(
const char* json_path, ArrowSchema* out) {
ArrowErrorInit(&global_error);
return ConvertError(ExportSchemaFromJson(json_path, out, &global_error));
}

NANOARROW_DLL_EXPORT const char* nanoarrow_CDataIntegration_ImportSchemaAndCompareToJson(
NANOARROW_EXPORT const char* nanoarrow_CDataIntegration_ImportSchemaAndCompareToJson(
const char* json_path, ArrowSchema* schema) {
ArrowErrorInit(&global_error);
return ConvertError(ImportSchemaAndCompareToJson(json_path, schema, &global_error));
}

NANOARROW_DLL_EXPORT const char* nanoarrow_CDataIntegration_ExportBatchFromJson(
NANOARROW_EXPORT const char* nanoarrow_CDataIntegration_ExportBatchFromJson(
const char* json_path, int num_batch, ArrowArray* out) {
ArrowErrorInit(&global_error);
return ConvertError(ExportBatchFromJson(json_path, num_batch, out, &global_error));
}

NANOARROW_DLL_EXPORT const char* nanoarrow_CDataIntegration_ImportBatchAndCompareToJson(
NANOARROW_EXPORT const char* nanoarrow_CDataIntegration_ImportBatchAndCompareToJson(
const char* json_path, int num_batch, ArrowArray* batch) {
ArrowErrorInit(&global_error);
return ConvertError(
Expand Down
10 changes: 5 additions & 5 deletions src/nanoarrow/integration/c_data_integration.h
Original file line number Diff line number Diff line change
Expand Up @@ -71,19 +71,19 @@ struct ArrowArray {
#endif // ARROW_C_DATA_INTERFACE
#endif // ARROW_FLAG_DICTIONARY_ORDERED

NANOARROW_DLL_EXPORT const char* nanoarrow_CDataIntegration_ExportSchemaFromJson(
NANOARROW_EXPORT const char* nanoarrow_CDataIntegration_ExportSchemaFromJson(
const char* json_path, struct ArrowSchema* out);

NANOARROW_DLL_EXPORT const char* nanoarrow_CDataIntegration_ImportSchemaAndCompareToJson(
NANOARROW_EXPORT const char* nanoarrow_CDataIntegration_ImportSchemaAndCompareToJson(
const char* json_path, struct ArrowSchema* schema);

NANOARROW_DLL_EXPORT const char* nanoarrow_CDataIntegration_ExportBatchFromJson(
NANOARROW_EXPORT const char* nanoarrow_CDataIntegration_ExportBatchFromJson(
const char* json_path, int num_batch, struct ArrowArray* out);

NANOARROW_DLL_EXPORT const char* nanoarrow_CDataIntegration_ImportBatchAndCompareToJson(
NANOARROW_EXPORT const char* nanoarrow_CDataIntegration_ImportBatchAndCompareToJson(
const char* json_path, int num_batch, struct ArrowArray* batch);

NANOARROW_DLL_EXPORT int64_t nanoarrow_BytesAllocated(void);
NANOARROW_EXPORT int64_t nanoarrow_BytesAllocated(void);

#ifdef __cplusplus
}
Expand Down
Loading

0 comments on commit 529b460

Please sign in to comment.