From e54d5da01be8e18d0e0f6d499c46b5b52557cfd2 Mon Sep 17 00:00:00 2001 From: dela Date: Wed, 11 Mar 2026 15:31:06 +0800 Subject: [PATCH] .o --- .gitignore | 2 +- build/Makefile | 384 +++++++++++++ .../Release/.deps/Release/audio_kernel.node.d | 1 + build/Release/.deps/Release/busy_wait.node.d | 1 + .../Release/.deps/Release/documentAll.node.d | 1 + .../.deps/Release/fdlibm_ieee754.node.d | 1 + .../Release/.deps/Release/font_kernel.node.d | 1 + .../Release/obj.target/audio_kernel.node.d | 1 + .../audio_kernel/bin/audio_kernel.o.d | 22 + .../.deps/Release/obj.target/busy_wait.node.d | 1 + .../obj.target/busy_wait/bin/busy_wait.o.d | 19 + .../Release/obj.target/documentAll.node.d | 1 + .../documentAll/bin/documentAll.o.d | 129 +++++ .../Release/obj.target/fdlibm_ieee754.node.d | 1 + .../fdlibm_ieee754/bin/fdlibm_ieee754.o.d | 20 + .../Release/obj.target/font_kernel.node.d | 1 + .../font_kernel/bin/font_kernel.o.d | 19 + .../.deps/Release/obj.target/pffft.node.d | 1 + .../Release/obj.target/pffft/bin/pffft.o.d | 4 + .../obj.target/pffft/bin/pffft_wrapper.o.d | 21 + .../obj.target/transform_kernel.node.d | 1 + .../transform_kernel/bin/transform_kernel.o.d | 20 + build/Release/.deps/Release/pffft.node.d | 1 + .../.deps/Release/transform_kernel.node.d | 1 + .../audio_kernel/bin/audio_kernel.o | Bin 0 -> 102232 bytes .../obj.target/busy_wait/bin/busy_wait.o | Bin 0 -> 76528 bytes .../obj.target/documentAll/bin/documentAll.o | Bin 0 -> 7840 bytes .../fdlibm_ieee754/bin/fdlibm_ieee754.o | Bin 0 -> 74696 bytes .../obj.target/font_kernel/bin/font_kernel.o | Bin 0 -> 71440 bytes build/Release/obj.target/pffft/bin/pffft.o | Bin 0 -> 39520 bytes .../obj.target/pffft/bin/pffft_wrapper.o | Bin 0 -> 118040 bytes .../transform_kernel/bin/transform_kernel.o | Bin 0 -> 84336 bytes build/audio_kernel.target.mk | 162 ++++++ build/binding.Makefile | 6 + build/busy_wait.target.mk | 162 ++++++ build/config.gypi | 523 ++++++++++++++++++ build/documentAll.target.mk | 158 ++++++ build/fdlibm_ieee754.target.mk | 164 ++++++ build/font_kernel.target.mk | 162 ++++++ build/pffft.target.mk | 176 ++++++ build/transform_kernel.target.mk | 162 ++++++ 41 files changed, 2328 insertions(+), 1 deletion(-) create mode 100644 build/Makefile create mode 100644 build/Release/.deps/Release/audio_kernel.node.d create mode 100644 build/Release/.deps/Release/busy_wait.node.d create mode 100644 build/Release/.deps/Release/documentAll.node.d create mode 100644 build/Release/.deps/Release/fdlibm_ieee754.node.d create mode 100644 build/Release/.deps/Release/font_kernel.node.d create mode 100644 build/Release/.deps/Release/obj.target/audio_kernel.node.d create mode 100644 build/Release/.deps/Release/obj.target/audio_kernel/bin/audio_kernel.o.d create mode 100644 build/Release/.deps/Release/obj.target/busy_wait.node.d create mode 100644 build/Release/.deps/Release/obj.target/busy_wait/bin/busy_wait.o.d create mode 100644 build/Release/.deps/Release/obj.target/documentAll.node.d create mode 100644 build/Release/.deps/Release/obj.target/documentAll/bin/documentAll.o.d create mode 100644 build/Release/.deps/Release/obj.target/fdlibm_ieee754.node.d create mode 100644 build/Release/.deps/Release/obj.target/fdlibm_ieee754/bin/fdlibm_ieee754.o.d create mode 100644 build/Release/.deps/Release/obj.target/font_kernel.node.d create mode 100644 build/Release/.deps/Release/obj.target/font_kernel/bin/font_kernel.o.d create mode 100644 build/Release/.deps/Release/obj.target/pffft.node.d create mode 100644 build/Release/.deps/Release/obj.target/pffft/bin/pffft.o.d create mode 100644 build/Release/.deps/Release/obj.target/pffft/bin/pffft_wrapper.o.d create mode 100644 build/Release/.deps/Release/obj.target/transform_kernel.node.d create mode 100644 build/Release/.deps/Release/obj.target/transform_kernel/bin/transform_kernel.o.d create mode 100644 build/Release/.deps/Release/pffft.node.d create mode 100644 build/Release/.deps/Release/transform_kernel.node.d create mode 100644 build/Release/obj.target/audio_kernel/bin/audio_kernel.o create mode 100644 build/Release/obj.target/busy_wait/bin/busy_wait.o create mode 100644 build/Release/obj.target/documentAll/bin/documentAll.o create mode 100644 build/Release/obj.target/fdlibm_ieee754/bin/fdlibm_ieee754.o create mode 100644 build/Release/obj.target/font_kernel/bin/font_kernel.o create mode 100644 build/Release/obj.target/pffft/bin/pffft.o create mode 100644 build/Release/obj.target/pffft/bin/pffft_wrapper.o create mode 100644 build/Release/obj.target/transform_kernel/bin/transform_kernel.o create mode 100644 build/audio_kernel.target.mk create mode 100644 build/binding.Makefile create mode 100644 build/busy_wait.target.mk create mode 100644 build/config.gypi create mode 100644 build/documentAll.target.mk create mode 100644 build/fdlibm_ieee754.target.mk create mode 100644 build/font_kernel.target.mk create mode 100644 build/pffft.target.mk create mode 100644 build/transform_kernel.target.mk diff --git a/.gitignore b/.gitignore index 7754641..ee8eeb0 100644 --- a/.gitignore +++ b/.gitignore @@ -2,7 +2,7 @@ node_modules/ # Build artifacts (node-gyp) -build/ + *.node # Python virtual environment diff --git a/build/Makefile b/build/Makefile new file mode 100644 index 0000000..e7a8d59 --- /dev/null +++ b/build/Makefile @@ -0,0 +1,384 @@ +# We borrow heavily from the kernel build setup, though we are simpler since +# we don't have Kconfig tweaking settings on us. + +# The implicit make rules have it looking for RCS files, among other things. +# We instead explicitly write all the rules we care about. +# It's even quicker (saves ~200ms) to pass -r on the command line. +MAKEFLAGS=-r + +# The source directory tree. +srcdir := .. +abs_srcdir := $(abspath $(srcdir)) + +# The name of the builddir. +builddir_name ?= . + +# The V=1 flag on command line makes us verbosely print command lines. +ifdef V + quiet= +else + quiet=quiet_ +endif + +# Specify BUILDTYPE=Release on the command line for a release build. +BUILDTYPE ?= Release + +# Directory all our build output goes into. +# Note that this must be two directories beneath src/ for unit tests to pass, +# as they reach into the src/ directory for data with relative paths. +builddir ?= $(builddir_name)/$(BUILDTYPE) +abs_builddir := $(abspath $(builddir)) +depsdir := $(builddir)/.deps + +# Object output directory. +obj := $(builddir)/obj +abs_obj := $(abspath $(obj)) + +# We build up a list of every single one of the targets so we can slurp in the +# generated dependency rule Makefiles in one pass. +all_deps := + + + +CC.target ?= $(CC) +CFLAGS.target ?= $(CPPFLAGS) $(CFLAGS) +CXX.target ?= $(CXX) +CXXFLAGS.target ?= $(CPPFLAGS) $(CXXFLAGS) +LINK.target ?= $(LINK) +LDFLAGS.target ?= $(LDFLAGS) +AR.target ?= $(AR) +PLI.target ?= pli + +# C++ apps need to be linked with g++. +LINK ?= $(CXX.target) + +# TODO(evan): move all cross-compilation logic to gyp-time so we don't need +# to replicate this environment fallback in make as well. +CC.host ?= gcc +CFLAGS.host ?= $(CPPFLAGS_host) $(CFLAGS_host) +CXX.host ?= g++ +CXXFLAGS.host ?= $(CPPFLAGS_host) $(CXXFLAGS_host) +LINK.host ?= $(CXX.host) +LDFLAGS.host ?= $(LDFLAGS_host) +AR.host ?= ar +PLI.host ?= pli + +# Define a dir function that can handle spaces. +# http://www.gnu.org/software/make/manual/make.html#Syntax-of-Functions +# "leading spaces cannot appear in the text of the first argument as written. +# These characters can be put into the argument value by variable substitution." +empty := +space := $(empty) $(empty) + +# http://stackoverflow.com/questions/1189781/using-make-dir-or-notdir-on-a-path-with-spaces +replace_spaces = $(subst $(space),?,$1) +unreplace_spaces = $(subst ?,$(space),$1) +dirx = $(call unreplace_spaces,$(dir $(call replace_spaces,$1))) + +# Flags to make gcc output dependency info. Note that you need to be +# careful here to use the flags that ccache and distcc can understand. +# We write to a dep file on the side first and then rename at the end +# so we can't end up with a broken dep file. +depfile = $(depsdir)/$(call replace_spaces,$@).d +DEPFLAGS = -MMD -MF $(depfile).raw + +# We have to fixup the deps output in a few ways. +# (1) the file output should mention the proper .o file. +# ccache or distcc lose the path to the target, so we convert a rule of +# the form: +# foobar.o: DEP1 DEP2 +# into +# path/to/foobar.o: DEP1 DEP2 +# (2) we want missing files not to cause us to fail to build. +# We want to rewrite +# foobar.o: DEP1 DEP2 \ +# DEP3 +# to +# DEP1: +# DEP2: +# DEP3: +# so if the files are missing, they're just considered phony rules. +# We have to do some pretty insane escaping to get those backslashes +# and dollar signs past make, the shell, and sed at the same time. +# Doesn't work with spaces, but that's fine: .d files have spaces in +# their names replaced with other characters. +define fixup_dep +# The depfile may not exist if the input file didn't have any #includes. +touch $(depfile).raw +# Fixup path as in (1). +sed -e "s|^$(notdir $@)|$@|" $(depfile).raw >> $(depfile) +# Add extra rules as in (2). +# We remove slashes and replace spaces with new lines; +# remove blank lines; +# delete the first line and append a colon to the remaining lines. +sed -e 's|\\||' -e 'y| |\n|' $(depfile).raw |\ + grep -v '^$$' |\ + sed -e 1d -e 's|$$|:|' \ + >> $(depfile) +rm $(depfile).raw +endef + +# Command definitions: +# - cmd_foo is the actual command to run; +# - quiet_cmd_foo is the brief-output summary of the command. + +quiet_cmd_cc = CC($(TOOLSET)) $@ +cmd_cc = $(CC.$(TOOLSET)) -o $@ $< $(GYP_CFLAGS) $(DEPFLAGS) $(CFLAGS.$(TOOLSET)) -c + +quiet_cmd_cxx = CXX($(TOOLSET)) $@ +cmd_cxx = $(CXX.$(TOOLSET)) -o $@ $< $(GYP_CXXFLAGS) $(DEPFLAGS) $(CXXFLAGS.$(TOOLSET)) -c + +quiet_cmd_touch = TOUCH $@ +cmd_touch = touch $@ + +quiet_cmd_copy = COPY $@ +# send stderr to /dev/null to ignore messages when linking directories. +cmd_copy = ln -f "$<" "$@" 2>/dev/null || (rm -rf "$@" && cp -af "$<" "$@") + +quiet_cmd_symlink = SYMLINK $@ +cmd_symlink = ln -sf "$<" "$@" + +quiet_cmd_alink = AR($(TOOLSET)) $@ +cmd_alink = rm -f $@ && $(AR.$(TOOLSET)) crs $@ $(filter %.o,$^) + +quiet_cmd_alink_thin = AR($(TOOLSET)) $@ +cmd_alink_thin = rm -f $@ && $(AR.$(TOOLSET)) crsT $@ $(filter %.o,$^) + +# Due to circular dependencies between libraries :(, we wrap the +# special "figure out circular dependencies" flags around the entire +# input list during linking. +quiet_cmd_link = LINK($(TOOLSET)) $@ +cmd_link = $(LINK.$(TOOLSET)) -o $@ $(GYP_LDFLAGS) $(LDFLAGS.$(TOOLSET)) -Wl,--start-group $(LD_INPUTS) $(LIBS) -Wl,--end-group + +# Note: this does not handle spaces in paths +define xargs + $(1) $(word 1,$(2)) +$(if $(word 2,$(2)),$(call xargs,$(1),$(wordlist 2,$(words $(2)),$(2)))) +endef + +define write-to-file + @: >$(1) +$(call xargs,@printf "%s\n" >>$(1),$(2)) +endef + +OBJ_FILE_LIST := ar-file-list + +define create_archive + rm -f $(1) $(1).$(OBJ_FILE_LIST); mkdir -p `dirname $(1)` + $(call write-to-file,$(1).$(OBJ_FILE_LIST),$(filter %.o,$(2))) + $(AR.$(TOOLSET)) crs $(1) @$(1).$(OBJ_FILE_LIST) +endef + +define create_thin_archive + rm -f $(1) $(OBJ_FILE_LIST); mkdir -p `dirname $(1)` + $(call write-to-file,$(1).$(OBJ_FILE_LIST),$(filter %.o,$(2))) + $(AR.$(TOOLSET)) crsT $(1) @$(1).$(OBJ_FILE_LIST) +endef + +# We support two kinds of shared objects (.so): +# 1) shared_library, which is just bundling together many dependent libraries +# into a link line. +# 2) loadable_module, which is generating a module intended for dlopen(). +# +# They differ only slightly: +# In the former case, we want to package all dependent code into the .so. +# In the latter case, we want to package just the API exposed by the +# outermost module. +# This means shared_library uses --whole-archive, while loadable_module doesn't. +# (Note that --whole-archive is incompatible with the --start-group used in +# normal linking.) + +# Other shared-object link notes: +# - Set SONAME to the library filename so our binaries don't reference +# the local, absolute paths used on the link command-line. +quiet_cmd_solink = SOLINK($(TOOLSET)) $@ +cmd_solink = $(LINK.$(TOOLSET)) -o $@ -shared $(GYP_LDFLAGS) $(LDFLAGS.$(TOOLSET)) -Wl,-soname=$(@F) -Wl,--whole-archive $(LD_INPUTS) -Wl,--no-whole-archive $(LIBS) + +quiet_cmd_solink_module = SOLINK_MODULE($(TOOLSET)) $@ +cmd_solink_module = $(LINK.$(TOOLSET)) -o $@ -shared $(GYP_LDFLAGS) $(LDFLAGS.$(TOOLSET)) -Wl,-soname=$(@F) -Wl,--start-group $(filter-out FORCE_DO_CMD, $^) -Wl,--end-group $(LIBS) + + +# Define an escape_quotes function to escape single quotes. +# This allows us to handle quotes properly as long as we always use +# use single quotes and escape_quotes. +escape_quotes = $(subst ','\'',$(1)) +# This comment is here just to include a ' to unconfuse syntax highlighting. +# Define an escape_vars function to escape '$' variable syntax. +# This allows us to read/write command lines with shell variables (e.g. +# $LD_LIBRARY_PATH), without triggering make substitution. +escape_vars = $(subst $$,$$$$,$(1)) +# Helper that expands to a shell command to echo a string exactly as it is in +# make. This uses printf instead of echo because printf's behaviour with respect +# to escape sequences is more portable than echo's across different shells +# (e.g., dash, bash). +exact_echo = printf '%s\n' '$(call escape_quotes,$(1))' + +# Helper to compare the command we're about to run against the command +# we logged the last time we ran the command. Produces an empty +# string (false) when the commands match. +# Tricky point: Make has no string-equality test function. +# The kernel uses the following, but it seems like it would have false +# positives, where one string reordered its arguments. +# arg_check = $(strip $(filter-out $(cmd_$(1)), $(cmd_$@)) \ +# $(filter-out $(cmd_$@), $(cmd_$(1)))) +# We instead substitute each for the empty string into the other, and +# say they're equal if both substitutions produce the empty string. +# .d files contain ? instead of spaces, take that into account. +command_changed = $(or $(subst $(cmd_$(1)),,$(cmd_$(call replace_spaces,$@))),\ + $(subst $(cmd_$(call replace_spaces,$@)),,$(cmd_$(1)))) + +# Helper that is non-empty when a prerequisite changes. +# Normally make does this implicitly, but we force rules to always run +# so we can check their command lines. +# $? -- new prerequisites +# $| -- order-only dependencies +prereq_changed = $(filter-out FORCE_DO_CMD,$(filter-out $|,$?)) + +# Helper that executes all postbuilds until one fails. +define do_postbuilds + @E=0;\ + for p in $(POSTBUILDS); do\ + eval $$p;\ + E=$$?;\ + if [ $$E -ne 0 ]; then\ + break;\ + fi;\ + done;\ + if [ $$E -ne 0 ]; then\ + rm -rf "$@";\ + exit $$E;\ + fi +endef + +# do_cmd: run a command via the above cmd_foo names, if necessary. +# Should always run for a given target to handle command-line changes. +# Second argument, if non-zero, makes it do asm/C/C++ dependency munging. +# Third argument, if non-zero, makes it do POSTBUILDS processing. +# Note: We intentionally do NOT call dirx for depfile, since it contains ? for +# spaces already and dirx strips the ? characters. +define do_cmd +$(if $(or $(command_changed),$(prereq_changed)), + @$(call exact_echo, $($(quiet)cmd_$(1))) + @mkdir -p "$(call dirx,$@)" "$(dir $(depfile))" + $(if $(findstring flock,$(word 1,$(cmd_$1))), + @$(cmd_$(1)) + @echo " $(quiet_cmd_$(1)): Finished", + @$(cmd_$(1)) + ) + @$(call exact_echo,$(call escape_vars,cmd_$(call replace_spaces,$@) := $(cmd_$(1)))) > $(depfile) + @$(if $(2),$(fixup_dep)) + $(if $(and $(3), $(POSTBUILDS)), + $(call do_postbuilds) + ) +) +endef + +# Declare the "all" target first so it is the default, +# even though we don't have the deps yet. +.PHONY: all +all: + +# make looks for ways to re-generate included makefiles, but in our case, we +# don't have a direct way. Explicitly telling make that it has nothing to do +# for them makes it go faster. +%.d: ; + +# Use FORCE_DO_CMD to force a target to run. Should be coupled with +# do_cmd. +.PHONY: FORCE_DO_CMD +FORCE_DO_CMD: + +TOOLSET := target +# Suffix rules, putting all outputs into $(obj). +$(obj).$(TOOLSET)/%.o: $(srcdir)/%.c FORCE_DO_CMD + @$(call do_cmd,cc,1) +$(obj).$(TOOLSET)/%.o: $(srcdir)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) +$(obj).$(TOOLSET)/%.o: $(srcdir)/%.cpp FORCE_DO_CMD + @$(call do_cmd,cxx,1) +$(obj).$(TOOLSET)/%.o: $(srcdir)/%.cxx FORCE_DO_CMD + @$(call do_cmd,cxx,1) +$(obj).$(TOOLSET)/%.o: $(srcdir)/%.s FORCE_DO_CMD + @$(call do_cmd,cc,1) +$(obj).$(TOOLSET)/%.o: $(srcdir)/%.S FORCE_DO_CMD + @$(call do_cmd,cc,1) + +# Try building from generated source, too. +$(obj).$(TOOLSET)/%.o: $(obj).$(TOOLSET)/%.c FORCE_DO_CMD + @$(call do_cmd,cc,1) +$(obj).$(TOOLSET)/%.o: $(obj).$(TOOLSET)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) +$(obj).$(TOOLSET)/%.o: $(obj).$(TOOLSET)/%.cpp FORCE_DO_CMD + @$(call do_cmd,cxx,1) +$(obj).$(TOOLSET)/%.o: $(obj).$(TOOLSET)/%.cxx FORCE_DO_CMD + @$(call do_cmd,cxx,1) +$(obj).$(TOOLSET)/%.o: $(obj).$(TOOLSET)/%.s FORCE_DO_CMD + @$(call do_cmd,cc,1) +$(obj).$(TOOLSET)/%.o: $(obj).$(TOOLSET)/%.S FORCE_DO_CMD + @$(call do_cmd,cc,1) + +$(obj).$(TOOLSET)/%.o: $(obj)/%.c FORCE_DO_CMD + @$(call do_cmd,cc,1) +$(obj).$(TOOLSET)/%.o: $(obj)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) +$(obj).$(TOOLSET)/%.o: $(obj)/%.cpp FORCE_DO_CMD + @$(call do_cmd,cxx,1) +$(obj).$(TOOLSET)/%.o: $(obj)/%.cxx FORCE_DO_CMD + @$(call do_cmd,cxx,1) +$(obj).$(TOOLSET)/%.o: $(obj)/%.s FORCE_DO_CMD + @$(call do_cmd,cc,1) +$(obj).$(TOOLSET)/%.o: $(obj)/%.S FORCE_DO_CMD + @$(call do_cmd,cc,1) + + +ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ + $(findstring $(join ^,$(prefix)),\ + $(join ^,audio_kernel.target.mk)))),) + include audio_kernel.target.mk +endif +ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ + $(findstring $(join ^,$(prefix)),\ + $(join ^,busy_wait.target.mk)))),) + include busy_wait.target.mk +endif +ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ + $(findstring $(join ^,$(prefix)),\ + $(join ^,documentAll.target.mk)))),) + include documentAll.target.mk +endif +ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ + $(findstring $(join ^,$(prefix)),\ + $(join ^,fdlibm_ieee754.target.mk)))),) + include fdlibm_ieee754.target.mk +endif +ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ + $(findstring $(join ^,$(prefix)),\ + $(join ^,font_kernel.target.mk)))),) + include font_kernel.target.mk +endif +ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ + $(findstring $(join ^,$(prefix)),\ + $(join ^,pffft.target.mk)))),) + include pffft.target.mk +endif +ifeq ($(strip $(foreach prefix,$(NO_LOAD),\ + $(findstring $(join ^,$(prefix)),\ + $(join ^,transform_kernel.target.mk)))),) + include transform_kernel.target.mk +endif + +quiet_cmd_regen_makefile = ACTION Regenerating $@ +cmd_regen_makefile = cd $(srcdir); /home/carry/.npm/_npx/c463d28440264a05/node_modules/node-gyp/gyp/gyp_main.py -fmake --ignore-environment "-Dlibrary=shared_library" "-Dvisibility=default" "-Dnode_root_dir=/home/carry/.cache/node-gyp/24.13.0" "-Dnode_gyp_dir=/home/carry/.npm/_npx/c463d28440264a05/node_modules/node-gyp" "-Dnode_lib_file=/home/carry/.cache/node-gyp/24.13.0/<(target_arch)/node.lib" "-Dmodule_root_dir=/home/carry/myprj/hcaptcha" "-Dnode_engine=v8" "--depth=." "-Goutput_dir=." "--generator-output=build" -I/home/carry/myprj/hcaptcha/build/config.gypi -I/home/carry/.npm/_npx/c463d28440264a05/node_modules/node-gyp/addon.gypi -I/home/carry/.cache/node-gyp/24.13.0/include/node/common.gypi "--toplevel-dir=." binding.gyp +Makefile: $(srcdir)/../../.cache/node-gyp/24.13.0/include/node/common.gypi $(srcdir)/../../.npm/_npx/c463d28440264a05/node_modules/node-gyp/addon.gypi $(srcdir)/binding.gyp $(srcdir)/build/config.gypi + $(call do_cmd,regen_makefile) + +# "all" is a concatenation of the "all" targets from all the included +# sub-makefiles. This is just here to clarify. +all: + +# Add in dependency-tracking rules. $(all_deps) is the list of every single +# target in our tree. Only consider the ones with .d (dependency) info: +d_files := $(wildcard $(foreach f,$(all_deps),$(depsdir)/$(f).d)) +ifneq ($(d_files),) + include $(d_files) +endif diff --git a/build/Release/.deps/Release/audio_kernel.node.d b/build/Release/.deps/Release/audio_kernel.node.d new file mode 100644 index 0000000..9a4c266 --- /dev/null +++ b/build/Release/.deps/Release/audio_kernel.node.d @@ -0,0 +1 @@ +cmd_Release/audio_kernel.node := ln -f "Release/obj.target/audio_kernel.node" "Release/audio_kernel.node" 2>/dev/null || (rm -rf "Release/audio_kernel.node" && cp -af "Release/obj.target/audio_kernel.node" "Release/audio_kernel.node") diff --git a/build/Release/.deps/Release/busy_wait.node.d b/build/Release/.deps/Release/busy_wait.node.d new file mode 100644 index 0000000..fcd6f3c --- /dev/null +++ b/build/Release/.deps/Release/busy_wait.node.d @@ -0,0 +1 @@ +cmd_Release/busy_wait.node := ln -f "Release/obj.target/busy_wait.node" "Release/busy_wait.node" 2>/dev/null || (rm -rf "Release/busy_wait.node" && cp -af "Release/obj.target/busy_wait.node" "Release/busy_wait.node") diff --git a/build/Release/.deps/Release/documentAll.node.d b/build/Release/.deps/Release/documentAll.node.d new file mode 100644 index 0000000..4639bb3 --- /dev/null +++ b/build/Release/.deps/Release/documentAll.node.d @@ -0,0 +1 @@ +cmd_Release/documentAll.node := ln -f "Release/obj.target/documentAll.node" "Release/documentAll.node" 2>/dev/null || (rm -rf "Release/documentAll.node" && cp -af "Release/obj.target/documentAll.node" "Release/documentAll.node") diff --git a/build/Release/.deps/Release/fdlibm_ieee754.node.d b/build/Release/.deps/Release/fdlibm_ieee754.node.d new file mode 100644 index 0000000..97b0f9a --- /dev/null +++ b/build/Release/.deps/Release/fdlibm_ieee754.node.d @@ -0,0 +1 @@ +cmd_Release/fdlibm_ieee754.node := ln -f "Release/obj.target/fdlibm_ieee754.node" "Release/fdlibm_ieee754.node" 2>/dev/null || (rm -rf "Release/fdlibm_ieee754.node" && cp -af "Release/obj.target/fdlibm_ieee754.node" "Release/fdlibm_ieee754.node") diff --git a/build/Release/.deps/Release/font_kernel.node.d b/build/Release/.deps/Release/font_kernel.node.d new file mode 100644 index 0000000..68b1200 --- /dev/null +++ b/build/Release/.deps/Release/font_kernel.node.d @@ -0,0 +1 @@ +cmd_Release/font_kernel.node := ln -f "Release/obj.target/font_kernel.node" "Release/font_kernel.node" 2>/dev/null || (rm -rf "Release/font_kernel.node" && cp -af "Release/obj.target/font_kernel.node" "Release/font_kernel.node") diff --git a/build/Release/.deps/Release/obj.target/audio_kernel.node.d b/build/Release/.deps/Release/obj.target/audio_kernel.node.d new file mode 100644 index 0000000..3d98913 --- /dev/null +++ b/build/Release/.deps/Release/obj.target/audio_kernel.node.d @@ -0,0 +1 @@ +cmd_Release/obj.target/audio_kernel.node := g++ -o Release/obj.target/audio_kernel.node -shared -pthread -rdynamic -m64 -Wl,-soname=audio_kernel.node -Wl,--start-group Release/obj.target/audio_kernel/bin/audio_kernel.o -Wl,--end-group diff --git a/build/Release/.deps/Release/obj.target/audio_kernel/bin/audio_kernel.o.d b/build/Release/.deps/Release/obj.target/audio_kernel/bin/audio_kernel.o.d new file mode 100644 index 0000000..5899413 --- /dev/null +++ b/build/Release/.deps/Release/obj.target/audio_kernel/bin/audio_kernel.o.d @@ -0,0 +1,22 @@ +cmd_Release/obj.target/audio_kernel/bin/audio_kernel.o := g++ -o Release/obj.target/audio_kernel/bin/audio_kernel.o ../bin/audio_kernel.cc '-DNODE_GYP_MODULE_NAME=audio_kernel' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-D_GLIBCXX_USE_CXX11_ABI=1' '-D_FILE_OFFSET_BITS=64' '-D_LARGEFILE_SOURCE' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DNAPI_DISABLE_CPP_EXCEPTIONS' '-DBUILDING_NODE_EXTENSION' -I/home/carry/.cache/node-gyp/24.13.0/include/node -I/home/carry/.cache/node-gyp/24.13.0/src -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/config -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/openssl/include -I/home/carry/.cache/node-gyp/24.13.0/deps/uv/include -I/home/carry/.cache/node-gyp/24.13.0/deps/zlib -I/home/carry/.cache/node-gyp/24.13.0/deps/v8/include -I/home/carry/myprj/hcaptcha/node_modules/node-addon-api -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -m64 -O3 -fno-omit-frame-pointer -fno-rtti -fno-strict-aliasing -std=gnu++20 -std=c++17 -O2 -MMD -MF ./Release/.deps/Release/obj.target/audio_kernel/bin/audio_kernel.o.d.raw -c +Release/obj.target/audio_kernel/bin/audio_kernel.o: \ + ../bin/audio_kernel.cc \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/node_api.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api_types.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/node_api_types.h \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.h \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.deprecated.h \ + ../bin/chrome_osc_data.h +../bin/audio_kernel.cc: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/node_api.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api_types.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/node_api_types.h: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.h: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.deprecated.h: +../bin/chrome_osc_data.h: diff --git a/build/Release/.deps/Release/obj.target/busy_wait.node.d b/build/Release/.deps/Release/obj.target/busy_wait.node.d new file mode 100644 index 0000000..a38929a --- /dev/null +++ b/build/Release/.deps/Release/obj.target/busy_wait.node.d @@ -0,0 +1 @@ +cmd_Release/obj.target/busy_wait.node := g++ -o Release/obj.target/busy_wait.node -shared -pthread -rdynamic -m64 -Wl,-soname=busy_wait.node -Wl,--start-group Release/obj.target/busy_wait/bin/busy_wait.o -Wl,--end-group diff --git a/build/Release/.deps/Release/obj.target/busy_wait/bin/busy_wait.o.d b/build/Release/.deps/Release/obj.target/busy_wait/bin/busy_wait.o.d new file mode 100644 index 0000000..0c89646 --- /dev/null +++ b/build/Release/.deps/Release/obj.target/busy_wait/bin/busy_wait.o.d @@ -0,0 +1,19 @@ +cmd_Release/obj.target/busy_wait/bin/busy_wait.o := g++ -o Release/obj.target/busy_wait/bin/busy_wait.o ../bin/busy_wait.cc '-DNODE_GYP_MODULE_NAME=busy_wait' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-D_GLIBCXX_USE_CXX11_ABI=1' '-D_FILE_OFFSET_BITS=64' '-D_LARGEFILE_SOURCE' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DNAPI_DISABLE_CPP_EXCEPTIONS' '-DBUILDING_NODE_EXTENSION' -I/home/carry/.cache/node-gyp/24.13.0/include/node -I/home/carry/.cache/node-gyp/24.13.0/src -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/config -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/openssl/include -I/home/carry/.cache/node-gyp/24.13.0/deps/uv/include -I/home/carry/.cache/node-gyp/24.13.0/deps/zlib -I/home/carry/.cache/node-gyp/24.13.0/deps/v8/include -I/home/carry/myprj/hcaptcha/node_modules/node-addon-api -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -m64 -O3 -fno-omit-frame-pointer -fno-rtti -fno-strict-aliasing -std=gnu++20 -std=c++17 -O2 -MMD -MF ./Release/.deps/Release/obj.target/busy_wait/bin/busy_wait.o.d.raw -c +Release/obj.target/busy_wait/bin/busy_wait.o: ../bin/busy_wait.cc \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/node_api.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api_types.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/node_api_types.h \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.h \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.deprecated.h +../bin/busy_wait.cc: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/node_api.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api_types.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/node_api_types.h: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.h: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.deprecated.h: diff --git a/build/Release/.deps/Release/obj.target/documentAll.node.d b/build/Release/.deps/Release/obj.target/documentAll.node.d new file mode 100644 index 0000000..437571b --- /dev/null +++ b/build/Release/.deps/Release/obj.target/documentAll.node.d @@ -0,0 +1 @@ +cmd_Release/obj.target/documentAll.node := g++ -o Release/obj.target/documentAll.node -shared -pthread -rdynamic -m64 -Wl,-soname=documentAll.node -Wl,--start-group Release/obj.target/documentAll/bin/documentAll.o -Wl,--end-group diff --git a/build/Release/.deps/Release/obj.target/documentAll/bin/documentAll.o.d b/build/Release/.deps/Release/obj.target/documentAll/bin/documentAll.o.d new file mode 100644 index 0000000..d6a433d --- /dev/null +++ b/build/Release/.deps/Release/obj.target/documentAll/bin/documentAll.o.d @@ -0,0 +1,129 @@ +cmd_Release/obj.target/documentAll/bin/documentAll.o := g++ -o Release/obj.target/documentAll/bin/documentAll.o ../bin/documentAll.cc '-DNODE_GYP_MODULE_NAME=documentAll' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-D_GLIBCXX_USE_CXX11_ABI=1' '-D_FILE_OFFSET_BITS=64' '-D_LARGEFILE_SOURCE' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DNAPI_DISABLE_CPP_EXCEPTIONS' '-DBUILDING_NODE_EXTENSION' -I/home/carry/.cache/node-gyp/24.13.0/include/node -I/home/carry/.cache/node-gyp/24.13.0/src -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/config -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/openssl/include -I/home/carry/.cache/node-gyp/24.13.0/deps/uv/include -I/home/carry/.cache/node-gyp/24.13.0/deps/zlib -I/home/carry/.cache/node-gyp/24.13.0/deps/v8/include -I/home/carry/myprj/hcaptcha/node_modules/node-addon-api -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -m64 -O3 -fno-omit-frame-pointer -fno-rtti -fno-strict-aliasing -std=gnu++20 -MMD -MF ./Release/.deps/Release/obj.target/documentAll/bin/documentAll.o.d.raw -c +Release/obj.target/documentAll/bin/documentAll.o: ../bin/documentAll.cc \ + /home/carry/.cache/node-gyp/24.13.0/include/node/node.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/cppgc/common.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8config.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-array-buffer.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-local-handle.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-handle-base.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-internal.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8config.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-memory-span.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-object.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-maybe.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/cppgc/internal/conditional-stack-allocated.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/cppgc/macros.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/cppgc/internal/compiler-specific.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/cppgc/type-traits.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-persistent-handle.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-weak-callback-info.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-primitive.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-data.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-value.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-sandbox.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-traced-handle.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-platform.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-source-location.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-container.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-context.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-snapshot.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-isolate.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-callbacks.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-promise.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-debug.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-script.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-message.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-embedder-heap.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-exception.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-function-callback.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-microtask.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-statistics.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-unwinder.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-embedder-state-scope.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-date.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-extension.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-external.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-function.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-template.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-initialization.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-json.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-locker.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-microtask-queue.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-primitive-object.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-proxy.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-regexp.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-typed-array.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-value-serializer.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-version.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8-wasm.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/node_version.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/node_api.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api_types.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/node_api_types.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/v8.h +../bin/documentAll.cc: +/home/carry/.cache/node-gyp/24.13.0/include/node/node.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/cppgc/common.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8config.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-array-buffer.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-local-handle.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-handle-base.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-internal.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8config.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-memory-span.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-object.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-maybe.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/cppgc/internal/conditional-stack-allocated.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/cppgc/macros.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/cppgc/internal/compiler-specific.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/cppgc/type-traits.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-persistent-handle.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-weak-callback-info.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-primitive.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-data.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-value.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-sandbox.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-traced-handle.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-platform.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-source-location.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-container.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-context.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-snapshot.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-isolate.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-callbacks.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-promise.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-debug.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-script.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-message.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-embedder-heap.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-exception.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-function-callback.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-microtask.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-statistics.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-unwinder.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-embedder-state-scope.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-date.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-extension.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-external.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-function.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-template.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-initialization.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-json.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-locker.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-microtask-queue.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-primitive-object.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-proxy.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-regexp.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-typed-array.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-value-serializer.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-version.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8-wasm.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/node_version.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/node_api.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api_types.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/node_api_types.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/v8.h: diff --git a/build/Release/.deps/Release/obj.target/fdlibm_ieee754.node.d b/build/Release/.deps/Release/obj.target/fdlibm_ieee754.node.d new file mode 100644 index 0000000..004dc09 --- /dev/null +++ b/build/Release/.deps/Release/obj.target/fdlibm_ieee754.node.d @@ -0,0 +1 @@ +cmd_Release/obj.target/fdlibm_ieee754.node := g++ -o Release/obj.target/fdlibm_ieee754.node -shared -pthread -rdynamic -m64 -Wl,-soname=fdlibm_ieee754.node -Wl,--start-group Release/obj.target/fdlibm_ieee754/bin/fdlibm_ieee754.o -Wl,--end-group diff --git a/build/Release/.deps/Release/obj.target/fdlibm_ieee754/bin/fdlibm_ieee754.o.d b/build/Release/.deps/Release/obj.target/fdlibm_ieee754/bin/fdlibm_ieee754.o.d new file mode 100644 index 0000000..c08bb60 --- /dev/null +++ b/build/Release/.deps/Release/obj.target/fdlibm_ieee754/bin/fdlibm_ieee754.o.d @@ -0,0 +1,20 @@ +cmd_Release/obj.target/fdlibm_ieee754/bin/fdlibm_ieee754.o := g++ -o Release/obj.target/fdlibm_ieee754/bin/fdlibm_ieee754.o ../bin/fdlibm_ieee754.cc '-DNODE_GYP_MODULE_NAME=fdlibm_ieee754' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-D_GLIBCXX_USE_CXX11_ABI=1' '-D_FILE_OFFSET_BITS=64' '-D_LARGEFILE_SOURCE' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DNAPI_DISABLE_CPP_EXCEPTIONS' '-DBUILDING_NODE_EXTENSION' -I/home/carry/.cache/node-gyp/24.13.0/include/node -I/home/carry/.cache/node-gyp/24.13.0/src -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/config -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/openssl/include -I/home/carry/.cache/node-gyp/24.13.0/deps/uv/include -I/home/carry/.cache/node-gyp/24.13.0/deps/zlib -I/home/carry/.cache/node-gyp/24.13.0/deps/v8/include -I/home/carry/myprj/hcaptcha/node_modules/node-addon-api -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -m64 -O3 -fno-omit-frame-pointer -fno-rtti -fno-strict-aliasing -std=gnu++20 -std=c++17 -O2 -fno-fast-math -MMD -MF ./Release/.deps/Release/obj.target/fdlibm_ieee754/bin/fdlibm_ieee754.o.d.raw -c +Release/obj.target/fdlibm_ieee754/bin/fdlibm_ieee754.o: \ + ../bin/fdlibm_ieee754.cc \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/node_api.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api_types.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/node_api_types.h \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.h \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.deprecated.h +../bin/fdlibm_ieee754.cc: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/node_api.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api_types.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/node_api_types.h: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.h: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.deprecated.h: diff --git a/build/Release/.deps/Release/obj.target/font_kernel.node.d b/build/Release/.deps/Release/obj.target/font_kernel.node.d new file mode 100644 index 0000000..4a08f20 --- /dev/null +++ b/build/Release/.deps/Release/obj.target/font_kernel.node.d @@ -0,0 +1 @@ +cmd_Release/obj.target/font_kernel.node := g++ -o Release/obj.target/font_kernel.node -shared -pthread -rdynamic -m64 -Wl,-soname=font_kernel.node -Wl,--start-group Release/obj.target/font_kernel/bin/font_kernel.o -Wl,--end-group diff --git a/build/Release/.deps/Release/obj.target/font_kernel/bin/font_kernel.o.d b/build/Release/.deps/Release/obj.target/font_kernel/bin/font_kernel.o.d new file mode 100644 index 0000000..5cd69dd --- /dev/null +++ b/build/Release/.deps/Release/obj.target/font_kernel/bin/font_kernel.o.d @@ -0,0 +1,19 @@ +cmd_Release/obj.target/font_kernel/bin/font_kernel.o := g++ -o Release/obj.target/font_kernel/bin/font_kernel.o ../bin/font_kernel.cc '-DNODE_GYP_MODULE_NAME=font_kernel' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-D_GLIBCXX_USE_CXX11_ABI=1' '-D_FILE_OFFSET_BITS=64' '-D_LARGEFILE_SOURCE' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DNAPI_DISABLE_CPP_EXCEPTIONS' '-DBUILDING_NODE_EXTENSION' -I/home/carry/.cache/node-gyp/24.13.0/include/node -I/home/carry/.cache/node-gyp/24.13.0/src -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/config -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/openssl/include -I/home/carry/.cache/node-gyp/24.13.0/deps/uv/include -I/home/carry/.cache/node-gyp/24.13.0/deps/zlib -I/home/carry/.cache/node-gyp/24.13.0/deps/v8/include -I/home/carry/myprj/hcaptcha/node_modules/node-addon-api -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -m64 -O3 -fno-omit-frame-pointer -fno-rtti -fno-strict-aliasing -std=gnu++20 -std=c++17 -O2 -MMD -MF ./Release/.deps/Release/obj.target/font_kernel/bin/font_kernel.o.d.raw -c +Release/obj.target/font_kernel/bin/font_kernel.o: ../bin/font_kernel.cc \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/node_api.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api_types.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/node_api_types.h \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.h \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.deprecated.h +../bin/font_kernel.cc: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/node_api.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api_types.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/node_api_types.h: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.h: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.deprecated.h: diff --git a/build/Release/.deps/Release/obj.target/pffft.node.d b/build/Release/.deps/Release/obj.target/pffft.node.d new file mode 100644 index 0000000..0029a88 --- /dev/null +++ b/build/Release/.deps/Release/obj.target/pffft.node.d @@ -0,0 +1 @@ +cmd_Release/obj.target/pffft.node := g++ -o Release/obj.target/pffft.node -shared -pthread -rdynamic -m64 -Wl,-soname=pffft.node -Wl,--start-group Release/obj.target/pffft/bin/pffft.o Release/obj.target/pffft/bin/pffft_wrapper.o -Wl,--end-group diff --git a/build/Release/.deps/Release/obj.target/pffft/bin/pffft.o.d b/build/Release/.deps/Release/obj.target/pffft/bin/pffft.o.d new file mode 100644 index 0000000..1b8da48 --- /dev/null +++ b/build/Release/.deps/Release/obj.target/pffft/bin/pffft.o.d @@ -0,0 +1,4 @@ +cmd_Release/obj.target/pffft/bin/pffft.o := cc -o Release/obj.target/pffft/bin/pffft.o ../bin/pffft.c '-DNODE_GYP_MODULE_NAME=pffft' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-D_GLIBCXX_USE_CXX11_ABI=1' '-D_FILE_OFFSET_BITS=64' '-D_LARGEFILE_SOURCE' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DNAPI_DISABLE_CPP_EXCEPTIONS' '-DBUILDING_NODE_EXTENSION' -I/home/carry/.cache/node-gyp/24.13.0/include/node -I/home/carry/.cache/node-gyp/24.13.0/src -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/config -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/openssl/include -I/home/carry/.cache/node-gyp/24.13.0/deps/uv/include -I/home/carry/.cache/node-gyp/24.13.0/deps/zlib -I/home/carry/.cache/node-gyp/24.13.0/deps/v8/include -I/home/carry/myprj/hcaptcha/node_modules/node-addon-api -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -O3 -ffast-math -m64 -O3 -fno-omit-frame-pointer -MMD -MF ./Release/.deps/Release/obj.target/pffft/bin/pffft.o.d.raw -c +Release/obj.target/pffft/bin/pffft.o: ../bin/pffft.c ../bin/pffft.h +../bin/pffft.c: +../bin/pffft.h: diff --git a/build/Release/.deps/Release/obj.target/pffft/bin/pffft_wrapper.o.d b/build/Release/.deps/Release/obj.target/pffft/bin/pffft_wrapper.o.d new file mode 100644 index 0000000..8e00e05 --- /dev/null +++ b/build/Release/.deps/Release/obj.target/pffft/bin/pffft_wrapper.o.d @@ -0,0 +1,21 @@ +cmd_Release/obj.target/pffft/bin/pffft_wrapper.o := g++ -o Release/obj.target/pffft/bin/pffft_wrapper.o ../bin/pffft_wrapper.cc '-DNODE_GYP_MODULE_NAME=pffft' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-D_GLIBCXX_USE_CXX11_ABI=1' '-D_FILE_OFFSET_BITS=64' '-D_LARGEFILE_SOURCE' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DNAPI_DISABLE_CPP_EXCEPTIONS' '-DBUILDING_NODE_EXTENSION' -I/home/carry/.cache/node-gyp/24.13.0/include/node -I/home/carry/.cache/node-gyp/24.13.0/src -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/config -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/openssl/include -I/home/carry/.cache/node-gyp/24.13.0/deps/uv/include -I/home/carry/.cache/node-gyp/24.13.0/deps/zlib -I/home/carry/.cache/node-gyp/24.13.0/deps/v8/include -I/home/carry/myprj/hcaptcha/node_modules/node-addon-api -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -O3 -ffast-math -m64 -O3 -fno-omit-frame-pointer -fno-rtti -fno-strict-aliasing -std=gnu++20 -std=c++17 -O3 -MMD -MF ./Release/.deps/Release/obj.target/pffft/bin/pffft_wrapper.o.d.raw -c +Release/obj.target/pffft/bin/pffft_wrapper.o: ../bin/pffft_wrapper.cc \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/node_api.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api_types.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/node_api_types.h \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.h \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.deprecated.h \ + ../bin/pffft.h +../bin/pffft_wrapper.cc: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/node_api.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api_types.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/node_api_types.h: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.h: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.deprecated.h: +../bin/pffft.h: diff --git a/build/Release/.deps/Release/obj.target/transform_kernel.node.d b/build/Release/.deps/Release/obj.target/transform_kernel.node.d new file mode 100644 index 0000000..3fc52af --- /dev/null +++ b/build/Release/.deps/Release/obj.target/transform_kernel.node.d @@ -0,0 +1 @@ +cmd_Release/obj.target/transform_kernel.node := g++ -o Release/obj.target/transform_kernel.node -shared -pthread -rdynamic -m64 -Wl,-soname=transform_kernel.node -Wl,--start-group Release/obj.target/transform_kernel/bin/transform_kernel.o -Wl,--end-group diff --git a/build/Release/.deps/Release/obj.target/transform_kernel/bin/transform_kernel.o.d b/build/Release/.deps/Release/obj.target/transform_kernel/bin/transform_kernel.o.d new file mode 100644 index 0000000..1668ff1 --- /dev/null +++ b/build/Release/.deps/Release/obj.target/transform_kernel/bin/transform_kernel.o.d @@ -0,0 +1,20 @@ +cmd_Release/obj.target/transform_kernel/bin/transform_kernel.o := g++ -o Release/obj.target/transform_kernel/bin/transform_kernel.o ../bin/transform_kernel.cc '-DNODE_GYP_MODULE_NAME=transform_kernel' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-D_GLIBCXX_USE_CXX11_ABI=1' '-D_FILE_OFFSET_BITS=64' '-D_LARGEFILE_SOURCE' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DNAPI_DISABLE_CPP_EXCEPTIONS' '-DBUILDING_NODE_EXTENSION' -I/home/carry/.cache/node-gyp/24.13.0/include/node -I/home/carry/.cache/node-gyp/24.13.0/src -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/config -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/openssl/include -I/home/carry/.cache/node-gyp/24.13.0/deps/uv/include -I/home/carry/.cache/node-gyp/24.13.0/deps/zlib -I/home/carry/.cache/node-gyp/24.13.0/deps/v8/include -I/home/carry/myprj/hcaptcha/node_modules/node-addon-api -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -m64 -O3 -fno-omit-frame-pointer -fno-rtti -fno-strict-aliasing -std=gnu++20 -std=c++17 -O2 -MMD -MF ./Release/.deps/Release/obj.target/transform_kernel/bin/transform_kernel.o.d.raw -c +Release/obj.target/transform_kernel/bin/transform_kernel.o: \ + ../bin/transform_kernel.cc \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/node_api.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api_types.h \ + /home/carry/.cache/node-gyp/24.13.0/include/node/node_api_types.h \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.h \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h \ + /home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.deprecated.h +../bin/transform_kernel.cc: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/node_api.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/js_native_api_types.h: +/home/carry/.cache/node-gyp/24.13.0/include/node/node_api_types.h: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.h: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi.h: +/home/carry/myprj/hcaptcha/node_modules/node-addon-api/napi-inl.deprecated.h: diff --git a/build/Release/.deps/Release/pffft.node.d b/build/Release/.deps/Release/pffft.node.d new file mode 100644 index 0000000..90dc73b --- /dev/null +++ b/build/Release/.deps/Release/pffft.node.d @@ -0,0 +1 @@ +cmd_Release/pffft.node := ln -f "Release/obj.target/pffft.node" "Release/pffft.node" 2>/dev/null || (rm -rf "Release/pffft.node" && cp -af "Release/obj.target/pffft.node" "Release/pffft.node") diff --git a/build/Release/.deps/Release/transform_kernel.node.d b/build/Release/.deps/Release/transform_kernel.node.d new file mode 100644 index 0000000..8c9f32d --- /dev/null +++ b/build/Release/.deps/Release/transform_kernel.node.d @@ -0,0 +1 @@ +cmd_Release/transform_kernel.node := ln -f "Release/obj.target/transform_kernel.node" "Release/transform_kernel.node" 2>/dev/null || (rm -rf "Release/transform_kernel.node" && cp -af "Release/obj.target/transform_kernel.node" "Release/transform_kernel.node") diff --git a/build/Release/obj.target/audio_kernel/bin/audio_kernel.o b/build/Release/obj.target/audio_kernel/bin/audio_kernel.o new file mode 100644 index 0000000000000000000000000000000000000000..4d865984a716aba27bed17178291ad1e4e6a060d GIT binary patch literal 102232 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 literal 0 HcmV?d00001 diff --git a/build/Release/obj.target/busy_wait/bin/busy_wait.o b/build/Release/obj.target/busy_wait/bin/busy_wait.o new file mode 100644 index 0000000000000000000000000000000000000000..4fbbc67de8e85be455762950d6d1ef9433e09aee GIT binary patch literal 76528 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

