Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
File renamed without changes.
21 changes: 21 additions & 0 deletions Dockerfile.dev
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
FROM --platform=amd64 debian:11.6-slim@sha256:f7d141c1ec6af549958a7a2543365a7829c2cdc4476308ec2e182f8a7c59b519

LABEL description="Development environment for bemanitools"

# mingw-w64-gcc has 32-bit and 64-bit toolchains
RUN apt-get update && apt-get install -y --no-install-recommends \
mingw-w64 \
mingw-w64-common \
make \
zip \
git \
clang-format \
python3-pip \
&& rm -rf /var/lib/apt/lists/*

RUN pip3 install mdformat

RUN mkdir /bemanitools
WORKDIR /bemanitools

ENV SHELL /bin/bash
38 changes: 29 additions & 9 deletions GNUmakefile
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,10 @@ BUILDDIR ?= build

builddir_docker := $(BUILDDIR)/docker

docker_container_name := "bemanitools-build"
docker_image_name := "bemanitools-build:latest"
docker_build_container_name := "bemanitools-build"
docker_build_image_name := "bemanitools-build:latest"
docker_dev_container_name := "bemanitools-dev"
docker_dev_image_name := "bemanitools-dev:latest"

depdir := $(BUILDDIR)/dep
objdir := $(BUILDDIR)/obj
Expand All @@ -41,6 +43,7 @@ FORCE:

.PHONY: \
build-docker \
dev-docker \
clean \
code-format \
doc-format \
Expand Down Expand Up @@ -89,21 +92,38 @@ version:
$(V)echo "$(gitrev)" > version

build-docker:
$(V)docker rm -f $(docker_container_name) 2> /dev/null || true
$(V)docker rm -f $(docker_build_container_name) 2> /dev/null || true
$(V)docker \
build \
-t $(docker_image_name) \
-f Dockerfile \
-t $(docker_build_image_name) \
-f Dockerfile.build \
.
$(V)docker \
run \
--volume $(shell pwd):/bemanitools \
--name $(docker_container_name) \
$(docker_image_name)
--name $(docker_build_container_name) \
$(docker_build_image_name)

dev-docker:
$(V)docker rm -f $(docker_dev_container_name) 2> /dev/null || true
$(V)docker \
build \
-t $(docker_dev_image_name) \
-f Dockerfile.dev \
.
$(V)docker \
run \
--interactive \
--tty \
--volume $(shell pwd):/bemanitools \
--name $(docker_dev_container_name) \
$(docker_dev_image_name)

clean-docker:
$(V)docker rm -f $(docker_container_name) || true
$(V)docker image rm -f $(docker_image_name) || true
$(V)docker rm -f $(docker_dev_container_name) || true
$(V)docker image rm -f $(docker_dev_image_name) || true
$(V)docker rm -f $(docker_build_container_name) || true
$(V)docker image rm -f $(docker_build_image_name) || true
$(V)rm -rf $(BUILDDIR)

#
Expand Down
5 changes: 5 additions & 0 deletions Module.mk
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,7 @@ include src/main/bstio/Module.mk
include src/main/camhook/Module.mk
include src/main/cconfig/Module.mk
include src/main/config/Module.mk
include src/main/core/Module.mk
include src/main/d3d9-util/Module.mk
include src/main/d3d9exhook/Module.mk
include src/main/ddrhook-util/Module.mk
Expand Down Expand Up @@ -710,6 +711,8 @@ $(zipdir)/ddr-14-to-18.zip: \
build/bin/indep-32/eamio.dll \
build/bin/indep-32/geninput.dll \
dist/ddr/config.bat \
dist/ddr/gamestart-17.bat \
dist/ddr/gamestart-18.bat \
dist/ddr/gamestart-14.bat \
dist/ddr/gamestart-15.bat \
dist/ddr/gamestart-16.bat \
Expand All @@ -728,6 +731,8 @@ $(zipdir)/ddr-16-to-18-x64.zip: \
build/bin/indep-64/eamio.dll \
build/bin/indep-64/geninput.dll \
dist/ddr/config.bat \
dist/ddr/gamestart-17.bat \
dist/ddr/gamestart-18.bat \
dist/ddr/gamestart-16.bat \
dist/ddr/gamestart-17.bat \
dist/ddr/gamestart-18.bat \
Expand Down
3 changes: 3 additions & 0 deletions src/imports/avs.h
Original file line number Diff line number Diff line change
Expand Up @@ -220,6 +220,9 @@ void property_file_write(struct property *prop, const char *path);
int property_set_flag(struct property *prop, int flags, int mask);
void property_destroy(struct property *prop);

avs_error property_get_error(struct property *prop);
void property_clear_error(struct property *prop);

int property_psmap_import(
struct property *prop,
struct property_node *root,
Expand Down
2 changes: 2 additions & 0 deletions src/imports/import_32_0_avs.def
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ EXPORTS
property_destroy
property_file_write
property_insert_read
property_clear_error
property_get_error
property_mem_write
property_read_query_memsize
property_search
Expand Down
2 changes: 2 additions & 0 deletions src/imports/import_32_1002_avs.def
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,8 @@ EXPORTS
property_destroy
property_file_write
property_insert_read
property_clear_error
property_get_error
property_mem_write
property_read_query_memsize
property_search
Expand Down
2 changes: 2 additions & 0 deletions src/imports/import_32_1101_avs.def
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,8 @@ EXPORTS
property_desc_to_buffer @246 NONAME
property_destroy @247 NONAME
property_insert_read @255 NONAME
property_clear_error @573 NONAME
property_get_error @573 NONAME
property_node_create @266 NONAME
property_node_datasize @267 NONAME
property_node_name @274 NONAME
Expand Down
2 changes: 2 additions & 0 deletions src/imports/import_32_1304_avs.def
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ EXPORTS
property_desc_to_buffer @201 NONAME
property_destroy @264 NONAME
property_insert_read @23 NONAME
property_clear_error @573 NONAME
property_get_error @573 NONAME
property_node_create @316 NONAME
property_node_datasize @249 NONAME
property_node_name @255 NONAME
Expand Down
2 changes: 2 additions & 0 deletions src/imports/import_32_1306_avs.def
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ EXPORTS
property_desc_to_buffer @201 NONAME == XC058ba50000cd
property_destroy @264 NONAME == XC058ba500010f
property_insert_read @23 NONAME == XC058ba5000016
property_clear_error @573 NONAME
property_get_error @573 NONAME
property_node_create @316 NONAME == XC058ba5000143
property_node_datasize @249 NONAME == XC058ba5000100
property_node_name @255 NONAME == XC058ba5000106
Expand Down
2 changes: 2 additions & 0 deletions src/imports/import_32_1403_avs.def
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,8 @@ EXPORTS
property_desc_to_buffer @131 NONAME
property_destroy @130 NONAME
property_insert_read @133 NONAME
property_clear_error @573 NONAME
property_get_error @573 NONAME
property_node_name @573 NONAME ==
property_node_read @573 NONAME ==
property_node_remove @148 NONAME
Expand Down
2 changes: 2 additions & 0 deletions src/imports/import_32_1508_avs.def
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,8 @@ EXPORTS
property_desc_to_buffer @129 NONAME
property_destroy @128 NONAME
property_insert_read @131 NONAME
property_clear_error @573 NONAME
property_get_error @573 NONAME
property_node_create @145 NONAME
property_node_name @150 NONAME
property_node_read @154 NONAME == XCd229cc0000f3
Expand Down
2 changes: 2 additions & 0 deletions src/imports/import_32_1601_avs.def
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ EXPORTS
property_destroy @125 NONAME
property_desc_to_buffer @126 NONAME
property_insert_read @128 NONAME
property_clear_error @573 NONAME
property_get_error @573 NONAME
property_search @141 NONAME
property_node_create @142 NONAME
property_node_name @147 NONAME == XCnbrep7000092
Expand Down
2 changes: 2 additions & 0 deletions src/imports/import_32_1603_avs.def
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ EXPORTS
property_destroy @146 NONAME
property_desc_to_buffer @147 NONAME
property_insert_read @149 NONAME
property_clear_error @158 NONAME == XCnbrep700009d
property_get_error @159 NONAME == XCnbrep700009e
property_search @162 NONAME
property_node_create @163 NONAME
property_node_name @168 NONAME == XCnbrep70000a7
Expand Down
2 changes: 2 additions & 0 deletions src/imports/import_32_1700_avs.def
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@ EXPORTS
property_destroy @146 NONAME
property_desc_to_buffer @147 NONAME
property_insert_read @149 NONAME
property_clear_error @158 NONAME == XCgsqzn000009d
property_get_error @159 NONAME == XCgsqzn000009e
property_search @162 NONAME
property_node_create @163 NONAME
property_node_name @168 NONAME == XCgsqzn00000a7
Expand Down
2 changes: 2 additions & 0 deletions src/imports/import_32_803_avs.def
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ EXPORTS
property_destroy
property_file_write
property_insert_read
property_clear_error
property_get_error
property_mem_write
property_read_query_memsize
property_search
Expand Down
2 changes: 2 additions & 0 deletions src/imports/import_64_1508_avs.def
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,8 @@ EXPORTS
property_desc_to_buffer @129 NONAME
property_destroy @128 NONAME
property_insert_read @131 NONAME
property_clear_error @573 NONAME
property_get_error @573 NONAME
property_node_create @145 NONAME
property_node_name @150 NONAME
property_node_read @154 NONAME == XCd229cc0000f3
Expand Down
2 changes: 2 additions & 0 deletions src/imports/import_64_1509_avs.def
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,8 @@ EXPORTS
property_desc_to_buffer @129 NONAME
property_destroy @128 NONAME
property_insert_read @131 NONAME
property_clear_error @573 NONAME
property_get_error @573 NONAME
property_node_create @145 NONAME
property_node_name @573 NONAME ==
property_node_read @573 NONAME ==
Expand Down
2 changes: 2 additions & 0 deletions src/imports/import_64_1601_avs.def
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ EXPORTS
property_destroy @125 NONAME
property_desc_to_buffer @126 NONAME
property_insert_read @128 NONAME
property_clear_error @573 NONAME
property_get_error @573 NONAME
property_search @141 NONAME
property_node_create @142 NONAME
property_node_name @147 NONAME == XCnbrep7000092
Expand Down
4 changes: 3 additions & 1 deletion src/imports/import_64_1603_avs.def
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,14 @@ EXPORTS
property_destroy @146 NONAME
property_desc_to_buffer @147 NONAME
property_insert_read @149 NONAME
property_clear_error @158 NONAME == XCnbrep700009d
property_get_error @159 NONAME == XCnbrep700009e
property_search @162 NONAME
property_node_create @163 NONAME
property_node_name @168 NONAME == XCnbrep70000a7
property_node_remove @164 NONAME
property_node_type @169 NONAME == XCnbrep70000a8
property_node_clone @165 NONAME
property_node_clone @165 NONAME == XCnbrep70000a4
property_node_traversal @167 NONAME
property_node_refdata @166 NONAME == XCnbrep70000a5
property_node_datasize @171 NONAME == XCnbrep70000aa
Expand Down
2 changes: 2 additions & 0 deletions src/imports/import_64_1700_avs.def
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@ EXPORTS
property_destroy @146 NONAME
property_desc_to_buffer @147 NONAME
property_insert_read @149 NONAME
property_clear_error @158 NONAME == XCgsqzn000009d
property_get_error @159 NONAME == XCgsqzn000009e
property_search @162 NONAME
property_node_create @163 NONAME
property_node_name @168 NONAME == XCgsqzn00000a7
Expand Down
1 change: 1 addition & 0 deletions src/main/avs-util/Module.mk
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,5 @@ libs += avs-util
libs_avs-util := \

src_avs-util := \
core-interop.c \
error.c \
16 changes: 16 additions & 0 deletions src/main/avs-util/core-interop.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
#include "core/log.h"
#include "core/thread.h"

#include "imports/avs.h"

void avs_util_core_interop_log_avs_impl_set()
{
core_log_impl_set(
log_body_misc, log_body_info, log_body_warning, log_body_fatal);
}

void avs_util_core_interop_thread_avs_impl_set()
{
core_thread_impl_set(
avs_thread_create, avs_thread_join, avs_thread_destroy);
}
7 changes: 7 additions & 0 deletions src/main/avs-util/core-interop.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#ifndef AVS_UTIL_CORE_INTEROP_H
#define AVS_UTIL_CORE_INTEROP_H

void avs_util_core_interop_log_avs_impl_set();
void avs_util_core_interop_thread_avs_impl_set();

#endif
10 changes: 10 additions & 0 deletions src/main/avs-util/error.c
Original file line number Diff line number Diff line change
Expand Up @@ -96,4 +96,14 @@ const char *avs_util_error_str(avs_error error)
}

return avs_util_error_unknown;
}

const char *avs_util_property_error_get_and_clear(struct property *prop)
{
avs_error error;

error = property_get_error(prop);
property_clear_error(prop);

return avs_util_error_str(error);
}
4 changes: 3 additions & 1 deletion src/main/avs-util/error.h
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,6 @@

const char *avs_util_error_str(avs_error error);

#endif
const char *avs_util_property_error_get_and_clear(struct property *prop);

#endif
20 changes: 20 additions & 0 deletions src/main/core/Module.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
libs += core

libs_core := \
util \

src_core := \
log-bt-ext.c \
log-bt.c \
log-sink-async.c \
log-sink-debug.c \
log-sink-file.c \
log-sink-list.c \
log-sink-mutex.c \
log-sink-null.c \
log-sink-std.c \
log.c \
thread-crt-ext.c \
thread-crt.c \
thread.c \

Loading