Upload Kmake

This commit is contained in:
Gorochu
2026-05-26 23:36:42 -07:00
parent ba051b2f74
commit 555ec72358
41615 changed files with 13344630 additions and 1 deletions

View File

@ -0,0 +1,24 @@
# © 2021 and later: Unicode, Inc. and others.
# License & terms of use: http://www.unicode.org/copyright.html
# This file defines Bazel targets for the ICU4C "stubdata" library header and source files.
load("@rules_cc//cc:defs.bzl", "cc_library")
package(
default_visibility = ["//visibility:public"],
)
# When compiling code in the `common` dir, the constant
# `U_COMMON_IMPLEMENTATION` needs to be defined. See
# https://unicode-org.github.io/icu/userguide/howtouseicu#c-with-your-own-build-system .
cc_library(
name = "stubdata",
srcs = ["stubdata.cpp"],
hdrs = ["stubdata.h"],
deps = ["//icu4c/source/common:headers"],
local_defines = [
"U_COMMON_IMPLEMENTATION",
],
)

View File

@ -0,0 +1,52 @@
// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html
/******************************************************************************
*
* Copyright (C) 2001, International Business Machines
* Corporation and others. All Rights Reserved.
*
*******************************************************************************
* file name: stubdata.cpp
*
* Define initialized data that will build into a valid, but empty
* ICU data library. Used to bootstrap the ICU build, which has these
* dependencies:
* ICU Common library depends on ICU data
* ICU data requires data building tools.
* ICU data building tools require the ICU common library.
*
* The stub data library (for which this file is the source) is sufficient
* for running the data building tools.
*/
#include "stubdata.h"
extern "C" U_EXPORT const ICU_Data_Header U_ICUDATA_ENTRY_POINT alignas(16) = {
32, /* headerSize */
0xda, /* magic1, (see struct MappedData in udata.c) */
0x27, /* magic2 */
{ /*UDataInfo */
sizeof(UDataInfo), /* size */
0, /* reserved */
#if U_IS_BIG_ENDIAN
1,
#else
0,
#endif
U_CHARSET_FAMILY,
sizeof(char16_t),
0, /* reserved */
{0x54, 0x6f, 0x43, 0x50}, /* data format identifier: "ToCP" */
{1, 0, 0, 0}, /* format version major, minor, milli, micro */
{0, 0, 0, 0} /* dataVersion */
},
{ 's', 't', 'u', 'b', 'd', 'a', 't', 'a' }, /* Padding[8] */
0, /* count */
0, /* Reserved */
{ /* TOC structure */
0 , 0 /* name and data entries. Count says there are none, */
/* but put one in just in case. */
}
};

View File

@ -0,0 +1,51 @@
// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html
/******************************************************************************
*
* Copyright (C) 2001, International Business Machines
* Corporation and others. All Rights Reserved.
*
*******************************************************************************
* file name: stubdata.h
*
* This header file is intended to be internal and only included in the
* accompanying implementation file. This file declares a single entry
* point for visibility of tools like TAPI.
*
* Define initialized data that will build into a valid, but empty
* ICU data library. Used to bootstrap the ICU build, which has these
* dependencies:
* ICU Common library depends on ICU data
* ICU data requires data building tools.
* ICU data building tools require the ICU common library.
*
* The stub data library (for which this file is the source) is sufficient
* for running the data building tools.
*/
#ifndef __STUBDATA_H__
#define __STUBDATA_H__
#include "unicode/utypes.h"
#include "unicode/udata.h"
#include "unicode/uversion.h"
typedef struct alignas(16) {
uint16_t headerSize;
uint8_t magic1, magic2;
UDataInfo info;
char padding[8];
uint32_t count, reserved;
/*
const struct {
const char *const name;
const void *const data;
} toc[1];
*/
uint64_t fakeNameAndData[2]; /* TODO: Change this header type from */
/* pointerTOC to OffsetTOC. */
} ICU_Data_Header;
extern "C" U_EXPORT const ICU_Data_Header U_ICUDATA_ENTRY_POINT;
#endif /* __STUBDATA_H__ */