kQNvStW;D=K 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 RSyOf~{io)ZEH``nzX7o0TTB1| literal 0 HcmV?d00001 diff --git a/build/Release/obj.target/documentAll/bin/documentAll.o b/build/Release/obj.target/documentAll/bin/documentAll.o new file mode 100644 index 0000000000000000000000000000000000000000..4ebe8e5af228d0cdd702a5bcf4405f8e24120c95 GIT binary patch literal 7840 zcmb_heQX>@6`wmhwn>vF;nQgXxs(LbQnt4jJGK#te6i2jYcCfoXE%JbUDkJd_QmJj zV{b3DBLzyGmTVm-q5Y>-`AGjkAcRy2ged%DkjhcV7pQjQ5V_{R#|_xuc-}UDV~fbVL1@ zfbRzSUk=m%2i|d6y(R{DnY*Z75Kg8=1k&DF?&r^ZJsI!M0Y85X9qGBY^xP<)BW?C< z=a-ZBCm%>YnA9IQvt|?H`mg-%`r=}7&89&n+E?mr%}br*Jlb69+?A_!+?RVN&|U{| z^z|&2>#XCx+~z>LKhRD?8=RB!iSmV#Wm_RL_xY{c__&XpOM8pHlk-QOgN)I<7yPD} zZAdQ2R6e~abwNFUkR_kTY=C%ruODP-?}dX5|9qj@v+;~~jgrg{v1{`Q_yx})KT#-^ z(B7j9?t?t?e&%MpKWW~ppd=&wI=bLyHSo1kCm*u3k^ug=b6-GAw%h)kZ`XS7b7b-f0(h}i;-_f8MInAtbj!`zY|^M{$hp5 zqssd&_Y4etF1Bq?cJz*z+N~rMHI|4ccEl6$KCZbHo-z1=D-4)eltmU0!-++T1llkF zPLad=S!8-`WW%cVj#I#l@4}6u??a+QEFQq_f;KEGPPfCGkR@+j`&e{fb=%;{mJ_X+ z`4z|8X4_jTk(Ho#@Ro+o$l>7(x7hv+%5EULUC`Kq2+$Vr1AVXS+>1JWmC+F;zE5FM z7Zq!_@G;+yyg*yw$K_VFt(|RuEPA|ce#ME_lP&1~Rb&97G2!@IMQ~Q}o*O@qwUzy2 zu^CqjM7tTau(oC}Yhmpn_y?BZ=zCP+$1xJMu$5G;ml>!8x93)&x);zslGs=#A{pYRw=0P^<>oaY?W zZNM=`L3%O-e=P)mI|MgiYMbdl5rV%2IQn_I#rKH(Uj^-EdcG5aUkt%FLV`EbvnvG8 zhv4&oqn{P<7YWxK(pkVaM;jJ8e3-ovqUYTZd^03SLyJ%X#l;YOBcxh0{!9p72*GP1 z_|Xvjr4aw+eF3)#{YzO@rMm1ax61{lJLY()>Y9#D3UE6LYRvTLQ+AIIwdM*p_QfyQxFyIPj=leso97sS5IL&zcXVhO;@Hgi}zjPlm4U zppcLNkHMbIzTL@;zHewKmm1MWlDji0J;XqwD+kU%Jd;&YMNuCfIs}2w>7jAg>tUC? z$|ZDv8k&qo?cHlQlga9+RWM!1A!7{kA#CWX3S&=ORoAfckc9HEdnjy8CcF!eNjE<^ zy)=3r@i1#Q7ZO!Z=ei*pB~YjKfzMUfspVbU*=Y03~nAb=^?kRTaWe=fr8Jm%1KU zP_T6C>!Ak{2;ZSglSpJIf7|#kE;*coDu!8yrJJAB^AnSL(I~-|Fls$ivI_csvkJEs zX4wT(>A59<6E5d=d1+u%of{)r$E;v3*cc$+x4 zpj|va5WYd+LA%`oN4t17CjOlgzijt_gv)kI5{~yJ(sNkSzgof{k@#i(-;;1z|9J`j zxTNQm5d3c;cto7& z=6ZB^>W!#DAxR%k$VH z;h&QD4GEXy_SF#l8xk(Z^O%HxTGD??;5aTE1Nlk!HpFCq=+2M$Hi;kS2nlgnzfjND z?@H(+{d8YI{yQWbs+=%Q<=Zcv`4LB*Xd8(>*CM`&BmRT>iGP>WhgHNeCx~LAf^iU2 z%@O?GfJAtVx8OUDC<*Tu?O6$ri8>Zfi8}Gqed<{Wrdj$ckt%`wY{f`@6Q6b#p3%2>6^6vxH}va1SQIO5eIu?V1XF)cP#nE=7CXswou*P9}~^w#*5==)gt{4m&ou^#7n05NG<|fUK`y zH0b*Z?u9Y<(VS9=7)}*jKbO$3X#Ip1l4#R|I@<% zxDZ7D@jV>$|7(EZyCgV&PYL_P4=kLhP2~)r&Fud`*rz;0`#2VoBm5*_IR2ph)53l~ z^vM*H8&H27e$DJJG?_mfXVCt40ps=q6Zppe7(a+{dK#YGen7rMOgxPf$B%OtwEr8x z&_2x*R5`sV?9;wWIPxM<`Fp9(JH(?^-c+Oxk|XFZP{F(oxX(I-e9$lQpXC1y71SA& z?-lZ$0fRyLYarWf{$e72SA`*rA5JOBQ(T+bMv-B$pgKexkst3hL3#Y59?U&}*cWiI a06iU8n1SK&cYibawdgR=s(?VC$^Hw5axm!t literal 0 HcmV?d00001 diff --git a/build/Release/obj.target/fdlibm_ieee754/bin/fdlibm_ieee754.o b/build/Release/obj.target/fdlibm_ieee754/bin/fdlibm_ieee754.o new file mode 100644 index 0000000000000000000000000000000000000000..44d6c78f4626d9dcb4ea9a3411f541a12b34f1b2 GIT binary patch literal 74696 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

  • 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 N@9!{giNDG3|1Yq$c+3C* literal 0 HcmV?d00001 diff --git a/build/Release/obj.target/pffft/bin/pffft_wrapper.o b/build/Release/obj.target/pffft/bin/pffft_wrapper.o new file mode 100644 index 0000000000000000000000000000000000000000..5e7575f3b064ae69a0ebe4a693530e5da1af80ce GIT binary patch literal 118040 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 M`H^+#-2M3f0fX^4=>Px# literal 0 HcmV?d00001 diff --git a/build/Release/obj.target/transform_kernel/bin/transform_kernel.o b/build/Release/obj.target/transform_kernel/bin/transform_kernel.o new file mode 100644 index 0000000000000000000000000000000000000000..67efadcf1ace49a2b500e702b496449c15c5ca32 GIT binary patch literal 84336 zcmeIb33wFM);3xpR0t%{0h&P&h~NOCm@uOrO@u&40z^Q;0h*9>B*&1%qys@kgGmEz z(~1L%pA!xoQAE)ribIqD3Jy5ngvwDI5ZZ7Q9C75XwTJGvD_xMF_qpGHpMO8;RMlH+ zzk98<=Uvk^SvjLy#Kjpp#2IH9kt2;7M%if*G(*4{#w_DfA={mf`RuW3+e2-8(zch{ zPo?c~^y^K(KJ+`Dekah6o&4({>2` zhN|OXv>i^r5$gC%+Wv!nXQ|^%+MYwdk?MF9ZL{b%S{;w2ZI0R>N89mge*$fD)&6<3 zov8LF)AoF|e*tZ$sQsz5y-@96MB9ti{&d>9>BnJxBK_M`IKa`XRve%2@*i;d|8)6Z zb@_MiWoVkq|JJ5LIKMk{O6CRG{+}|>&zwBT<^S!)6q0f+*tecG1v!D^Pv}cKIeyR9 zZ2!B0!4+srh>`wNPB1w9(4j-w{+C<psIk5c-au&6pN9@D zZK}MZHjTtXv;H`As9EVaYTy2y;{+uXGZC3u&{RZ}|rGqGY?jgX@OV|^I-xSHWDEyRPW6Pfb zJi%#HSJrV?M0LsKzpF3p$to4DTJu-Af?4aiD{1Qr&`zWusa#H-h@EokH4+ zq%)O{{?2rM4*TxEQNH_B_>S!P8}cWgYrV*y3q_UJJ{t?==I`>`mT+2iQE5FUj#vIf-(%|EtR9b^9?FugA_@b=2GpF(hJ`@(FVYKfp7TV%7D3eqojEG&yknP`~ zNT@YjMdye+ux>9$3)Ha&g4@55M(={lFSst8?%VG0T|k}AcaD^)sq}9~Uv9XA>()~g zI&^iVf3wo)U)gZ_mzz=O=u2a$zQ2FxxNtZ9Hq!4;`n^rR|IqJ^?;MwGp)K)U@-A(2 z6KUr)+Hs}O4oOd~7mBcjV}v7poRW(a^Y5?>;Lhd&T+p)vMsIpPMhZ$R^mt7i^3177 zuzlhRih)Ru+^9ONCrrXC{)kstnTxo0g$a}Dwd8ol1rw&BtW{&rGRH5?9dW>f>0!!) zLdUloba{#7b@~QbxDqM1sR-!86*`wJ)&9r{u1w+j%hSU>+FF4G*NMvLuiHT4Vb_n6 zv(#njWTdijLYxDC^TV zq<x>lDj)(bldEd%F&ap=2}0i%=Q|%c{xEP3Utmkf`I* zB>Wy4De|mZG(LfKT&@mV+hXNgGTL`ej^D;U?@3YJs>3Jz(zxT~FYcz5hp2_&A>AcWL%Q)|NLS0*!1YJ8 zhhf_A&XM_V;Yp7e&Rr*FJbE~Hm6-1Qb^c4(qk?~;aHr-UCEWJc`NgD7@IM@-|DANC zn!^7(c%w4n@ckb(cq?35Xg@xiMeS2g;L^nCF`EB3HAL$uTE&rKh?ear*~~+<_qX`C zsS>qii;p`r-lZYhM(T3cawEn=w5K>`4G+=e%FrI_+GGnCl>Ml$ibee!|0!n}nHObV z%w7NGJSvd!D2Ax(Tf{(1rN;>GieZ|jDkG4GY0Cs>K#aMlWnpDh!CfYp{L8pN?MhbhQ=I-PIq&1>0%{W zc!VrlL5f6=Lm3f9#u$gPT`|X@Ie|4CFUP-zyO@iFUCSt;7psX%*iL$l3*N03vtKTm*q3Zfj{P(WaIdXiPy^K9a9BG2P;;}b><6%M!L&6S$`d;uH*Pl5xG*wBP%h0i;e>W zxP?jNuz=(UL~{hiDY0Ba#tkQ`rVrq*qx5M2w>>NU%Z8I_;=#F@{tB$``8Lo@gHeZX z3+ozK#%}oDQ5r8?N0W?f|9g)11|cI;9PKkwcqf&1Qh6thcG7q!gLX1_Czp0|d1nUg z%;23e+9?wbap5%I;p@(J(YztYzl)Z3VfH}2Ju zjj~`DZNgd5i!YDBj3GJ>WWmxlA`1iu%*D8@+$K&P-5Blq#PE!Pt)g1_7Hz038M39L z(>!0;sz6r_HyMkzv8CKx1lP$LD6h*<5#dAj#nb4E80*imd~p>e)+Ar7X2ICAr>DfJ zqw_@r6|vZ}r>yk<#-2Xih-Svf@>T3pe;s>eFFTd9OH6s1lI4@7nSvt_&2jNxFf*Ro z?X2{l$fnQ(q&_)PlxMxT9$f;1a`ta2wT9?Dns8z8S80OCZA+;=p}8hFYIhxk8Phv- z5H*6{D1hc0^Rej1nqbU%q6uoW9Kv}zz4^vmjmBJVHD-o1hTDp8lVZ)8ScU6HoD&`H zlI?bBOsv9nnK;#qI^?KLMPoWzjcIX|#>myHCgjX)xttQqm{Y{5W*7q#*s0`98f1tG z?1MjtbAoEjQqGq~4ScK&d7dZ1O{wkE#JbPAST-ERMW_=nL%Lcsq?HxeCmI5no_l1L zal;jvW;SC!*qsRFe678p*7LP^I?C~Xa}=E31m^R$O5YIrf$}1J^@EPT6vv|PISOJ& z?Q7x5Wqs7-^55d<=y_X`_oNekjha;M6Gt$~zfAx~pU?+k1GYsO@S-$;Talx3%x=0^ zCk^m>rzuchwM&aVn`yBpgwJ*C`li$xo} z9>>x&qviN}nLu5SOA`aNs7&NRwff zborMt1zm%qVd&jNPqSKDp-2(;!_ka<1D&M1p8PM9&b&{j&q<+F_R_wxY`@wiiMME% zmNA06XiLi*sje-fhYP8i4H-4{am+2KI2ESJNaeGReizr;CeKjP8nmW;j(*8I}K zQTu}g(iq4}-_Em+4LQNPSP{~(2g8({Yd9@%@F;7X|3BmWJHN|xq&SbK>w~WrIwlJ{ zGHVXTJ8EwsvT<}JWt4woj(QM$v9;!4 z%gT2M-{Dv^ncOpK#71w9D}Q^Af3K_l^8|S(7c3IOZgw!4JxRH{f!29alH0SY2kBqS z_BkWAR_==ENo0i%=PQ&P3#Sx1rq`2C_Onz2Wh|SP{!03xQFLjm2m*jTxfmZe-Zp$y8)3|f+M_~r>O z@6WE;?4o6=jO?11=vPm_uj#ibF}vnZ61tLeKN#H4qmtmVgS64hEu!RcNn0U?#w%GQ z+y9Bk)gTMz_&=jnnHcL+`zd#Fg6lGvnlCWw6@xl~1lJ{s6Lkh{!igLZRjbZLm{^~R zjsuG$*UQBb!4Zh&SSA-orZRodH;Xsw0;AZ63v--|y1#(g*SO!|MWpC!+_W;o$xvRX z#zGuYsxX=hl|Q9L88sas5OqObHymdK63Ps>@QwXI@~ zIdWFHT$m|tF3=gVNraXhXU>%)e_=ahqa)>4=h ziWk7TW*hU0%$Fk@<72C18?#fKYKAeq46u~l=cpad=?6qN8@gN0oWuDP+R4>P-jN?E zZ_o7O*3SR4x^-Pu!NWCm1>8~AG@+@xl2@x@+t^du*o?AAHj1+6s4e7Wis&{&EWR7$ z0!Qsap2G)af%AVN&5?)Nw5FF5FBN#x+XQduZV5z6k3W(!UH15EiF;eCglUcBmC*eb zTM1hFw_AHIbzNa=|H1uO0IWU53Or4%8C8-EY_!Z}sv~r{aW4r9+hJI+LwH6EQ*}SF zS3r?|Vk;l>5S;Hztrqv=P_wgL`j``uPOm3`u8c*cO5>C|NL5Ob^36&0PU>R9soo$~ zL?ZV#g|3!Bby$rv$@>xGMI-pP7+*jwQdo^CvU!RaKUx4$>klhMRX@@M^O`0}UDzb4 zK~0is+a#$y+|eI#^`yQ@QvXM+vDnPT|E{_9U*%y(2U;DPktj!Kt}SEu+O*;FA9S>D zwTXA-`BcV!=3!lmcpyzIFv!`LlwvvRz<4t^g=bMNe=8P0=6qM+8oG9`o~VQ8?KT}c zL`5b#p8r>fI)GOIXl|Y&8O}c_8`!}42Vdw)@n}~3flx!O7YI-QMBMVs&dkk$SiW;@ zsi&C}jXYl#8>LN2URjYlzqqu* zFJds5>f2D+V%nw{WnG!gdhOlQ<0xnmN%1@%W<*7v_sU>;dqB)*ao!Qb=mwLSJ;=Bs4+rwh+qLRW= zL&P}!^zoj#Ql_ZF?WxN5lzEFvOWb9il7ga=OO>O`J$YVovA3Kcccr&*coZ%;qma^> z|McX0bqXROdA`6?SXAP1mz7hIEB6+8Dx#v5dkQ_}o|1fzL|JLdPb$5hymFG?AYhYlSwVz}p2q2C30#S|xcy^YG{ zf_=*gwmjGRgDY5BO;a_#^^p_O6B?c)X7VUFkX211(Ft^#PSH9OAsH#OHZ_CmpWjzT z8&$3yzJU~>x{hV3=RcNO1G;C1<;L-_;B~>S77b|L92{3I?k$n`DRX)=D0;x>W#Yj3 z)x5~G=rM{^bC7O}dV+Rn5royGr*GBG%^ayUMWST*L?Pc7<_eDN`|?OyhVhT=>e@0g zmEsvMkL+tW+Q*X`-eX<-KyD}AT%D&c33qIWwW00Il`b&8f>W@%u%A(pHE;N8h5bb`6BU*F2wiclQ2)r z*|*BZJv6kNDl`$Txubp7D%X~*^`yG7C2KADj!es-#ydAOW$M2>pF9& zkLWw%ValCuKkZvPNG`!s-t5av- z!x7(b35@;tVud)BwIlq*mc#cPLkl)@$`{M0bM>++ab$>sC~mS>*(LT#V^Ku?kt={) zv&DF@M%*i4c>B#Yy=m-@HwoF((j>upQ#5x}C?fqJz2afPzO|y9%#FIsSXT?q z|694R1eb9Q5^D0Y3tjAx^PIc51kx3ku(AQ+NSpH8hgw%!MB<`FtA5rvPplWC> zWp|udUusg>^>$X}wvtMBB!idoEuF5wIL(5*=@$il+S z)pa7C!&f3i;%R}8vmnH%e(uJ9FnxPyAOX7nRM|nV`1n*6sl#Q*PG)XOcJvSnjIv3x zWXCR%Q%%YaM{Nx@C3CDziAOXgqlCYYx*fTTSA0Y}aF1`2G|HyU{vB zAw6dkA0s1O{w>srDYu3*P(DMX-Yjy4%6cUBo;Sfza!G6xK7m(?o@*r~kya zM{&+mRJ!UUJ=I(qwtJB%J}P_ZcrG3{+(!J?_8!}HN9{p!kjf`06-V2)BRBPEjfbZV zrPSJo3b_VfM=3WPX!y3FMZ-m`Ce0ZlO+&;L@?Le>Nkxf->-PEFf;rWTK+=fX6@W%Y zb{kPK1A?>RVck45R5#q+a3}RAmyPI6uU|6%Y-3y(=kzBT^(}a$e<UJGRiGm~dz|J3SU_Xp%S+ zQ9N{xt!Q7{GwrM-e^4P;RR*Z{$oiyg3*Y7zX+7nLC+s0jA972}c7^5S+%WRYYUm0n5nd^7sE#-~Ow&~gy%nZuW#Of~<Z-zui}DhvD+>d%yhK!r#YGqw z9%Y@}h9(OaSXF6wv9U#=Pbf9wh~&aH0a)XPo{A0M6C391pfM7=JT`ohfI)|B1_I!k z&N5F|5H2hYt&~ytlAdyWiU zUFw4oHdX3l6E>`|ORC{!I>Q%Ugc1!tIx_T8sE_nQ1jv^_SUHle4om+?dj!Njx#KV= zqYAd8mTOk%SZmUJp^JKr?Qy3S7{;nN^NlXX#yID{x)_^V%rT5NPNOHd4*|>{u z4tP4*{G_w-cCz#OE=FBDj{j0S^Q+FrN(Yla?lAxCYy?v{<=a!tpE?^qrZD4z_U7GP zjQ_M}vfb^?TPaot!PCK9*u{9Fqe0}&e>0H^#SeRgv=!yh$ zMJMCg1m_;7@pdal8d{mVIvKu1=hIH(e|TYTU2Bf|W^40%rx9xH3^~bYM(#*5KksC$ zOL9KuG+s+);&+qHwVjOZZB3$YXv;J|v^78JWPH(%6WQ0!{KjcK=U|@A4)alBNMVKt zQp^YGYzLE6xT&K_{IyP#I3ISJq{8P;Y1+29!Suqx`{J%y*vat6_o4rf#hc%EG#0j` z^DA1K*OL`3o!@jcwwWfK++&*8b}|+uIDhMC+}Mhd)ve6ioW@J7oOe2n&k`B=Ezzv) zWGrj#{KIM7%USwd8+O%uZJcX58UIPsxruU_o%bZ4idy|s=qPk-&B?}xChvc5n#+@oV1o0eB;%=8CgE?i z;z%F0GVe;Jrx*F`tBK}qNyhzcOp*yEnMC$g(%n2XIuv(L+@iSuP>%i*Z#Hx=Zf@!P zq652&%Cc#`(}BJ9eFtM1uU|dZ%DlgW@k%Rapri3$9v&@fZEosd+}qmu97Sov(p3Ie zQ=Fu;Uh7~qBs1X;$>zr$jMv(-BRw>0>NTFhA^L+?U|2?_;cKWfJmM z;)%4-+}gackFk;pWp86=8v<@iGGFOqJf7ryypQo^GRys$Y`)#cSl-t8Ss&xUcEnxZ z&Ro#P__&?Z-`n`XLBRDX=DmH4RVmJAdUMVh#>ef=&w3j_ws+px+qk|X0joNi5A`-S zc62`8+t}`8P4+p>w|g54J2~rn8_#v-6gGD@@9k~e(1p`n-o?DVx3RYi(;Vnxe%RaC z(3Rz1>1w{x+j!_0W_#io^Y%W*f^MAlb=}NgdK({hW5qu2W*(rly0c-gbvONejMc}o zO-~+cKGes!y@yGbeb&RQC$oE+pY<`m>1l?Dt(QsKuShjXpM9w&>3P#}roXpQ+uOXc zw{Yt~YSqZCR}QDUx37ycKXDij#5uP+j633AkNdiv@dp>U+e~wf!+6|uu5%cn1eU33 zWj^aL?rL?`yAG~2be1a3&+Vwvob|lJc&!beeYcJIZ98Li65~%MnX4Vfo@A34R<|{Y z|NFN6iT+=X;Uf93sRZ7cK=1i%W&Wp!vAvaZTMuJt>pQ7<*0(W(J&ljsIG6P_g4~=w zm~6h(!>CVozSqOp(UySk+M56EVJvCqe5oh5sq|2?!~CO%@u9=HvZvwajJvv|ebI+=BY(_GWjc)SzEsq19E*VDMKGsk?i zv$?IOv8D^tuIpm{*u%KLE2p`-tGT;}@$fOMA?2H|r}1Vtll1(tn@K6%(cL5k_H;K% zub+=KNnOe%vWpAzS(E~8Z;LC*q$?P4@lQL9r&~~|-rK^Y-J9blyy-A}Evt4qj5o{{ zv|pD%5k5#TceOJPBsiaN7>g54f^SSTKX4dtx9&!Q-?lc_I*d(iOxl0Fjrk~LVG_$f zkYs*E*^|WbwaMm}4&#Glmf4kT?xyT%%ll8ZHMcpq@gnAj*oAt%S-)Rt2hBuiv01*l zi!Lf`r8gqgTr-^R*qTatL|3IkG#4`qma-26eCusJjZ~?5-kJ ztd))u%Q07WrPZhu5)-3^9J=$G_Ibr&Ho3$VxH63v;l%iu?v>P1e7duUT`@c-a9JAN zvzJKc_%e1+dbgyWQSm8SJm6Ct<8_KbPn-)K{NIi9f0jcpkqwBKM^cQOesrJnFY!u? zaHL*jBHh)J%Jfn|slLCo^8 zo6|%Z`Z2TP=x8b3ZIeq|dfY5BQWXpSlyf|;r!_-%pVq{;lXDIp)eGNl%q)0;;&|yi z!4Zh&_y@HYlpnJ=MzBe*yQSOVW{|WYZinNPgg$)pXAc?%I(lXBZPP-7Ktq3eZN>4!q^&@Es3`bF4|btzB`ujA<;D!)34 zyy22An#-eUXujkG=C7a*_7p*bF)fzey}=aZB|E@)awhji&q-_5X;SWG%m5T19~pVYe6#ZySwy zp)+ccG1g*uR2N7~b$w!_N&r@-E%SxGD4!N1^R2 zF{6h5MR3FQ4KFm@(3m$=Nhi6QHe>wTnOhpV^CJ9|6^(5D;`*i-;O2899S{TDuv=(= z%lkYYUBa>D09T9*EW;$9Xt`-L#{;?GN-@Tyfn9eR;HolCV`DkAWVQrOOblzEAzr!( z>Q8#A(IxuLy2Nls1lBMQ%NNSlU$)fixPnnX#2Z0QZ&RNYJz}9J&gca_>ZHRrMc5W| zNb{0V94es0ccRVcwVM51EvmQSy}=cbW7h}e*j10By>u0f-|S3dSGsiV_pvpU$ z3dxaQoySY_vgzil+^+E3qleOwx{gT$KfBkn3>S$CO~XEDU_)Wh6#e25xDTLQ4E5z( z>t$mW=9t^;fox>_HZ&uadcm6d= z|8#r(_cvF6x)oJCD>8%JOe2mL<)a~yvEriy@corIeykB?PP9W&_=6%dqZ+Y1Zt@zB zE2(9IJl_%-@8tw5>6~m@#Um(@W;ono9Px#sKa+m4)%q{(MOv*-BYOWW=}aKKWja~h zmxo)&VSlqdB8S8PdZWl5J%D~v)ymmg4&d;rt0- zOFeS0vM8L69ExjuN;%c=;3W|0f@xe79t=bcARVbv zA#*Z@kVUUHB3(5mzCJXMI2&$mxRF(Oi>o{(`%KJ|BqQefO-inl?yg$JOsxr+$QuXc?P9cXzj`-K$d z*4q`xrALv@-+Cy8BsRGG@3?64XG)LaJxUH=JMKRgY-Vlst^DEd2Kf)V>i3@M@Xh6p zy?&2e+m-K7m3G$Cty@&rX-%8b$XcvbQwyo$-eDSf@1hKfTrwAz_-Q1?*QCklrL@uU zd^5R+sHx-Y%F&O5GX<_}?iO8J%olyGlD*zRjuDh&UG*XbZl2(dWBGzSzO{7|$yV3x z=Tsd&agzhQ15n&%pzqV;0_zIiwL+*PiyZY{;xH&)f=U)u)5)+!%Q**Y>Q*s#)UB?P zBJxIpGevGn4tO|~GrCMn73$V=qCr_%l|@?x6nWB=lMyqg1KjJ0ck7ZxVjd{96ncf; z5q%$xt3=jN7t1O)Er-%r&8Fngf22Jkmjltc%10#HQ4_8TztwL!Xzav~WUZcb<)jUDITr~R>B`yet(K_B>jr}JU=1jU_{G-<91 z$AY3lFI{B3;U>BxxZz6HVlj6+;=MGq4bVC6evWr>BkVg=nN3YJnscKNQ0)jPA39IP zeAyC#vsc(5{xz)S$7%X;NyM9ex^h{hAg)7Rz`Yc8J=A*A2OlTVoyi*n_itn(^-`&n z;nYi=BJLi|@z35d&i|6&=7y)gm{`&s=ORi_yvduQWgdEu&er}xNzj~z>yUVFOnCOr z2sQ9KL^_dM`Ixa@Ht<||L<1ik2WI?l$f>g6uzbSeJvq%3v*;$(QJ$8``cm7E(^t>I z$zHtCvv3xV|1SGS_LJ@(GpA46B(8S_)^G!SwOp=uA{4b`cX0OP2{Jyh$8|y zd|jmJ46}-yPeFoMaq+$@@%);jz3key_;hY>@uiSg$v)Ckypui0zb26olH5yFv^hwd zaNd3(=Z%~S=%y8O)QUUDqD$)m?pYhRsp0Da%`FW4T@>m|j$9b#%ica#VW^e8ebWnr zqxN@fu)no7*q;!fpR2%z_2mdo{iYmaMP(f|`vQ&qCgQcy)>)$9kJj0((EwieW1O?t6>=TxBVAHONzuCB5uWNQ6$>zBtd_$!Q!c=;8KRto&LaS?vo+uD zu19INkK;8iYlpM@Ja!e`Fxn)$YegYYcF&cCAYykR0sQ=jeskyw;SN{iru-v5$Cg4F zBcGc{5Lu+3KjD{X>2=1x!p|c;$$xhg|583`{LBM9;}$M^vTGBT>FHN=;j6uoGC^97 z4Z;8V(Ll5nhk1b}cE$EzghMHtkBV^jFRq^~VE5~uKgP4U$i?$%of+b4Oh|stYg0q3 zhUa+L(2II?Zl7gc%%Q!8&l-5XC4h!)bb43#^f9!@odgB>1Vw65MQQ~-s$W^0SDs2w z(9_ERN=iz-sWUzFf&hNd!c!o{?XK6r_u%}$)%==NSz3MNETb}$9*d&s<#5*-ojAV3 zw~hYOW9fV~P(Oq+Npvn5iRy+MQaN(Z&7obCKaop^bZtZSuset*B1Ii6kzScd{Ui4e z)>~jM7j=CsO?l&8zE>*eQwoQ2`%;Ax!q9H>KqZR_qSJiBwksRO#zg72kY(kaL(ztO z9_}YH(p-T_F3OKwN=ki(jjp#OsuymlYc8rP$&NdGpOp@;2_jD#T@Ir{wydjW6IatBm&C*uSMZY9 zH!&}XiQBhWg9h0GvqJirF7|(pfbo)nxE7`_Ptl{kLNyc+w$U}T!Ir$RzcqpKjc-Sz za_|;)0<%a3R}-&6aL*pT2JwvS3OFBy4xv?|!LFvlN##Oa$H#0|nJOR~&x`MP!Ld(xT>*8^xQH0;PBlfJN4$+#aBQlqK};*|5@w{l3{z^FJG2u9sg})=s&PaGn2j;q)kU=Vw{z zz4=w*N+!R^FFddKEB;s+*7pwD3m4T;FzTp^I?u?tE7(LBb9zUnI<8lg%P)bF{*?j#Hr)f>e#9AD<&FoRVi`ZlUpS& zC1HMX*s~T*BK;ic2RclpU#>dellFy<=dm55!!n#t zUL~`H`qd~qvTumLzGcu{l2Fqseq0<|G@8D!W%Q-rDi!Ag>WZS`OyW2-W{YYT&rUjp zWZzY?4pKZyc09{2F>4ayor3+`BvEc!5+{fEDX}Q|Q7lgjKtiEs;yHyeB$Gnh zrslm$#o2Ac%Xzs%$sC}&kfQV*eSLh8^71^&%nYG!RubFymXh~4Eb{2{J<)o!6vT$H zz($V@;_a(sT2Nh%(gS!~T*T&`lT^T)QAsWC;jQo@5!eJulK2k9>;>WtQOg>|j5oSB z!Wf7Tw~W!J;|=i={b*3gb1iKg;*HeCAR+NaZyUUi4Ss?RexeP|tx@9;Z}e{r5)yB4 z327YSjRB28LgK@{MD*!+V_-C(j^d5MHuz8*e3%U``#|f-c;iefB#z^avuyB88+@b< zKFS6kZG*dP@N*mCy#CO_h{$t0s6)IlR_{h_;|+SjSd0*F(1Wm+!2KZeYhG@9I9y6U z#?w?g#%+fV@y2<2H@v-__E^3X)Ny?>-k7X+!`oNH-k9*Q-r-ls(8$H;paHdgPi)6D zsu>>({A`P~VSFZ#j7In#ft=O|-=}aMKVUc@4lY4R?EkEAYNnzBUobL^X;By-#0&pT zYJ|5Ic;7~NJB5oe44myK@IipcU0#DWj6tFg$CEt-emX*8zqi28XoT}UeTH#*qndiE zlDBHguM=kZ^}K;FLgBXn#=B=LT#pO&XQO*F?D7svzppQ`t$or=ZNjqq4JLj@k`2XhtAM1iMi*02Wrcvvj{S{wPh1s>@K zbq`%{!}EoWJU<590md`Bob*$;)=7_eG8L{Z;ITOeH{rdFNI$DfSPkKtLrTj3x7*0q z2|UvO@?3<&CpJ7k+u-fVkXY$wujac%fHu#M;IL{4Y@jPdPAF{zy zsOgEt(~I!lMy7Nk{pWcahjBLY1www56r%q;SL1M%jr<}Te1#4Ehzyd~)s%ibulsV3Hiu4vjycJheL!PXIvx?=)dl7rr8b%{K?QHrN z!&{zLQc+l1KHGhnr@X{dJRm>ca9=byyQIiFe(-pD_xzx&k~vx9C%K1C5bp%f8jxRF zTtFh}gGWWZ<89(tDW5)Yq8Za$uUl|I@|) zf&4#xxcEOpApCET*c&GPOH@b<5;4U;5qmHT4B>x6`Cqy?Be?{cE*R2&#f7mDwy(7MK9x8|DM~v}!CweLy6m{(L>F>nyQOg@je+%xkkit^p`V)?w{qANV*q->fyQjA9BdGoS!M^l1B z=pFEto-8T{li<84W?7R4xw9zD$xTla@BH_a%yGMO=S&*uCJhUUbLY&CXgV+|D+ZFa zqoxd?ch?VayDzP(qF3jaSCq0Y-g)jhX@+}D&V+L^bKDa~kDin@**!V)oSZBsoqR#8 zoXwK2zR%;#b{9x@+NGS1evVcu4NeUaFUuY>n*30ll{+?n(m=ONq>vH$MSw^Wmcqo= zfv(YKm9jCvE)g!c(NRW4DQ!82TBk>qTvh|V#SrxchHy$zF)$sQvTh;u=x;bgf8asW z+mLWNC8Y%(H-Beic4{;bQ~h14h+?(<9L z7SSgwxRsmj;rtsbdO_*pfkW+ISg#8>eHf#pQ2|5})rzV5Am52EOyrCTJI_6b+dAnm zc64c>+@F2j zXSK-bs19-PgpvtkqjJ`!k&(rgoZ^l)NQmn%&cse*81Q5V^-$%3XDW-bx=Gv(J_ zs29u2<+hysL*+KVD$gy-4)vY|?!5Byym{^t&s;ZE-b=l+A|->%PJuklSrz5`g3?O* z98N^GvP9Ohf+#5wd1hrHecB}ok1$6VKvruly&7qvvZ-^=qJA{0rJ`PKcJAo(bm2y- zlHSUSNrOpbpa4WwaJwgsaOctwd{a_cOjR~k#-&rv@t9_0>FhFYS;NDSs5B^UxEIIa zOO|qQS!KD$J*TMLTPZ$1L&IskUO>wf#!ULr1$Yr=&^`youcDvEFJ+Lz$@H5~KaF3( zAO*&+rk}=_Gf07X_#(N+pJb2%5->z4<)o=F#z5sY$1RnI; z$AF`rUjdGOqs4v^tbXeTIQoqrO5niq=(kaTqu)vaM}2NoIB)vWPy6jokgo>(QNYn} z>lAMF+g8A@1)i^f2mRJUt!J@asApTi(QhXKj^!;AaP(U);OMu@07t*w3OMS+>!uvo zjDGafe%l1{)quydK@`|O=h9Eh^KFbAcvC|^jq`1k9IWzVZR9Vrk*~3le-v=^=T^Yc zpPvJc{yYFU`jcNA$$?L!KZgO1{+t1L0madN;8(M9U>?+SIpC=06M&u!v1;AQ>W8xc zNB(mGNB#o9k-rvj)c;?ABmWbCBme7wBmX|Yk-r_SBXY3%r!(Nlp9VPc=K_xWa{x#E zuLT_W?*ttAp9dWIKTtTgpWMdja`Fk_{Q>_1c=)QXmj4Chk;iC5LKK)Ec}#_~-;k#} z$Rkg0z>()98=g}DFQ+uLp637$U-i;>HsJgLAdQa)9@Mh{p}iCz;6J2Kj7GIv}qUN!G7>~z_A}31UUAC;{nHha30`eL7z_mM|}j`~~*IO_8+z)_zKfTKPi0gn2F07rdVs*6ahKk9QD;Hb}3zze`{ zR|AfEE(aX-d;)OPvmS8Nb0^@aXDf9*lJ!SDhXam!P6r(ItO6YMya{mB^IpJF&leTW z^%U#x%YgR>zr6-L*lvFcINIAr-I!&ycM#xcugeCXVS`@PSwczE2{`hv1RVKa1RVK41swT9 zfR~ePy1hN5aBKgP;AAhze&JNwYWXCEvwtQ5ejLbS`RogLe~>@bhG!(mWB+n4;Hb|8 z8y*kHBTq5l$aA?34}Hi(1Z%y!32?NFKKUVn)jyAeJnFL^aMY*HhUWv2M?Zf8IO_9- z4G(>SBy1Pz)3Q?pM}1l=+-g@JkVkz^1|0P{&4wqdvrL!ygY?to?LHg)xGu5fud>1E zlR6?WKdu)|?i#_D(ymU|2l$PE-vc<-(`Nv$1o?LW$9Dd6z_FeG18{7g`>GoNS^u%X zKOOL!0Dl#5l#f$4+%eA$Am1BswCha3(XI;sN4q?Lqg~a2qg|^3M?KqiC*>$u^&9{= z>gfU;^_&Sf>UlZfsOJ*EFQ)W$d3YLd)U(sELd{0=-_rm`eX;>ZeWn7A`cwdp`rHjT z>azoI^v`#Iqdv*%)>HN~>eC%?)MqH*s81f?sLyqP7l1!k0*-pV2srBbA>gRzUcgb$ zcy*zI?Ls{V0FHW20UY%#2ORZW0yygVFThbx`qGRDtPkq>7T~DoZ-Aqo$M=fxpq^&~ zj(T1QIOaz}T z^xMle_y;!lKETng9|89ok#@sz934>Ld`Epw1040q037+V0Z0CPz>)u2z>)uUz>)tx zz>)uXz>$9^;K+XfaOD3LaO8LP7Vc@}pTU45f0hk?5#X3^KH!+{e8ADJy8y>@p8y>B zp938E-vb=^e*_%)+w_U}0r@)uj{K(rj{M^QNB-$Hcm?2??p1(ey0-$3={^NGrn|)k z-w8OTyBly!_YmNiZm;7be#3OnQg{nGjpNcR!28oV-M^m;JUFi@0C^lIUj{gilgn&) z7J@wL69gRfxygoS709DLj{%PQJZZ!8D#)WgZv&3{yl=y^59Cpw?*T`B4%+bi0XWW2 zJDwo(*P4&r07pH0DZC{`!+ab9@~G#TfTNz7Hat^69{n~QaMUN?hG!ngqdwJuqdqZ?M6CU}Gq-J~$sgfsLWSIL^n<2E35Y z>2xmy9LJdzfa5sxTEKCfc^BX~&fE(4SV%XWGnE4CiSzLX0mpgwR=`pJ&jCmMe+L}( zPvSyDfzw6(PXrwGKM!!!|53nEpRItSKA!`Q`Wyfp^-1PJLxJ@~eTD&!`b-79fa2)< zod-DTc{AXs=NiCK&*uS0JwE^(^=!d~n*!^PdiDn#^&Aa2>Nx{&)bk3!QBObMsOJNK zqn>X9j(X}x_*s9{Gnp$V1+IRx>8JgCg2K68rvrYn!kOo0z()a&c1;Hy?V1fZ+O-&P zwCmr1qg@{ZehcXH3*hK~lZ~Ok`r|mWFW|_Z4LJJE132gJav(&jue0IHo%Za4%8ndOZhl zO!pqZ(XJO1&g}qqL7L|!z`4oS_^ZG(3GgpL9>*;WfcFRa{Wd&phL8{i)(3go1CBhM z72cBMQJ*xBN1kDTBhQ&OJQsjG`ez#8=%1N3JXe7{>Qe(a>a*B}=RS}}eI5cF^?B5W zXDi4f&zpcF&$~7}UxPgI8~_}7ezM_79?H4iINv)0j{fPYaBIE~0D1KD5Wtb=bQ_*r zkVm_w0FHKDV#AXMcsbdp>(LcS!dy|#c?nSUr>lFT~1%FxL+b#Gmg@0the^vPB7F^r=wGIBA z1y6~SM88^a&C?=Tp6B+5^F`ysIz{91Ju38m6boLa_{UiA;}kx@g7f?4IZUzOn%`}~ z^?Q9Twcz@lbfp%&PVvvR;QC!~*I00!?jj4$pRwX_g9UHNj-qgz1)r|u@3G+Bm3-Za zGM@G`zmJx~OBS3zx5;6f1?QJ7b9m2!KcMjcSaAJby4@C>zaP!vzZQJA!hf{jKPmhV z3w~O>)FGCU!>$uu;BW+f>SN{wMu@71=sxlu;8~V z`78^r<;Pj@wMzbc3$Ep-S@11N-ebW(QTS{NUZeb6X~Dl$^7AdYPS3oN+i@muhjO8!O*euctsx8VO)_`Mcf z%Rgknw<-C@Ex49{#)9ur^7R({M}@y)!TCKl9NxCz{NWG|A6oFi3jfT4pQrGU1z(`> z0~Wl!(&rZou6g2AN2%+h_J2F6R-^fpDi&hwIe}z!znlv4xq#cr_qUP%2jF9YXS@yG z8Su#^25?L_N8!wa>5c##{ieEWp(m~n12Z1cKqtLAfbN&$e*rw*bkQiei`7i0ACJx5#SF4&SN^Q=cj-(r^ZiG{Whmt z4EQXCvt3-(v^;-~g9FRYrk}=F16~67HsIl^spa)}g!zX9{vq&SzBB+{3i9olfC6v0 z%xL}*3THjb0KX7$w0AD>a9(Jhs{ua)aNS=qKk9iq$e#)FD*#7(S1R1f^Bl-?8>02u z2srX=vEg|O@XLW`2jKaD>-XZaJ~)3#Pz?}AI}7CXbCisuJ{^?2)vmt4b2jkk@syQk zuno_-z>@(y=K+rSb%6~}G00~EPX*w}Q)R=m81M?j{Nw1H1dC>__66m;!IGA4ya= z`x$w3yTmxwJAD2+pU!DLPXr#69|$2gD9{hXY~V?Lu`MV z`yPNI$S?H6O@N~x9swNn)X)2~p4bk&3G&GQE#Sz{?}y{Sr?LEZ0=z$+)A`a(;hZj( z|A8Qn`SK5t$9$Oy_?5ta3*cz)U4Wy#PXmtjz7IIs`vc&}{|Dg6--QjOz#HTr1~~F( z0gn9R0Z0B>fFu7Bz>#Me;K=hB;K=g^;00uZ&c{z|@DSkGu6_r2KJc_r^G-gE?P{vR zxm;m;coN{)9-aa`Sgy_idF06k9C^mu@DzYNmh;O1?+vdViQQpbI6c|T+juoiHQJ-OeBmYRikss&j$bS*Y zBR|j4I9T=Mv^ZGxyhg$TN1p2d$8>K69OWMX9Oc&nj`H<@qrGnejyxX&jyxg2QT|83 zQ9c3sK}=V#)3blD-W_Wre=^{hu3pb(9!&Ra8~HJSqr6_vW*#gjmx4T|tFHrC)5U%q z<@Nf#Req@rzy98gRbF3DU>yCn9(d5tF9VMHya_n^VHe=YbHD~~0sS({w*?&2?F=}k zdlKNtqt|`eUc~V|MaZ86Jjk!d!_0&Ei|;i;{wsh7`EeZp`Imw`_FwvXg*Cs{fIRZ+ z^=y_$ejGoe{Hwr&^7^`m)!tnokMogAO)-Z$$+E& z!vRNrd@mEq=h(=f4>-#6`|q_rXqOjoOm{xu$P)k@<#8N{^7q-uuLd0Dp8*{CHv*3G z`a3{YKYwT=|25#~hu>`QWG1G-8IO?g_0uztBehdcaX$U;p9L*bYAm@~F>?fTKRI0gn710*>;#0Y~}o0mpRXY{p$3 zZ16sSW4fmSj_GCqj`BHxqx>|$QN9Rpl$T$jZ(QDZEs+C{ge*k8N>IO_8S;5eV!2RP2B z5}-Xteq47d06otFdE}o8IIgRd1CHwn3joJ;6?`8cuB+fWHtM+-cu-INE(!cd||=D-`&rxW0)Pa5E;&&7bFKKwls z4!kL#pDyQ50gigU1vu*YHQ=b{FMy+-PN=`A=h=Xxp4S47`rHXP>hl!fsLxA)qdvO; zM}3kK*gMicsLx=)3+TM|TMpo;=lOtRz2onba9}qf{|$g6|0)}Ni^91Y;C%lL!28oV zt>-(yGYRm0fENP(BjBjNqZJ8JuZorYh7;x;bs{qITu^RAvN?Ygq62RSn zKL|ML^CI9lZh24PT;2u)&rZOH0R9>9V0q*3v~XY^T<`i5a9r<-Z!N?{c|)FK6mI27 z1sr)!u;Doa$bK?wtrY`lr9bt#;}6B{Gin3*U=~_3HxQ z!TOaCcm;9kdRGHD^4|zJ^8XLu$p1RvD6ijJ$oivv$VUD7jPV(cmT)oiQPI9UMEF;aGZ?#;JOX!(>`99CG0|d zP5~VCnF2Wa?IyrcpGN>keO?9}^?46))Mr27s1LsH8ub~)8AX9Nn2-9tOKUz}1@frp zt$?GRD*;D6Hvo=$HUN%#_J(mO`t3}>QJ)I{M}0hiqdwJuqduzvM}6J}ynuYC>-%0C zTz?du%|rQK2?S8!VvXa669FGW=QMwRg)&9}hV8gBJmw5BX9EIF5U-1{}w?wf=Tjhm zGU!tWcz?h*+VJcEdF1&NaOC;YhUZt1N4w%|#%~EW<2M{vBM*N^kpue;{d0;9&uEZG zo^gO9&qN!ZVvtAwQ~-|tsj}g@3FJ|q+W|*??zZ7s5Avwbi-4m(n{9aT{p85A+lJ?B z8=gLGM7D_j4#%JTT}KYwUST~N1~}Fu7vRV<8F1ve1aRb;3pkFGmjjMG4*-rl&j60{ zF9DA7?*NYa<2cq&zR>;7v+NuS?4RrCr}1AIq`-K9ej4uv<3r@Z@hY~56G0yP@nXQS zAHNcC?8k2f9Q*Nlz{i4~cH`JKFwR6hj|Uv}#C2fQa~#N{o_IeY>UlHBqn^(Lj_v

    _^@Nezf;vz_CC56L8e?BsP=+Z&1&(0Z0C^fFnO%FGK#@Kpy#50gm-iE|E>zR=3_6wF&~e&;W-`TQJ+k}QJ>K^ zJePnx^5g@KJhNgBc3h1Zpa@pYj1RTplE#RpC-GHP1YXC?6UsE`nf&G-eUdcGN10Mhn`dL4Z z%XXn3oD5Ll4f+A^-#|b7zr7B#N$F#?_f^2r-ZvG_8?;wH7t1)>i{B$ddxt=~R6ucb zzT^E5n7`+PJodk(fFu76fFu7SfFu7pz>)t=z>)u3z>)tCz?;(Ec1R%ODX`yAz8m2A zbWZz6uM1h_2iVAu1{}u&mnhtt@A-gZzRv<4%=fE79{XS2{xd)Jzt`FD==CM5J`Vyv z>hp*V&qk0(eO>_^^}%&2v`ep3u|ApL|8Ic@+uI*(^l7Kof0!o&csc=&Jl$Zu2=y5Z z@@Ur?fTLX*Har)BJo4lLjy#1nJhgyhxm^M{mRr0YT>*Z01>|u&@DboBzZYKw zuyM<$$A~7XXgqggXJp@}uA9 z!Tv-&@wyD^*_s6@@CNnl066wXrvQ%pcGq#HfjrjJLcsGWZJqDsfJdzl1CBg+|0nX? z1oBu<9|j!zqwRoW`NVMr`e#4Lqkr(ZB=pb8&@UH&y`um}{&9dK|D}Ky0U0*?H7fFu8vfFnQl%gD11!DyvsOL-0D06u3Hk-ZPgXcLD>$A{2fRO>)8!wpD`ESiuPZSR_6t*h2m6IfKp*5O z2OR6sm4IVC!uz{W{stTQhXJnuyS4z1^>IJo$o~uAs80%Ua^P-es@RkNx~hG~^*s^{ zq5OGDhBqib5%5&C&pg?H_XT_z;Aw#02KaEmYXQ#yocmcFTxy5Y9iu_o<^rx|;I#0= zasX1*K9`etzy|})Wm*T#$?~d-i&LCO92i$cUL0R3{!4tE+ULzuz*W`>30qB@o|7V7*HVta9x)8R5sx4 zwJ>c90Pg_!Y`{ALz8G-UNe8{o!x;Z`+RuZ$Qw!7fCBQoYz6lo_+^7=U}#*YPDKZm8|KTzkkGC+Yhy~LjU z_cq|n|EW6nJK(7bPPW->eC3CV4D?XtltICsK>Ggnk zShKJq!wNj!yrSZYfrAP>g?U8oo|#usl)*MP9+?aAmR(W}8`H<1% zfa0v&vH6n*vN5Hc!x7~MX+KTMFD>)1DO^6%2c*ZeyRr1)438z~t6@!#AKS|2#E&W#7*REh zHjP+pN#(!BZAE2CanWU-;(3krjaBxex|P8bN+yiuhA&Ff7~K!`6x_7Qrd;M6buEo! z>AoV;+BdN`80gL#Hl;kTtjtp$U7T|V%Kjl=^)Bur>OR~tJBdiy%cc$~D{Hbls$x)s zJUe%Edb;RtD!h5#%8E&YNo1e^=5SZ#c264N&ZQq4CySi$x3v&8_E0*xlDq1WrL)V5 zJZ$ z>jOqjp^PpZ;C5eHRpqAqsVL=s-#gDeC(Rg;UpjlXr-X(vC8b`^fHC9GKb1V2f0;VI zw4`!CSvhrc46*er}BPd0yYt_)}GUJ-1~2&uvEh0u^7+T{!+Z&4^#E;$!-}p3_wQ zm#Fxd{>Wy;U!~&f`6uf?su}Uu$B3WRjQCq)#2?*^_F4_~{sqm5 zpBqE}3C)OqNsRcnHY2`%zc1>~>uy&2Qwigw^t6|DMW|Bgo5M6Bw;9og2CvaDrxj1U zUkdIYDz{w!dA%r69){P5PNZW_N-ZO(vxYH$cz8EzN2wLYPN6;KJlgo_6j#{K3k(pd zRr*%H==MO1PNAJx@fWN3xMs(3tnnAx#9z_G^q;kfze>f&HMdyluOm?8pT+)zAF_00 zEsyiBC;hDXcNQ5R%l@q@efBQ~tNkM=a;)@IK9aH0RAf#+m44Rr`F$IlzJ4zi?TYY= zN?(_Ejk7EUe&01?`Z{y?+z7dcYy6B@^;(+w9!B9V;N(qipc)gZ5>0}|Gb_ZOMlntGNQIu9!31Fk3UxN2WmiVb5(pR zuJcWATT{c!`_}whtm3oJF<9+yN%3Rl-v(v>3>BH}PotlBZ-d<@q7l?(>wMGOYi#1Dohc*om=A;2U&rU?A9%k}`B(Avb0wO?>OX!DF8vu9R1YyMSN_{U z{^h{_V@jRA_Up$geXIYR86-@B+YAg^Z;iDxrT$j`Wn@SRyk^RXj<2_4ZQ|#u_`M}f z_`lX)$LIHb@xIl6RVw}m7Qa~ix0vF`@?Y65nWVlS+e3$$^wa5U|JAGXt^S)ZQpQ)s zNFLCCt+xjFd4yQ{FIDj!mI0(y|2R4yOaJv>s1#Iu)_)ZJtok3X(zoh=4=+|w;CuQp zSoI&T;#>2-9WPc;u#Vq!e7&8i;wv>}B>I20ihnEl7lV$cv1t@h*slS#T_2J=sp?`r z+wY>E)&9#>`j%p1yvLI*3LWvL0y?&)zgX*UA=s-b{%ZTi|0|pHw-(Fz572oGR{KA*N&jGL z>FFvJpY7)?v8JC-`NNXd`d?NdQ$1kGKWqBa>3ppEQU7O?=I# zx9e4WYyMAF@pU>{FYEEY35b>dsp`fiZ718$_ebma8t3;Eu>HE6=yYbN^pDkm+R9QT z<1qAJ72hIeT&3b$aUEade^7j`B9`KBRIB(_y|n&1ey7$_7i;{rD!zVSqL#PDPoelN z>12i$P}||ke<`K}*nj!-)A6qIGeA}0XB8vp+RRx%ZG literal 0 HcmV?d00001 diff --git a/build/audio_kernel.target.mk b/build/audio_kernel.target.mk new file mode 100644 index 0000000..3f91123 --- /dev/null +++ b/build/audio_kernel.target.mk @@ -0,0 +1,162 @@ +# This file is generated by gyp; do not edit. + +TOOLSET := target +TARGET := audio_kernel +DEFS_Debug := \ + '-DNODE_GYP_MODULE_NAME=audio_kernel' \ + '-DUSING_UV_SHARED=1' \ + '-DUSING_V8_SHARED=1' \ + '-DV8_DEPRECATION_WARNINGS=1' \ + '-D_GLIBCXX_USE_CXX11_ABI=1' \ + '-D_FILE_OFFSET_BITS=64' \ + '-D_LARGEFILE_SOURCE' \ + '-D__STDC_FORMAT_MACROS' \ + '-DOPENSSL_NO_PINSHARED' \ + '-DOPENSSL_THREADS' \ + '-DNAPI_DISABLE_CPP_EXCEPTIONS' \ + '-DBUILDING_NODE_EXTENSION' \ + '-DDEBUG' \ + '-D_DEBUG' + +# Flags passed to all source files. +CFLAGS_Debug := \ + -fPIC \ + -pthread \ + -Wall \ + -Wextra \ + -Wno-unused-parameter \ + -m64 \ + -g \ + -O0 + +# Flags passed to only C files. +CFLAGS_C_Debug := + +# Flags passed to only C++ files. +CFLAGS_CC_Debug := \ + -fno-rtti \ + -fno-strict-aliasing \ + -std=gnu++20 \ + -std=c++17 \ + -O2 + +INCS_Debug := \ + -I/home/carry/.cache/node-gyp/24.13.0/include/node \ + -I/home/carry/.cache/node-gyp/24.13.0/src \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/config \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/openssl/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/uv/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/zlib \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/v8/include \ + -I/home/carry/myprj/hcaptcha/node_modules/node-addon-api + +DEFS_Release := \ + '-DNODE_GYP_MODULE_NAME=audio_kernel' \ + '-DUSING_UV_SHARED=1' \ + '-DUSING_V8_SHARED=1' \ + '-DV8_DEPRECATION_WARNINGS=1' \ + '-D_GLIBCXX_USE_CXX11_ABI=1' \ + '-D_FILE_OFFSET_BITS=64' \ + '-D_LARGEFILE_SOURCE' \ + '-D__STDC_FORMAT_MACROS' \ + '-DOPENSSL_NO_PINSHARED' \ + '-DOPENSSL_THREADS' \ + '-DNAPI_DISABLE_CPP_EXCEPTIONS' \ + '-DBUILDING_NODE_EXTENSION' + +# Flags passed to all source files. +CFLAGS_Release := \ + -fPIC \ + -pthread \ + -Wall \ + -Wextra \ + -Wno-unused-parameter \ + -m64 \ + -O3 \ + -fno-omit-frame-pointer + +# Flags passed to only C files. +CFLAGS_C_Release := + +# Flags passed to only C++ files. +CFLAGS_CC_Release := \ + -fno-rtti \ + -fno-strict-aliasing \ + -std=gnu++20 \ + -std=c++17 \ + -O2 + +INCS_Release := \ + -I/home/carry/.cache/node-gyp/24.13.0/include/node \ + -I/home/carry/.cache/node-gyp/24.13.0/src \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/config \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/openssl/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/uv/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/zlib \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/v8/include \ + -I/home/carry/myprj/hcaptcha/node_modules/node-addon-api + +OBJS := \ + $(obj).target/$(TARGET)/bin/audio_kernel.o + +# Add to the list of files we specially track dependencies for. +all_deps += $(OBJS) + +# CFLAGS et al overrides must be target-local. +# See "Target-specific Variable Values" in the GNU Make manual. +$(OBJS): TOOLSET := $(TOOLSET) +$(OBJS): GYP_CFLAGS := $(DEFS_$(BUILDTYPE)) $(INCS_$(BUILDTYPE)) $(CFLAGS_$(BUILDTYPE)) $(CFLAGS_C_$(BUILDTYPE)) +$(OBJS): GYP_CXXFLAGS := $(DEFS_$(BUILDTYPE)) $(INCS_$(BUILDTYPE)) $(CFLAGS_$(BUILDTYPE)) $(CFLAGS_CC_$(BUILDTYPE)) + +# Suffix rules, putting all outputs into $(obj). + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(srcdir)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +# Try building from generated source, too. + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(obj).$(TOOLSET)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(obj)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +# End of this set of suffix rules +### Rules for final target. +LDFLAGS_Debug := \ + -pthread \ + -rdynamic \ + -m64 + +LDFLAGS_Release := \ + -pthread \ + -rdynamic \ + -m64 + +LIBS := + +$(obj).target/audio_kernel.node: GYP_LDFLAGS := $(LDFLAGS_$(BUILDTYPE)) +$(obj).target/audio_kernel.node: LIBS := $(LIBS) +$(obj).target/audio_kernel.node: TOOLSET := $(TOOLSET) +$(obj).target/audio_kernel.node: $(OBJS) FORCE_DO_CMD + $(call do_cmd,solink_module) + +all_deps += $(obj).target/audio_kernel.node +# Add target alias +.PHONY: audio_kernel +audio_kernel: $(builddir)/audio_kernel.node + +# Copy this to the executable output path. +$(builddir)/audio_kernel.node: TOOLSET := $(TOOLSET) +$(builddir)/audio_kernel.node: $(obj).target/audio_kernel.node FORCE_DO_CMD + $(call do_cmd,copy) + +all_deps += $(builddir)/audio_kernel.node +# Short alias for building this executable. +.PHONY: audio_kernel.node +audio_kernel.node: $(obj).target/audio_kernel.node $(builddir)/audio_kernel.node + +# Add executable to "all" target. +.PHONY: all +all: $(builddir)/audio_kernel.node + diff --git a/build/binding.Makefile b/build/binding.Makefile new file mode 100644 index 0000000..e145b3c --- /dev/null +++ b/build/binding.Makefile @@ -0,0 +1,6 @@ +# This file is generated by gyp; do not edit. + +export builddir_name ?= ./build/. +.PHONY: all +all: + $(MAKE) transform_kernel pffft font_kernel fdlibm_ieee754 documentAll busy_wait audio_kernel diff --git a/build/busy_wait.target.mk b/build/busy_wait.target.mk new file mode 100644 index 0000000..ef502f5 --- /dev/null +++ b/build/busy_wait.target.mk @@ -0,0 +1,162 @@ +# This file is generated by gyp; do not edit. + +TOOLSET := target +TARGET := busy_wait +DEFS_Debug := \ + '-DNODE_GYP_MODULE_NAME=busy_wait' \ + '-DUSING_UV_SHARED=1' \ + '-DUSING_V8_SHARED=1' \ + '-DV8_DEPRECATION_WARNINGS=1' \ + '-D_GLIBCXX_USE_CXX11_ABI=1' \ + '-D_FILE_OFFSET_BITS=64' \ + '-D_LARGEFILE_SOURCE' \ + '-D__STDC_FORMAT_MACROS' \ + '-DOPENSSL_NO_PINSHARED' \ + '-DOPENSSL_THREADS' \ + '-DNAPI_DISABLE_CPP_EXCEPTIONS' \ + '-DBUILDING_NODE_EXTENSION' \ + '-DDEBUG' \ + '-D_DEBUG' + +# Flags passed to all source files. +CFLAGS_Debug := \ + -fPIC \ + -pthread \ + -Wall \ + -Wextra \ + -Wno-unused-parameter \ + -m64 \ + -g \ + -O0 + +# Flags passed to only C files. +CFLAGS_C_Debug := + +# Flags passed to only C++ files. +CFLAGS_CC_Debug := \ + -fno-rtti \ + -fno-strict-aliasing \ + -std=gnu++20 \ + -std=c++17 \ + -O2 + +INCS_Debug := \ + -I/home/carry/.cache/node-gyp/24.13.0/include/node \ + -I/home/carry/.cache/node-gyp/24.13.0/src \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/config \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/openssl/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/uv/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/zlib \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/v8/include \ + -I/home/carry/myprj/hcaptcha/node_modules/node-addon-api + +DEFS_Release := \ + '-DNODE_GYP_MODULE_NAME=busy_wait' \ + '-DUSING_UV_SHARED=1' \ + '-DUSING_V8_SHARED=1' \ + '-DV8_DEPRECATION_WARNINGS=1' \ + '-D_GLIBCXX_USE_CXX11_ABI=1' \ + '-D_FILE_OFFSET_BITS=64' \ + '-D_LARGEFILE_SOURCE' \ + '-D__STDC_FORMAT_MACROS' \ + '-DOPENSSL_NO_PINSHARED' \ + '-DOPENSSL_THREADS' \ + '-DNAPI_DISABLE_CPP_EXCEPTIONS' \ + '-DBUILDING_NODE_EXTENSION' + +# Flags passed to all source files. +CFLAGS_Release := \ + -fPIC \ + -pthread \ + -Wall \ + -Wextra \ + -Wno-unused-parameter \ + -m64 \ + -O3 \ + -fno-omit-frame-pointer + +# Flags passed to only C files. +CFLAGS_C_Release := + +# Flags passed to only C++ files. +CFLAGS_CC_Release := \ + -fno-rtti \ + -fno-strict-aliasing \ + -std=gnu++20 \ + -std=c++17 \ + -O2 + +INCS_Release := \ + -I/home/carry/.cache/node-gyp/24.13.0/include/node \ + -I/home/carry/.cache/node-gyp/24.13.0/src \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/config \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/openssl/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/uv/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/zlib \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/v8/include \ + -I/home/carry/myprj/hcaptcha/node_modules/node-addon-api + +OBJS := \ + $(obj).target/$(TARGET)/bin/busy_wait.o + +# Add to the list of files we specially track dependencies for. +all_deps += $(OBJS) + +# CFLAGS et al overrides must be target-local. +# See "Target-specific Variable Values" in the GNU Make manual. +$(OBJS): TOOLSET := $(TOOLSET) +$(OBJS): GYP_CFLAGS := $(DEFS_$(BUILDTYPE)) $(INCS_$(BUILDTYPE)) $(CFLAGS_$(BUILDTYPE)) $(CFLAGS_C_$(BUILDTYPE)) +$(OBJS): GYP_CXXFLAGS := $(DEFS_$(BUILDTYPE)) $(INCS_$(BUILDTYPE)) $(CFLAGS_$(BUILDTYPE)) $(CFLAGS_CC_$(BUILDTYPE)) + +# Suffix rules, putting all outputs into $(obj). + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(srcdir)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +# Try building from generated source, too. + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(obj).$(TOOLSET)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(obj)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +# End of this set of suffix rules +### Rules for final target. +LDFLAGS_Debug := \ + -pthread \ + -rdynamic \ + -m64 + +LDFLAGS_Release := \ + -pthread \ + -rdynamic \ + -m64 + +LIBS := + +$(obj).target/busy_wait.node: GYP_LDFLAGS := $(LDFLAGS_$(BUILDTYPE)) +$(obj).target/busy_wait.node: LIBS := $(LIBS) +$(obj).target/busy_wait.node: TOOLSET := $(TOOLSET) +$(obj).target/busy_wait.node: $(OBJS) FORCE_DO_CMD + $(call do_cmd,solink_module) + +all_deps += $(obj).target/busy_wait.node +# Add target alias +.PHONY: busy_wait +busy_wait: $(builddir)/busy_wait.node + +# Copy this to the executable output path. +$(builddir)/busy_wait.node: TOOLSET := $(TOOLSET) +$(builddir)/busy_wait.node: $(obj).target/busy_wait.node FORCE_DO_CMD + $(call do_cmd,copy) + +all_deps += $(builddir)/busy_wait.node +# Short alias for building this executable. +.PHONY: busy_wait.node +busy_wait.node: $(obj).target/busy_wait.node $(builddir)/busy_wait.node + +# Add executable to "all" target. +.PHONY: all +all: $(builddir)/busy_wait.node + diff --git a/build/config.gypi b/build/config.gypi new file mode 100644 index 0000000..cb53fd8 --- /dev/null +++ b/build/config.gypi @@ -0,0 +1,523 @@ +# Do not edit. File was generated by node-gyp's "configure" step +{ + "target_defaults": { + "cflags": [], + "configurations": { + "Debug": { + "v8_enable_v8_checks": 0, + "variables": {} + }, + "Release": { + "v8_enable_v8_checks": 1, + "variables": {} + } + }, + "default_configuration": "Release", + "defines": [], + "include_dirs": [], + "libraries": [] + }, + "variables": { + "asan": 0, + "clang": 0, + "control_flow_guard": "false", + "coverage": "false", + "dcheck_always_on": 0, + "debug_nghttp2": "false", + "debug_node": "false", + "enable_lto": "false", + "enable_pgo_generate": "false", + "enable_pgo_use": "false", + "error_on_warn": "false", + "force_dynamic_crt": 0, + "gas_version": "2.38", + "host_arch": "x64", + "icu_data_in": "../../deps/icu-tmp/icudt77l.dat", + "icu_endianness": "l", + "icu_gyp_path": "tools/icu/icu-generic.gyp", + "icu_path": "deps/icu-small", + "icu_small": "false", + "icu_ver_major": "77", + "libdir": "lib", + "llvm_version": "0.0", + "napi_build_version": "10", + "node_builtin_shareable_builtins": [ + "deps/cjs-module-lexer/lexer.js", + "deps/cjs-module-lexer/dist/lexer.js", + "deps/undici/undici.js", + "deps/amaro/dist/index.js" + ], + "node_byteorder": "little", + "node_cctest_sources": [ + "src/node_snapshot_stub.cc", + "test/cctest/inspector/test_network_requests_buffer.cc", + "test/cctest/inspector/test_node_protocol.cc", + "test/cctest/node_test_fixture.cc", + "test/cctest/test_aliased_buffer.cc", + "test/cctest/test_base64.cc", + "test/cctest/test_base_object_ptr.cc", + "test/cctest/test_cppgc.cc", + "test/cctest/test_crypto_clienthello.cc", + "test/cctest/test_dataqueue.cc", + "test/cctest/test_environment.cc", + "test/cctest/test_inspector_socket.cc", + "test/cctest/test_inspector_socket_server.cc", + "test/cctest/test_json_utils.cc", + "test/cctest/test_linked_binding.cc", + "test/cctest/test_lru_cache.cc", + "test/cctest/test_node_api.cc", + "test/cctest/test_node_crypto.cc", + "test/cctest/test_node_crypto_env.cc", + "test/cctest/test_node_postmortem_metadata.cc", + "test/cctest/test_node_task_runner.cc", + "test/cctest/test_path.cc", + "test/cctest/test_per_process.cc", + "test/cctest/test_platform.cc", + "test/cctest/test_quic_cid.cc", + "test/cctest/test_quic_error.cc", + "test/cctest/test_quic_tokens.cc", + "test/cctest/test_report.cc", + "test/cctest/test_sockaddr.cc", + "test/cctest/test_string_bytes.cc", + "test/cctest/test_traced_value.cc", + "test/cctest/test_util.cc", + "test/cctest/node_test_fixture.h" + ], + "node_debug_lib": "false", + "node_enable_d8": "false", + "node_enable_v8_vtunejit": "false", + "node_enable_v8windbg": "false", + "node_fipsinstall": "false", + "node_install_corepack": "true", + "node_install_npm": "true", + "node_library_files": [ + "lib/_http_agent.js", + "lib/_http_client.js", + "lib/_http_common.js", + "lib/_http_incoming.js", + "lib/_http_outgoing.js", + "lib/_http_server.js", + "lib/_stream_duplex.js", + "lib/_stream_passthrough.js", + "lib/_stream_readable.js", + "lib/_stream_transform.js", + "lib/_stream_wrap.js", + "lib/_stream_writable.js", + "lib/_tls_common.js", + "lib/_tls_wrap.js", + "lib/assert.js", + "lib/assert/strict.js", + "lib/async_hooks.js", + "lib/buffer.js", + "lib/child_process.js", + "lib/cluster.js", + "lib/console.js", + "lib/constants.js", + "lib/crypto.js", + "lib/dgram.js", + "lib/diagnostics_channel.js", + "lib/dns.js", + "lib/dns/promises.js", + "lib/domain.js", + "lib/events.js", + "lib/fs.js", + "lib/fs/promises.js", + "lib/http.js", + "lib/http2.js", + "lib/https.js", + "lib/inspector.js", + "lib/inspector/promises.js", + "lib/internal/abort_controller.js", + "lib/internal/assert.js", + "lib/internal/assert/assertion_error.js", + "lib/internal/assert/calltracker.js", + "lib/internal/assert/myers_diff.js", + "lib/internal/assert/utils.js", + "lib/internal/async_context_frame.js", + "lib/internal/async_hooks.js", + "lib/internal/async_local_storage/async_context_frame.js", + "lib/internal/async_local_storage/async_hooks.js", + "lib/internal/blob.js", + "lib/internal/blocklist.js", + "lib/internal/bootstrap/node.js", + "lib/internal/bootstrap/realm.js", + "lib/internal/bootstrap/shadow_realm.js", + "lib/internal/bootstrap/switches/does_not_own_process_state.js", + "lib/internal/bootstrap/switches/does_own_process_state.js", + "lib/internal/bootstrap/switches/is_main_thread.js", + "lib/internal/bootstrap/switches/is_not_main_thread.js", + "lib/internal/bootstrap/web/exposed-wildcard.js", + "lib/internal/bootstrap/web/exposed-window-or-worker.js", + "lib/internal/buffer.js", + "lib/internal/child_process.js", + "lib/internal/child_process/serialization.js", + "lib/internal/cli_table.js", + "lib/internal/cluster/child.js", + "lib/internal/cluster/primary.js", + "lib/internal/cluster/round_robin_handle.js", + "lib/internal/cluster/shared_handle.js", + "lib/internal/cluster/utils.js", + "lib/internal/cluster/worker.js", + "lib/internal/console/constructor.js", + "lib/internal/console/global.js", + "lib/internal/constants.js", + "lib/internal/crypto/aes.js", + "lib/internal/crypto/argon2.js", + "lib/internal/crypto/certificate.js", + "lib/internal/crypto/cfrg.js", + "lib/internal/crypto/chacha20_poly1305.js", + "lib/internal/crypto/cipher.js", + "lib/internal/crypto/diffiehellman.js", + "lib/internal/crypto/ec.js", + "lib/internal/crypto/hash.js", + "lib/internal/crypto/hashnames.js", + "lib/internal/crypto/hkdf.js", + "lib/internal/crypto/kem.js", + "lib/internal/crypto/keygen.js", + "lib/internal/crypto/keys.js", + "lib/internal/crypto/mac.js", + "lib/internal/crypto/ml_dsa.js", + "lib/internal/crypto/ml_kem.js", + "lib/internal/crypto/pbkdf2.js", + "lib/internal/crypto/random.js", + "lib/internal/crypto/rsa.js", + "lib/internal/crypto/scrypt.js", + "lib/internal/crypto/sig.js", + "lib/internal/crypto/util.js", + "lib/internal/crypto/webcrypto.js", + "lib/internal/crypto/webidl.js", + "lib/internal/crypto/x509.js", + "lib/internal/data_url.js", + "lib/internal/debugger/inspect.js", + "lib/internal/debugger/inspect_client.js", + "lib/internal/debugger/inspect_repl.js", + "lib/internal/dgram.js", + "lib/internal/dns/callback_resolver.js", + "lib/internal/dns/promises.js", + "lib/internal/dns/utils.js", + "lib/internal/encoding.js", + "lib/internal/error_serdes.js", + "lib/internal/errors.js", + "lib/internal/errors/error_source.js", + "lib/internal/event_target.js", + "lib/internal/events/abort_listener.js", + "lib/internal/events/symbols.js", + "lib/internal/file.js", + "lib/internal/fixed_queue.js", + "lib/internal/freelist.js", + "lib/internal/freeze_intrinsics.js", + "lib/internal/fs/cp/cp-sync.js", + "lib/internal/fs/cp/cp.js", + "lib/internal/fs/dir.js", + "lib/internal/fs/glob.js", + "lib/internal/fs/promises.js", + "lib/internal/fs/read/context.js", + "lib/internal/fs/recursive_watch.js", + "lib/internal/fs/rimraf.js", + "lib/internal/fs/streams.js", + "lib/internal/fs/sync_write_stream.js", + "lib/internal/fs/utils.js", + "lib/internal/fs/watchers.js", + "lib/internal/heap_utils.js", + "lib/internal/histogram.js", + "lib/internal/http.js", + "lib/internal/http2/compat.js", + "lib/internal/http2/core.js", + "lib/internal/http2/util.js", + "lib/internal/inspector/network.js", + "lib/internal/inspector/network_http.js", + "lib/internal/inspector/network_http2.js", + "lib/internal/inspector/network_resources.js", + "lib/internal/inspector/network_undici.js", + "lib/internal/inspector_async_hook.js", + "lib/internal/inspector_network_tracking.js", + "lib/internal/js_stream_socket.js", + "lib/internal/legacy/processbinding.js", + "lib/internal/linkedlist.js", + "lib/internal/locks.js", + "lib/internal/main/check_syntax.js", + "lib/internal/main/embedding.js", + "lib/internal/main/eval_stdin.js", + "lib/internal/main/eval_string.js", + "lib/internal/main/inspect.js", + "lib/internal/main/mksnapshot.js", + "lib/internal/main/print_help.js", + "lib/internal/main/prof_process.js", + "lib/internal/main/repl.js", + "lib/internal/main/run_main_module.js", + "lib/internal/main/test_runner.js", + "lib/internal/main/watch_mode.js", + "lib/internal/main/worker_thread.js", + "lib/internal/mime.js", + "lib/internal/modules/cjs/loader.js", + "lib/internal/modules/customization_hooks.js", + "lib/internal/modules/esm/assert.js", + "lib/internal/modules/esm/create_dynamic_module.js", + "lib/internal/modules/esm/formats.js", + "lib/internal/modules/esm/get_format.js", + "lib/internal/modules/esm/hooks.js", + "lib/internal/modules/esm/initialize_import_meta.js", + "lib/internal/modules/esm/load.js", + "lib/internal/modules/esm/loader.js", + "lib/internal/modules/esm/module_job.js", + "lib/internal/modules/esm/module_map.js", + "lib/internal/modules/esm/resolve.js", + "lib/internal/modules/esm/shared_constants.js", + "lib/internal/modules/esm/translators.js", + "lib/internal/modules/esm/utils.js", + "lib/internal/modules/esm/worker.js", + "lib/internal/modules/helpers.js", + "lib/internal/modules/package_json_reader.js", + "lib/internal/modules/run_main.js", + "lib/internal/modules/typescript.js", + "lib/internal/navigator.js", + "lib/internal/net.js", + "lib/internal/options.js", + "lib/internal/per_context/domexception.js", + "lib/internal/per_context/messageport.js", + "lib/internal/per_context/primordials.js", + "lib/internal/perf/event_loop_delay.js", + "lib/internal/perf/event_loop_utilization.js", + "lib/internal/perf/nodetiming.js", + "lib/internal/perf/observe.js", + "lib/internal/perf/performance.js", + "lib/internal/perf/performance_entry.js", + "lib/internal/perf/resource_timing.js", + "lib/internal/perf/timerify.js", + "lib/internal/perf/usertiming.js", + "lib/internal/perf/utils.js", + "lib/internal/priority_queue.js", + "lib/internal/process/execution.js", + "lib/internal/process/finalization.js", + "lib/internal/process/per_thread.js", + "lib/internal/process/permission.js", + "lib/internal/process/pre_execution.js", + "lib/internal/process/promises.js", + "lib/internal/process/report.js", + "lib/internal/process/signal.js", + "lib/internal/process/task_queues.js", + "lib/internal/process/warning.js", + "lib/internal/process/worker_thread_only.js", + "lib/internal/promise_hooks.js", + "lib/internal/querystring.js", + "lib/internal/quic/quic.js", + "lib/internal/quic/state.js", + "lib/internal/quic/stats.js", + "lib/internal/quic/symbols.js", + "lib/internal/readline/callbacks.js", + "lib/internal/readline/emitKeypressEvents.js", + "lib/internal/readline/interface.js", + "lib/internal/readline/promises.js", + "lib/internal/readline/utils.js", + "lib/internal/repl.js", + "lib/internal/repl/await.js", + "lib/internal/repl/history.js", + "lib/internal/repl/utils.js", + "lib/internal/socket_list.js", + "lib/internal/socketaddress.js", + "lib/internal/source_map/prepare_stack_trace.js", + "lib/internal/source_map/source_map.js", + "lib/internal/source_map/source_map_cache.js", + "lib/internal/source_map/source_map_cache_map.js", + "lib/internal/stream_base_commons.js", + "lib/internal/streams/add-abort-signal.js", + "lib/internal/streams/compose.js", + "lib/internal/streams/destroy.js", + "lib/internal/streams/duplex.js", + "lib/internal/streams/duplexify.js", + "lib/internal/streams/duplexpair.js", + "lib/internal/streams/end-of-stream.js", + "lib/internal/streams/fast-utf8-stream.js", + "lib/internal/streams/from.js", + "lib/internal/streams/lazy_transform.js", + "lib/internal/streams/legacy.js", + "lib/internal/streams/operators.js", + "lib/internal/streams/passthrough.js", + "lib/internal/streams/pipeline.js", + "lib/internal/streams/readable.js", + "lib/internal/streams/state.js", + "lib/internal/streams/transform.js", + "lib/internal/streams/utils.js", + "lib/internal/streams/writable.js", + "lib/internal/test/binding.js", + "lib/internal/test/transfer.js", + "lib/internal/test_runner/assert.js", + "lib/internal/test_runner/coverage.js", + "lib/internal/test_runner/harness.js", + "lib/internal/test_runner/mock/loader.js", + "lib/internal/test_runner/mock/mock.js", + "lib/internal/test_runner/mock/mock_timers.js", + "lib/internal/test_runner/reporter/dot.js", + "lib/internal/test_runner/reporter/junit.js", + "lib/internal/test_runner/reporter/lcov.js", + "lib/internal/test_runner/reporter/rerun.js", + "lib/internal/test_runner/reporter/spec.js", + "lib/internal/test_runner/reporter/tap.js", + "lib/internal/test_runner/reporter/utils.js", + "lib/internal/test_runner/reporter/v8-serializer.js", + "lib/internal/test_runner/runner.js", + "lib/internal/test_runner/snapshot.js", + "lib/internal/test_runner/test.js", + "lib/internal/test_runner/tests_stream.js", + "lib/internal/test_runner/utils.js", + "lib/internal/timers.js", + "lib/internal/tls/secure-context.js", + "lib/internal/trace_events_async_hooks.js", + "lib/internal/tty.js", + "lib/internal/url.js", + "lib/internal/util.js", + "lib/internal/util/colors.js", + "lib/internal/util/comparisons.js", + "lib/internal/util/debuglog.js", + "lib/internal/util/diff.js", + "lib/internal/util/inspect.js", + "lib/internal/util/inspector.js", + "lib/internal/util/parse_args/parse_args.js", + "lib/internal/util/parse_args/utils.js", + "lib/internal/util/trace_sigint.js", + "lib/internal/util/types.js", + "lib/internal/v8/startup_snapshot.js", + "lib/internal/v8_prof_polyfill.js", + "lib/internal/v8_prof_processor.js", + "lib/internal/validators.js", + "lib/internal/vm.js", + "lib/internal/vm/module.js", + "lib/internal/wasm_web_api.js", + "lib/internal/watch_mode/files_watcher.js", + "lib/internal/watchdog.js", + "lib/internal/webidl.js", + "lib/internal/webstorage.js", + "lib/internal/webstreams/adapters.js", + "lib/internal/webstreams/compression.js", + "lib/internal/webstreams/encoding.js", + "lib/internal/webstreams/queuingstrategies.js", + "lib/internal/webstreams/readablestream.js", + "lib/internal/webstreams/transfer.js", + "lib/internal/webstreams/transformstream.js", + "lib/internal/webstreams/util.js", + "lib/internal/webstreams/writablestream.js", + "lib/internal/worker.js", + "lib/internal/worker/clone_dom_exception.js", + "lib/internal/worker/io.js", + "lib/internal/worker/js_transferable.js", + "lib/internal/worker/messaging.js", + "lib/module.js", + "lib/net.js", + "lib/os.js", + "lib/path.js", + "lib/path/posix.js", + "lib/path/win32.js", + "lib/perf_hooks.js", + "lib/process.js", + "lib/punycode.js", + "lib/querystring.js", + "lib/quic.js", + "lib/readline.js", + "lib/readline/promises.js", + "lib/repl.js", + "lib/sea.js", + "lib/sqlite.js", + "lib/stream.js", + "lib/stream/consumers.js", + "lib/stream/promises.js", + "lib/stream/web.js", + "lib/string_decoder.js", + "lib/sys.js", + "lib/test.js", + "lib/test/reporters.js", + "lib/timers.js", + "lib/timers/promises.js", + "lib/tls.js", + "lib/trace_events.js", + "lib/tty.js", + "lib/url.js", + "lib/util.js", + "lib/util/types.js", + "lib/v8.js", + "lib/vm.js", + "lib/wasi.js", + "lib/worker_threads.js", + "lib/zlib.js" + ], + "node_module_version": 137, + "node_no_browser_globals": "false", + "node_prefix": "/", + "node_quic": "false", + "node_release_urlbase": "https://nodejs.org/download/release/", + "node_section_ordering_info": "", + "node_shared": "false", + "node_shared_ada": "false", + "node_shared_brotli": "false", + "node_shared_cares": "false", + "node_shared_http_parser": "false", + "node_shared_libuv": "false", + "node_shared_nghttp2": "false", + "node_shared_nghttp3": "false", + "node_shared_ngtcp2": "false", + "node_shared_openssl": "false", + "node_shared_simdjson": "false", + "node_shared_simdutf": "false", + "node_shared_sqlite": "false", + "node_shared_uvwasi": "false", + "node_shared_zlib": "false", + "node_shared_zstd": "false", + "node_tag": "", + "node_target_type": "executable", + "node_use_amaro": "true", + "node_use_bundled_v8": "true", + "node_use_node_code_cache": "true", + "node_use_node_snapshot": "true", + "node_use_openssl": "true", + "node_use_sqlite": "true", + "node_use_v8_platform": "true", + "node_with_ltcg": "false", + "node_without_node_options": "false", + "node_write_snapshot_as_array_literals": "false", + "openssl_is_fips": "false", + "openssl_quic": "false", + "ossfuzz": "false", + "shlib_suffix": "so.137", + "single_executable_application": "true", + "suppress_all_error_on_warn": "false", + "target_arch": "x64", + "ubsan": 0, + "use_ccache_win": 0, + "use_prefix_to_find_headers": "false", + "v8_enable_31bit_smis_on_64bit_arch": 0, + "v8_enable_extensible_ro_snapshot": 0, + "v8_enable_external_code_space": 0, + "v8_enable_gdbjit": 0, + "v8_enable_hugepage": 0, + "v8_enable_i18n_support": 1, + "v8_enable_inspector": 1, + "v8_enable_javascript_promise_hooks": 1, + "v8_enable_lite_mode": 0, + "v8_enable_maglev": 1, + "v8_enable_object_print": 1, + "v8_enable_pointer_compression": 0, + "v8_enable_pointer_compression_shared_cage": 0, + "v8_enable_sandbox": 0, + "v8_enable_short_builtin_calls": 1, + "v8_enable_wasm_simd256_revec": 1, + "v8_enable_webassembly": 1, + "v8_optimized_debug": 1, + "v8_promise_internal_field_count": 1, + "v8_random_seed": 0, + "v8_trace_maps": 0, + "v8_use_siphash": 1, + "want_separate_host_toolset": 0, + "nodedir": "/home/carry/.cache/node-gyp/24.13.0", + "python": "/usr/bin/python3", + "standalone_static_library": 1, + "global_prefix": "/home/carry/.nvm/versions/node/v24.13.0", + "node_gyp": "/home/carry/.nvm/versions/node/v24.13.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js", + "user_agent": "npm/11.6.2 node/v24.13.0 linux x64 workspaces/false", + "prefix": "/home/carry/.nvm/versions/node/v24.13.0", + "npm_version": "11.6.2", + "init_module": "/home/carry/.npm-init.js", + "globalconfig": "/home/carry/.nvm/versions/node/v24.13.0/etc/npmrc", + "local_prefix": "/home/carry/myprj/hcaptcha", + "cache": "/home/carry/.npm", + "userconfig": "/home/carry/.npmrc" + } +} diff --git a/build/documentAll.target.mk b/build/documentAll.target.mk new file mode 100644 index 0000000..5138bdb --- /dev/null +++ b/build/documentAll.target.mk @@ -0,0 +1,158 @@ +# This file is generated by gyp; do not edit. + +TOOLSET := target +TARGET := documentAll +DEFS_Debug := \ + '-DNODE_GYP_MODULE_NAME=documentAll' \ + '-DUSING_UV_SHARED=1' \ + '-DUSING_V8_SHARED=1' \ + '-DV8_DEPRECATION_WARNINGS=1' \ + '-D_GLIBCXX_USE_CXX11_ABI=1' \ + '-D_FILE_OFFSET_BITS=64' \ + '-D_LARGEFILE_SOURCE' \ + '-D__STDC_FORMAT_MACROS' \ + '-DOPENSSL_NO_PINSHARED' \ + '-DOPENSSL_THREADS' \ + '-DNAPI_DISABLE_CPP_EXCEPTIONS' \ + '-DBUILDING_NODE_EXTENSION' \ + '-DDEBUG' \ + '-D_DEBUG' + +# Flags passed to all source files. +CFLAGS_Debug := \ + -fPIC \ + -pthread \ + -Wall \ + -Wextra \ + -Wno-unused-parameter \ + -m64 \ + -g \ + -O0 + +# Flags passed to only C files. +CFLAGS_C_Debug := + +# Flags passed to only C++ files. +CFLAGS_CC_Debug := \ + -fno-rtti \ + -fno-strict-aliasing \ + -std=gnu++20 + +INCS_Debug := \ + -I/home/carry/.cache/node-gyp/24.13.0/include/node \ + -I/home/carry/.cache/node-gyp/24.13.0/src \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/config \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/openssl/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/uv/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/zlib \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/v8/include \ + -I/home/carry/myprj/hcaptcha/node_modules/node-addon-api + +DEFS_Release := \ + '-DNODE_GYP_MODULE_NAME=documentAll' \ + '-DUSING_UV_SHARED=1' \ + '-DUSING_V8_SHARED=1' \ + '-DV8_DEPRECATION_WARNINGS=1' \ + '-D_GLIBCXX_USE_CXX11_ABI=1' \ + '-D_FILE_OFFSET_BITS=64' \ + '-D_LARGEFILE_SOURCE' \ + '-D__STDC_FORMAT_MACROS' \ + '-DOPENSSL_NO_PINSHARED' \ + '-DOPENSSL_THREADS' \ + '-DNAPI_DISABLE_CPP_EXCEPTIONS' \ + '-DBUILDING_NODE_EXTENSION' + +# Flags passed to all source files. +CFLAGS_Release := \ + -fPIC \ + -pthread \ + -Wall \ + -Wextra \ + -Wno-unused-parameter \ + -m64 \ + -O3 \ + -fno-omit-frame-pointer + +# Flags passed to only C files. +CFLAGS_C_Release := + +# Flags passed to only C++ files. +CFLAGS_CC_Release := \ + -fno-rtti \ + -fno-strict-aliasing \ + -std=gnu++20 + +INCS_Release := \ + -I/home/carry/.cache/node-gyp/24.13.0/include/node \ + -I/home/carry/.cache/node-gyp/24.13.0/src \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/config \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/openssl/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/uv/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/zlib \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/v8/include \ + -I/home/carry/myprj/hcaptcha/node_modules/node-addon-api + +OBJS := \ + $(obj).target/$(TARGET)/bin/documentAll.o + +# Add to the list of files we specially track dependencies for. +all_deps += $(OBJS) + +# CFLAGS et al overrides must be target-local. +# See "Target-specific Variable Values" in the GNU Make manual. +$(OBJS): TOOLSET := $(TOOLSET) +$(OBJS): GYP_CFLAGS := $(DEFS_$(BUILDTYPE)) $(INCS_$(BUILDTYPE)) $(CFLAGS_$(BUILDTYPE)) $(CFLAGS_C_$(BUILDTYPE)) +$(OBJS): GYP_CXXFLAGS := $(DEFS_$(BUILDTYPE)) $(INCS_$(BUILDTYPE)) $(CFLAGS_$(BUILDTYPE)) $(CFLAGS_CC_$(BUILDTYPE)) + +# Suffix rules, putting all outputs into $(obj). + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(srcdir)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +# Try building from generated source, too. + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(obj).$(TOOLSET)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(obj)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +# End of this set of suffix rules +### Rules for final target. +LDFLAGS_Debug := \ + -pthread \ + -rdynamic \ + -m64 + +LDFLAGS_Release := \ + -pthread \ + -rdynamic \ + -m64 + +LIBS := + +$(obj).target/documentAll.node: GYP_LDFLAGS := $(LDFLAGS_$(BUILDTYPE)) +$(obj).target/documentAll.node: LIBS := $(LIBS) +$(obj).target/documentAll.node: TOOLSET := $(TOOLSET) +$(obj).target/documentAll.node: $(OBJS) FORCE_DO_CMD + $(call do_cmd,solink_module) + +all_deps += $(obj).target/documentAll.node +# Add target alias +.PHONY: documentAll +documentAll: $(builddir)/documentAll.node + +# Copy this to the executable output path. +$(builddir)/documentAll.node: TOOLSET := $(TOOLSET) +$(builddir)/documentAll.node: $(obj).target/documentAll.node FORCE_DO_CMD + $(call do_cmd,copy) + +all_deps += $(builddir)/documentAll.node +# Short alias for building this executable. +.PHONY: documentAll.node +documentAll.node: $(obj).target/documentAll.node $(builddir)/documentAll.node + +# Add executable to "all" target. +.PHONY: all +all: $(builddir)/documentAll.node + diff --git a/build/fdlibm_ieee754.target.mk b/build/fdlibm_ieee754.target.mk new file mode 100644 index 0000000..5716f68 --- /dev/null +++ b/build/fdlibm_ieee754.target.mk @@ -0,0 +1,164 @@ +# This file is generated by gyp; do not edit. + +TOOLSET := target +TARGET := fdlibm_ieee754 +DEFS_Debug := \ + '-DNODE_GYP_MODULE_NAME=fdlibm_ieee754' \ + '-DUSING_UV_SHARED=1' \ + '-DUSING_V8_SHARED=1' \ + '-DV8_DEPRECATION_WARNINGS=1' \ + '-D_GLIBCXX_USE_CXX11_ABI=1' \ + '-D_FILE_OFFSET_BITS=64' \ + '-D_LARGEFILE_SOURCE' \ + '-D__STDC_FORMAT_MACROS' \ + '-DOPENSSL_NO_PINSHARED' \ + '-DOPENSSL_THREADS' \ + '-DNAPI_DISABLE_CPP_EXCEPTIONS' \ + '-DBUILDING_NODE_EXTENSION' \ + '-DDEBUG' \ + '-D_DEBUG' + +# Flags passed to all source files. +CFLAGS_Debug := \ + -fPIC \ + -pthread \ + -Wall \ + -Wextra \ + -Wno-unused-parameter \ + -m64 \ + -g \ + -O0 + +# Flags passed to only C files. +CFLAGS_C_Debug := + +# Flags passed to only C++ files. +CFLAGS_CC_Debug := \ + -fno-rtti \ + -fno-strict-aliasing \ + -std=gnu++20 \ + -std=c++17 \ + -O2 \ + -fno-fast-math + +INCS_Debug := \ + -I/home/carry/.cache/node-gyp/24.13.0/include/node \ + -I/home/carry/.cache/node-gyp/24.13.0/src \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/config \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/openssl/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/uv/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/zlib \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/v8/include \ + -I/home/carry/myprj/hcaptcha/node_modules/node-addon-api + +DEFS_Release := \ + '-DNODE_GYP_MODULE_NAME=fdlibm_ieee754' \ + '-DUSING_UV_SHARED=1' \ + '-DUSING_V8_SHARED=1' \ + '-DV8_DEPRECATION_WARNINGS=1' \ + '-D_GLIBCXX_USE_CXX11_ABI=1' \ + '-D_FILE_OFFSET_BITS=64' \ + '-D_LARGEFILE_SOURCE' \ + '-D__STDC_FORMAT_MACROS' \ + '-DOPENSSL_NO_PINSHARED' \ + '-DOPENSSL_THREADS' \ + '-DNAPI_DISABLE_CPP_EXCEPTIONS' \ + '-DBUILDING_NODE_EXTENSION' + +# Flags passed to all source files. +CFLAGS_Release := \ + -fPIC \ + -pthread \ + -Wall \ + -Wextra \ + -Wno-unused-parameter \ + -m64 \ + -O3 \ + -fno-omit-frame-pointer + +# Flags passed to only C files. +CFLAGS_C_Release := + +# Flags passed to only C++ files. +CFLAGS_CC_Release := \ + -fno-rtti \ + -fno-strict-aliasing \ + -std=gnu++20 \ + -std=c++17 \ + -O2 \ + -fno-fast-math + +INCS_Release := \ + -I/home/carry/.cache/node-gyp/24.13.0/include/node \ + -I/home/carry/.cache/node-gyp/24.13.0/src \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/config \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/openssl/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/uv/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/zlib \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/v8/include \ + -I/home/carry/myprj/hcaptcha/node_modules/node-addon-api + +OBJS := \ + $(obj).target/$(TARGET)/bin/fdlibm_ieee754.o + +# Add to the list of files we specially track dependencies for. +all_deps += $(OBJS) + +# CFLAGS et al overrides must be target-local. +# See "Target-specific Variable Values" in the GNU Make manual. +$(OBJS): TOOLSET := $(TOOLSET) +$(OBJS): GYP_CFLAGS := $(DEFS_$(BUILDTYPE)) $(INCS_$(BUILDTYPE)) $(CFLAGS_$(BUILDTYPE)) $(CFLAGS_C_$(BUILDTYPE)) +$(OBJS): GYP_CXXFLAGS := $(DEFS_$(BUILDTYPE)) $(INCS_$(BUILDTYPE)) $(CFLAGS_$(BUILDTYPE)) $(CFLAGS_CC_$(BUILDTYPE)) + +# Suffix rules, putting all outputs into $(obj). + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(srcdir)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +# Try building from generated source, too. + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(obj).$(TOOLSET)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(obj)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +# End of this set of suffix rules +### Rules for final target. +LDFLAGS_Debug := \ + -pthread \ + -rdynamic \ + -m64 + +LDFLAGS_Release := \ + -pthread \ + -rdynamic \ + -m64 + +LIBS := + +$(obj).target/fdlibm_ieee754.node: GYP_LDFLAGS := $(LDFLAGS_$(BUILDTYPE)) +$(obj).target/fdlibm_ieee754.node: LIBS := $(LIBS) +$(obj).target/fdlibm_ieee754.node: TOOLSET := $(TOOLSET) +$(obj).target/fdlibm_ieee754.node: $(OBJS) FORCE_DO_CMD + $(call do_cmd,solink_module) + +all_deps += $(obj).target/fdlibm_ieee754.node +# Add target alias +.PHONY: fdlibm_ieee754 +fdlibm_ieee754: $(builddir)/fdlibm_ieee754.node + +# Copy this to the executable output path. +$(builddir)/fdlibm_ieee754.node: TOOLSET := $(TOOLSET) +$(builddir)/fdlibm_ieee754.node: $(obj).target/fdlibm_ieee754.node FORCE_DO_CMD + $(call do_cmd,copy) + +all_deps += $(builddir)/fdlibm_ieee754.node +# Short alias for building this executable. +.PHONY: fdlibm_ieee754.node +fdlibm_ieee754.node: $(obj).target/fdlibm_ieee754.node $(builddir)/fdlibm_ieee754.node + +# Add executable to "all" target. +.PHONY: all +all: $(builddir)/fdlibm_ieee754.node + diff --git a/build/font_kernel.target.mk b/build/font_kernel.target.mk new file mode 100644 index 0000000..a2707dd --- /dev/null +++ b/build/font_kernel.target.mk @@ -0,0 +1,162 @@ +# This file is generated by gyp; do not edit. + +TOOLSET := target +TARGET := font_kernel +DEFS_Debug := \ + '-DNODE_GYP_MODULE_NAME=font_kernel' \ + '-DUSING_UV_SHARED=1' \ + '-DUSING_V8_SHARED=1' \ + '-DV8_DEPRECATION_WARNINGS=1' \ + '-D_GLIBCXX_USE_CXX11_ABI=1' \ + '-D_FILE_OFFSET_BITS=64' \ + '-D_LARGEFILE_SOURCE' \ + '-D__STDC_FORMAT_MACROS' \ + '-DOPENSSL_NO_PINSHARED' \ + '-DOPENSSL_THREADS' \ + '-DNAPI_DISABLE_CPP_EXCEPTIONS' \ + '-DBUILDING_NODE_EXTENSION' \ + '-DDEBUG' \ + '-D_DEBUG' + +# Flags passed to all source files. +CFLAGS_Debug := \ + -fPIC \ + -pthread \ + -Wall \ + -Wextra \ + -Wno-unused-parameter \ + -m64 \ + -g \ + -O0 + +# Flags passed to only C files. +CFLAGS_C_Debug := + +# Flags passed to only C++ files. +CFLAGS_CC_Debug := \ + -fno-rtti \ + -fno-strict-aliasing \ + -std=gnu++20 \ + -std=c++17 \ + -O2 + +INCS_Debug := \ + -I/home/carry/.cache/node-gyp/24.13.0/include/node \ + -I/home/carry/.cache/node-gyp/24.13.0/src \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/config \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/openssl/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/uv/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/zlib \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/v8/include \ + -I/home/carry/myprj/hcaptcha/node_modules/node-addon-api + +DEFS_Release := \ + '-DNODE_GYP_MODULE_NAME=font_kernel' \ + '-DUSING_UV_SHARED=1' \ + '-DUSING_V8_SHARED=1' \ + '-DV8_DEPRECATION_WARNINGS=1' \ + '-D_GLIBCXX_USE_CXX11_ABI=1' \ + '-D_FILE_OFFSET_BITS=64' \ + '-D_LARGEFILE_SOURCE' \ + '-D__STDC_FORMAT_MACROS' \ + '-DOPENSSL_NO_PINSHARED' \ + '-DOPENSSL_THREADS' \ + '-DNAPI_DISABLE_CPP_EXCEPTIONS' \ + '-DBUILDING_NODE_EXTENSION' + +# Flags passed to all source files. +CFLAGS_Release := \ + -fPIC \ + -pthread \ + -Wall \ + -Wextra \ + -Wno-unused-parameter \ + -m64 \ + -O3 \ + -fno-omit-frame-pointer + +# Flags passed to only C files. +CFLAGS_C_Release := + +# Flags passed to only C++ files. +CFLAGS_CC_Release := \ + -fno-rtti \ + -fno-strict-aliasing \ + -std=gnu++20 \ + -std=c++17 \ + -O2 + +INCS_Release := \ + -I/home/carry/.cache/node-gyp/24.13.0/include/node \ + -I/home/carry/.cache/node-gyp/24.13.0/src \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/config \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/openssl/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/uv/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/zlib \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/v8/include \ + -I/home/carry/myprj/hcaptcha/node_modules/node-addon-api + +OBJS := \ + $(obj).target/$(TARGET)/bin/font_kernel.o + +# Add to the list of files we specially track dependencies for. +all_deps += $(OBJS) + +# CFLAGS et al overrides must be target-local. +# See "Target-specific Variable Values" in the GNU Make manual. +$(OBJS): TOOLSET := $(TOOLSET) +$(OBJS): GYP_CFLAGS := $(DEFS_$(BUILDTYPE)) $(INCS_$(BUILDTYPE)) $(CFLAGS_$(BUILDTYPE)) $(CFLAGS_C_$(BUILDTYPE)) +$(OBJS): GYP_CXXFLAGS := $(DEFS_$(BUILDTYPE)) $(INCS_$(BUILDTYPE)) $(CFLAGS_$(BUILDTYPE)) $(CFLAGS_CC_$(BUILDTYPE)) + +# Suffix rules, putting all outputs into $(obj). + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(srcdir)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +# Try building from generated source, too. + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(obj).$(TOOLSET)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(obj)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +# End of this set of suffix rules +### Rules for final target. +LDFLAGS_Debug := \ + -pthread \ + -rdynamic \ + -m64 + +LDFLAGS_Release := \ + -pthread \ + -rdynamic \ + -m64 + +LIBS := + +$(obj).target/font_kernel.node: GYP_LDFLAGS := $(LDFLAGS_$(BUILDTYPE)) +$(obj).target/font_kernel.node: LIBS := $(LIBS) +$(obj).target/font_kernel.node: TOOLSET := $(TOOLSET) +$(obj).target/font_kernel.node: $(OBJS) FORCE_DO_CMD + $(call do_cmd,solink_module) + +all_deps += $(obj).target/font_kernel.node +# Add target alias +.PHONY: font_kernel +font_kernel: $(builddir)/font_kernel.node + +# Copy this to the executable output path. +$(builddir)/font_kernel.node: TOOLSET := $(TOOLSET) +$(builddir)/font_kernel.node: $(obj).target/font_kernel.node FORCE_DO_CMD + $(call do_cmd,copy) + +all_deps += $(builddir)/font_kernel.node +# Short alias for building this executable. +.PHONY: font_kernel.node +font_kernel.node: $(obj).target/font_kernel.node $(builddir)/font_kernel.node + +# Add executable to "all" target. +.PHONY: all +all: $(builddir)/font_kernel.node + diff --git a/build/pffft.target.mk b/build/pffft.target.mk new file mode 100644 index 0000000..4bdb82f --- /dev/null +++ b/build/pffft.target.mk @@ -0,0 +1,176 @@ +# This file is generated by gyp; do not edit. + +TOOLSET := target +TARGET := pffft +DEFS_Debug := \ + '-DNODE_GYP_MODULE_NAME=pffft' \ + '-DUSING_UV_SHARED=1' \ + '-DUSING_V8_SHARED=1' \ + '-DV8_DEPRECATION_WARNINGS=1' \ + '-D_GLIBCXX_USE_CXX11_ABI=1' \ + '-D_FILE_OFFSET_BITS=64' \ + '-D_LARGEFILE_SOURCE' \ + '-D__STDC_FORMAT_MACROS' \ + '-DOPENSSL_NO_PINSHARED' \ + '-DOPENSSL_THREADS' \ + '-DNAPI_DISABLE_CPP_EXCEPTIONS' \ + '-DBUILDING_NODE_EXTENSION' \ + '-DDEBUG' \ + '-D_DEBUG' + +# Flags passed to all source files. +CFLAGS_Debug := \ + -fPIC \ + -pthread \ + -Wall \ + -Wextra \ + -Wno-unused-parameter \ + -O3 \ + -ffast-math \ + -m64 \ + -g \ + -O0 + +# Flags passed to only C files. +CFLAGS_C_Debug := + +# Flags passed to only C++ files. +CFLAGS_CC_Debug := \ + -fno-rtti \ + -fno-strict-aliasing \ + -std=gnu++20 \ + -std=c++17 \ + -O3 + +INCS_Debug := \ + -I/home/carry/.cache/node-gyp/24.13.0/include/node \ + -I/home/carry/.cache/node-gyp/24.13.0/src \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/config \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/openssl/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/uv/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/zlib \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/v8/include \ + -I/home/carry/myprj/hcaptcha/node_modules/node-addon-api + +DEFS_Release := \ + '-DNODE_GYP_MODULE_NAME=pffft' \ + '-DUSING_UV_SHARED=1' \ + '-DUSING_V8_SHARED=1' \ + '-DV8_DEPRECATION_WARNINGS=1' \ + '-D_GLIBCXX_USE_CXX11_ABI=1' \ + '-D_FILE_OFFSET_BITS=64' \ + '-D_LARGEFILE_SOURCE' \ + '-D__STDC_FORMAT_MACROS' \ + '-DOPENSSL_NO_PINSHARED' \ + '-DOPENSSL_THREADS' \ + '-DNAPI_DISABLE_CPP_EXCEPTIONS' \ + '-DBUILDING_NODE_EXTENSION' + +# Flags passed to all source files. +CFLAGS_Release := \ + -fPIC \ + -pthread \ + -Wall \ + -Wextra \ + -Wno-unused-parameter \ + -O3 \ + -ffast-math \ + -m64 \ + -O3 \ + -fno-omit-frame-pointer + +# Flags passed to only C files. +CFLAGS_C_Release := + +# Flags passed to only C++ files. +CFLAGS_CC_Release := \ + -fno-rtti \ + -fno-strict-aliasing \ + -std=gnu++20 \ + -std=c++17 \ + -O3 + +INCS_Release := \ + -I/home/carry/.cache/node-gyp/24.13.0/include/node \ + -I/home/carry/.cache/node-gyp/24.13.0/src \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/config \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/openssl/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/uv/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/zlib \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/v8/include \ + -I/home/carry/myprj/hcaptcha/node_modules/node-addon-api + +OBJS := \ + $(obj).target/$(TARGET)/bin/pffft.o \ + $(obj).target/$(TARGET)/bin/pffft_wrapper.o + +# Add to the list of files we specially track dependencies for. +all_deps += $(OBJS) + +# CFLAGS et al overrides must be target-local. +# See "Target-specific Variable Values" in the GNU Make manual. +$(OBJS): TOOLSET := $(TOOLSET) +$(OBJS): GYP_CFLAGS := $(DEFS_$(BUILDTYPE)) $(INCS_$(BUILDTYPE)) $(CFLAGS_$(BUILDTYPE)) $(CFLAGS_C_$(BUILDTYPE)) +$(OBJS): GYP_CXXFLAGS := $(DEFS_$(BUILDTYPE)) $(INCS_$(BUILDTYPE)) $(CFLAGS_$(BUILDTYPE)) $(CFLAGS_CC_$(BUILDTYPE)) + +# Suffix rules, putting all outputs into $(obj). + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(srcdir)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(srcdir)/%.c FORCE_DO_CMD + @$(call do_cmd,cc,1) + +# Try building from generated source, too. + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(obj).$(TOOLSET)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(obj).$(TOOLSET)/%.c FORCE_DO_CMD + @$(call do_cmd,cc,1) + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(obj)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(obj)/%.c FORCE_DO_CMD + @$(call do_cmd,cc,1) + +# End of this set of suffix rules +### Rules for final target. +LDFLAGS_Debug := \ + -pthread \ + -rdynamic \ + -m64 + +LDFLAGS_Release := \ + -pthread \ + -rdynamic \ + -m64 + +LIBS := + +$(obj).target/pffft.node: GYP_LDFLAGS := $(LDFLAGS_$(BUILDTYPE)) +$(obj).target/pffft.node: LIBS := $(LIBS) +$(obj).target/pffft.node: TOOLSET := $(TOOLSET) +$(obj).target/pffft.node: $(OBJS) FORCE_DO_CMD + $(call do_cmd,solink_module) + +all_deps += $(obj).target/pffft.node +# Add target alias +.PHONY: pffft +pffft: $(builddir)/pffft.node + +# Copy this to the executable output path. +$(builddir)/pffft.node: TOOLSET := $(TOOLSET) +$(builddir)/pffft.node: $(obj).target/pffft.node FORCE_DO_CMD + $(call do_cmd,copy) + +all_deps += $(builddir)/pffft.node +# Short alias for building this executable. +.PHONY: pffft.node +pffft.node: $(obj).target/pffft.node $(builddir)/pffft.node + +# Add executable to "all" target. +.PHONY: all +all: $(builddir)/pffft.node + diff --git a/build/transform_kernel.target.mk b/build/transform_kernel.target.mk new file mode 100644 index 0000000..744cf5d --- /dev/null +++ b/build/transform_kernel.target.mk @@ -0,0 +1,162 @@ +# This file is generated by gyp; do not edit. + +TOOLSET := target +TARGET := transform_kernel +DEFS_Debug := \ + '-DNODE_GYP_MODULE_NAME=transform_kernel' \ + '-DUSING_UV_SHARED=1' \ + '-DUSING_V8_SHARED=1' \ + '-DV8_DEPRECATION_WARNINGS=1' \ + '-D_GLIBCXX_USE_CXX11_ABI=1' \ + '-D_FILE_OFFSET_BITS=64' \ + '-D_LARGEFILE_SOURCE' \ + '-D__STDC_FORMAT_MACROS' \ + '-DOPENSSL_NO_PINSHARED' \ + '-DOPENSSL_THREADS' \ + '-DNAPI_DISABLE_CPP_EXCEPTIONS' \ + '-DBUILDING_NODE_EXTENSION' \ + '-DDEBUG' \ + '-D_DEBUG' + +# Flags passed to all source files. +CFLAGS_Debug := \ + -fPIC \ + -pthread \ + -Wall \ + -Wextra \ + -Wno-unused-parameter \ + -m64 \ + -g \ + -O0 + +# Flags passed to only C files. +CFLAGS_C_Debug := + +# Flags passed to only C++ files. +CFLAGS_CC_Debug := \ + -fno-rtti \ + -fno-strict-aliasing \ + -std=gnu++20 \ + -std=c++17 \ + -O2 + +INCS_Debug := \ + -I/home/carry/.cache/node-gyp/24.13.0/include/node \ + -I/home/carry/.cache/node-gyp/24.13.0/src \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/config \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/openssl/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/uv/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/zlib \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/v8/include \ + -I/home/carry/myprj/hcaptcha/node_modules/node-addon-api + +DEFS_Release := \ + '-DNODE_GYP_MODULE_NAME=transform_kernel' \ + '-DUSING_UV_SHARED=1' \ + '-DUSING_V8_SHARED=1' \ + '-DV8_DEPRECATION_WARNINGS=1' \ + '-D_GLIBCXX_USE_CXX11_ABI=1' \ + '-D_FILE_OFFSET_BITS=64' \ + '-D_LARGEFILE_SOURCE' \ + '-D__STDC_FORMAT_MACROS' \ + '-DOPENSSL_NO_PINSHARED' \ + '-DOPENSSL_THREADS' \ + '-DNAPI_DISABLE_CPP_EXCEPTIONS' \ + '-DBUILDING_NODE_EXTENSION' + +# Flags passed to all source files. +CFLAGS_Release := \ + -fPIC \ + -pthread \ + -Wall \ + -Wextra \ + -Wno-unused-parameter \ + -m64 \ + -O3 \ + -fno-omit-frame-pointer + +# Flags passed to only C files. +CFLAGS_C_Release := + +# Flags passed to only C++ files. +CFLAGS_CC_Release := \ + -fno-rtti \ + -fno-strict-aliasing \ + -std=gnu++20 \ + -std=c++17 \ + -O2 + +INCS_Release := \ + -I/home/carry/.cache/node-gyp/24.13.0/include/node \ + -I/home/carry/.cache/node-gyp/24.13.0/src \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/config \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/openssl/openssl/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/uv/include \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/zlib \ + -I/home/carry/.cache/node-gyp/24.13.0/deps/v8/include \ + -I/home/carry/myprj/hcaptcha/node_modules/node-addon-api + +OBJS := \ + $(obj).target/$(TARGET)/bin/transform_kernel.o + +# Add to the list of files we specially track dependencies for. +all_deps += $(OBJS) + +# CFLAGS et al overrides must be target-local. +# See "Target-specific Variable Values" in the GNU Make manual. +$(OBJS): TOOLSET := $(TOOLSET) +$(OBJS): GYP_CFLAGS := $(DEFS_$(BUILDTYPE)) $(INCS_$(BUILDTYPE)) $(CFLAGS_$(BUILDTYPE)) $(CFLAGS_C_$(BUILDTYPE)) +$(OBJS): GYP_CXXFLAGS := $(DEFS_$(BUILDTYPE)) $(INCS_$(BUILDTYPE)) $(CFLAGS_$(BUILDTYPE)) $(CFLAGS_CC_$(BUILDTYPE)) + +# Suffix rules, putting all outputs into $(obj). + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(srcdir)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +# Try building from generated source, too. + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(obj).$(TOOLSET)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +$(obj).$(TOOLSET)/$(TARGET)/%.o: $(obj)/%.cc FORCE_DO_CMD + @$(call do_cmd,cxx,1) + +# End of this set of suffix rules +### Rules for final target. +LDFLAGS_Debug := \ + -pthread \ + -rdynamic \ + -m64 + +LDFLAGS_Release := \ + -pthread \ + -rdynamic \ + -m64 + +LIBS := + +$(obj).target/transform_kernel.node: GYP_LDFLAGS := $(LDFLAGS_$(BUILDTYPE)) +$(obj).target/transform_kernel.node: LIBS := $(LIBS) +$(obj).target/transform_kernel.node: TOOLSET := $(TOOLSET) +$(obj).target/transform_kernel.node: $(OBJS) FORCE_DO_CMD + $(call do_cmd,solink_module) + +all_deps += $(obj).target/transform_kernel.node +# Add target alias +.PHONY: transform_kernel +transform_kernel: $(builddir)/transform_kernel.node + +# Copy this to the executable output path. +$(builddir)/transform_kernel.node: TOOLSET := $(TOOLSET) +$(builddir)/transform_kernel.node: $(obj).target/transform_kernel.node FORCE_DO_CMD + $(call do_cmd,copy) + +all_deps += $(builddir)/transform_kernel.node +# Short alias for building this executable. +.PHONY: transform_kernel.node +transform_kernel.node: $(obj).target/transform_kernel.node $(builddir)/transform_kernel.node + +# Add executable to "all" target. +.PHONY: all +all: $(builddir)/transform_kernel.node +