tree: rewrite

Signed-off-by: AuxXxilium <info@auxxxilium.tech>
This commit is contained in:
AuxXxilium 2024-04-04 18:12:04 +02:00
parent 3490b217e7
commit 23a1f4db51
16 changed files with 718 additions and 127 deletions

56
.github/workflows/build.yml vendored Normal file
View File

@ -0,0 +1,56 @@
name: build
on:
workflow_dispatch:
inputs:
tag:
description: "tag"
required: false
type: string
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
target: [geminilake-7.1]
steps:
- name: Checkout
uses: actions/checkout@main
- name: Init Env
run: |
git config --global user.email "github-actions[bot]@users.noreply.github.com"
git config --global user.name "github-actions[bot]"
sudo timedatectl set-timezone "Asia/Shanghai"
- name: Checkout Synology Community Source and Docker Image
run: |
docker pull ghcr.io/synocommunity/spksrc
git clone --depth=1 https://github.com/SynoCommunity/spksrc.git
cp -rf cross/* spksrc/cross
cp -rf native/* spksrc/native
cp -rf spk/* spksrc/spk
- name: Build Package
run: |
ROOT_PATH="${{ github.workspace }}"
MAKE_ARCH="arch-${{ matrix.target }}"
docker run -v ${ROOT_PATH}/spksrc:/spksrc -w /spksrc/spk/open-vm-tools ghcr.io/synocommunity/spksrc make ${MAKE_ARCH}
- name: Upload to Artifacts
if: inputs.tag == ''
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.target }}
path: |
spksrc/packages/*.spk
retention-days: 5
- name: Release
if: inputs.tag != ''
uses: softprops/action-gh-release@v2
with:
tag_name: ${{ inputs.tag }}
files: spksrc/packages/*.spk

View File

@ -1,66 +0,0 @@
name: Build image
on:
release:
types: [published]
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@main
# Install dependencies
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y libelf-dev moreutils glibc-source libc-dev-bin build-essential
# Build incremental
- name: Build image
id: build
run: |
unset DOCKER_HOST
rm -rf ~/tmp/
mkdir -p ~/tmp/
git clone https://github.com/SynoCommunity/spksrc ~/tmp/spksrc
docker pull ghcr.io/synocommunity/spksrc
git clone https://github.com/AuxXxilium/synology-dsm-open-vm-tools.git ~/tmp/open-vm-tools
cp -r ~/tmp/open-vm-tools/* ~/tmp/spksrc/
cp -r /usr/bin/sponge ~/tmp/spksrc/
cp -f docker.sh ~/tmp/spksrc/
docker run -i -v ~/tmp/spksrc:/spksrc ghcr.io/synocommunity/spksrc /spksrc/docker.sh
cp -f ~/tmp/spksrc/packages/*.spk /tmp
cp -r /spksrc/sponge /usr/bin/
cd /spksrc/spk/open-vm-tools/
make arch-apollolake-7.1
make arch-broadwell-7.1
make arch-broadwellnk-7.1
make arch-broadwellnkv2-7.1
make arch-broadwellntbap-7.1
make arch-denverton-7.1
make arch-geminilake-7.1
make arch-purley-7.1
make arch-r1000-7.1
make arch-v1000-7.1
exit
# Upload artifact
- name: Upload
uses: actions/upload-artifact@v4
with:
name: Apps
path: |
~/tmp/spksrc/packages/*.spk
retention-days: 5
# Publish a release if is a tag
- name: Release
uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')
with:
files: |
~/tmp/spksrc/packages/*.spk

View File

@ -1,16 +0,0 @@
#!/bin/bash
sudo apt-get update
sudo apt-get install -y libelf-dev moreutils
unset DOCKER_HOST
rm -rf ~/tmp/
mkdir -p ~/tmp/
git clone https://github.com/SynoCommunity/spksrc ~/tmp/spksrc
docker pull ghcr.io/synocommunity/spksrc
git clone https://github.com/AuxXxilium/synology-dsm-open-vm-tools.git ~/tmp/open-vm-tools
cp -rf ~/tmp/open-vm-tools/* ~/tmp/spksrc/
cp -rf /usr/bin/sponge ~/tmp/spksrc/
cp -f docker.sh ~/tmp/spksrc/
docker run -it -v ~/tmp/spksrc:/spksrc ghcr.io/synocommunity/spksrc /spksrc/docker.sh
cp -f ~/tmp/spksrc/packages/*.spk /home/auxxxilium

22
cross/libiconv/Makefile Normal file
View File

@ -0,0 +1,22 @@
PKG_NAME = libiconv
PKG_VERS = 1.17
PKG_EXT = tar.gz
PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT)
PKG_DIST_SITE = https://ftp.gnu.org/pub/gnu/libiconv
PKG_DIR = $(PKG_NAME)-$(PKG_VERS)
DEPENDS =
HOMEPAGE = https://www.gnu.org/software/libiconv
COMMENT = GNU libiconv provides an implementation of the iconv() function and the iconv program for character set conversion. For use on systems which don't have one, or whose implementation cannot convert from/to Unicode.
LICENSE = GNU GPLv3
GNU_CONFIGURE = 1
CONFIGURE_ARGS = --disable-static
ADDITIONAL_CFLAGS = -O
include ../../mk/spksrc.cross-cc.mk
.PHONY: libiconv_install
libiconv_install:
$(RUN) $(MAKE) install DESTDIR=$(INSTALL_DIR) PREFIX=$(INSTALL_PREFIX)

7
cross/libiconv/PLIST Normal file
View File

@ -0,0 +1,7 @@
bin:bin/iconv
lnk:lib/libcharset.so
lnk:lib/libcharset.so.1
lib:lib/libcharset.so.1.0.0
lnk:lib/libiconv.so
lnk:lib/libiconv.so.2
lib:lib/libiconv.so.2.6.1

3
cross/libiconv/digests Normal file
View File

@ -0,0 +1,3 @@
libiconv-1.17.tar.gz SHA1 409a6a8c07280e02cc33b65ae871311f4b33077b
libiconv-1.17.tar.gz SHA256 8f74213b56238c85a50a5329f77e06198771e70dd9a739779f4c02f65d971313
libiconv-1.17.tar.gz MD5 d718cd5a59438be666d1575855be72c3

View File

@ -6,7 +6,7 @@ PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS)-$(PKG_BUILD).$(PKG_EXT)
PKG_DIST_SITE = https://github.com/vmware/open-vm-tools/releases/download/stable-$(PKG_VERS)
PKG_DIR = $(PKG_NAME)-$(PKG_VERS)-$(PKG_BUILD)
DEPENDS = cross/libmspack cross/glib cross/protobuf cross/openssl cross/fuse cross/curl cross/libtirpc cross/procps-ng cross/icu
DEPENDS = cross/glib cross/curl cross/moreutils cross/protobuf cross/openssl cross/libmspack cross/fuse3 cross/libtirpc cross/procps-ng cross/icu cross/libiconv
HOMEPAGE = https://github.com/vmware/open-vm-tools
COMMENT = VMware open-vm-tools project
@ -17,18 +17,16 @@ INSTALL_TARGET = vmtools_install
POST_INSTALL_TARGET = vmtools_post_install
ENV = PATH=$(STAGING_INSTALL_PREFIX)/bin:$$PATH
ENV += CUSTOM_PROCPS_NAME=procps
ENV += CUSTOM_PROCPS_LIBS="-L$(STAGING_INSTALL_PREFIX)/lib -lprocps"
GNU_CONFIGURE = 1
CONFIGURE_ARGS = --without-x
CONFIGURE_ARGS += --disable-resolutionkms
CONFIGURE_ARGS += --with-tirpc
CONFIGURE_ARGS =
CONFIGURE_ARGS += --with-fuse=fuse3
CONFIGURE_ARGS += --without-x
CONFIGURE_ARGS += --without-pam
CONFIGURE_ARGS += --without-xmlsec1
CONFIGURE_ARGS += --without-icu
CONFIGURE_ARGS += --enable-containerinfo=no
CONFIGURE_ARGS += --enable-servicediscovery
CONFIGURE_ARGS += --enable-containerinfo=no
include ../../mk/spksrc.cross-cc.mk
.PHONY: vmtools_pre_configure
@ -45,5 +43,5 @@ vmtools_post_install:
# chmod a-x $(STAGING_INSTALL_PREFIX)/etc/vmware-tools/*.conf
chmod a-x $(STAGING_INSTALL_PREFIX)/etc/vmware-tools/*.conf.example
# chmod a-x $(STAGING_INSTALL_PREFIX)/etc/vmware-tools/vgauth/schemas/*
chmod a-x $(STAGING_INSTALL_PREFIX)/lib/udev/rules.d/99-vmware-scsi-udev.rules
# chmod a-x $(STAGING_INSTALL_PREFIX)/lib/udev/rules.d/99-vmware-scsi-udev.rules
mv $(STAGING_INSTALL_PREFIX)/usr/bin/vm-support $(STAGING_INSTALL_PREFIX)/bin/

View File

@ -1,3 +1,3 @@
open-vm-tools-12.4.0-23259341.tar.gz SHA1 77CB5FD60B24BB04308815A5D44DDCF7CD5D5DF2
open-vm-tools-12.4.0-23259341.tar.gz SHA256 316469E4708C25F9B46AF17362E176BD796AA7E2ACDF05C021A7B60456411862
open-vm-tools-12.4.0-23259341.tar.gz MD5 B7E1A263766D79DD3CBAB8AFB2C5783F
open-vm-tools-12.4.0-23259341.tar.gz SHA1 77cb5fd60b24bb04308815a5d44ddcf7cd5d5df2
open-vm-tools-12.4.0-23259341.tar.gz SHA256 316469e4708c25f9b46af17362e176bd796aa7e2acdf05c021a7b60456411862
open-vm-tools-12.4.0-23259341.tar.gz MD5 b7e1a263766d79dd3cbab8afb2c5783f

View File

@ -1,28 +0,0 @@
#!/bin/bash
make setup
cp -r /spksrc/sponge /usr/bin/
cd /spksrc/spk/open-vm-tools/ && make arch-apollolake-7.1
cd /spksrc/spk/open-vm-tools/ && make arch-broadwell-7.1
cd /spksrc/spk/open-vm-tools/ && make arch-broadwellnk-7.1
cd /spksrc/spk/open-vm-tools/ && make arch-broadwellnkv2-7.1
cd /spksrc/spk/open-vm-tools/ && make arch-broadwellntbap-7.1
cd /spksrc/spk/open-vm-tools/ && make arch-denverton-7.1
cd /spksrc/spk/open-vm-tools/ && make arch-geminilake-7.1
cd /spksrc/spk/open-vm-tools/ && make arch-purley-7.1
cd /spksrc/spk/open-vm-tools/ && make arch-r1000-7.1
cd /spksrc/spk/open-vm-tools/ && make arch-v1000-7.1
cd /spksrc/spk/open-vm-tools/ && make arch-epyc7002-7.1
cd /spksrc/spk/open-vm-tools/ && make arch-apollolake-7.2
cd /spksrc/spk/open-vm-tools/ && make arch-broadwell-7.2
cd /spksrc/spk/open-vm-tools/ && make arch-broadwellnk-7.2
cd /spksrc/spk/open-vm-tools/ && make arch-broadwellnkv2-7.2
cd /spksrc/spk/open-vm-tools/ && make arch-broadwellntbap-7.2
cd /spksrc/spk/open-vm-tools/ && make arch-denverton-7.2
cd /spksrc/spk/open-vm-tools/ && make arch-geminilake-7.2
cd /spksrc/spk/open-vm-tools/ && make arch-purley-7.2
cd /spksrc/spk/open-vm-tools/ && make arch-r1000-7.2
cd /spksrc/spk/open-vm-tools/ && make arch-v1000-7.2
cd /spksrc/spk/open-vm-tools/ && make arch-epyc7002-7.2
exit 0

0
native/__init__.py Normal file
View File

View File

@ -1 +1,292 @@
current/Makefile.inc
# Copyright (C) 2016 and later: Unicode, Inc. and others.
# License & terms of use: http://www.unicode.org/copyright.html
## -*-makefile-*-
#******************************************************************************
# Copyright (C) 1999-2014, International Business Machines
# Corporation and others. All Rights Reserved.
#******************************************************************************
# This Makefile.inc is designed to be included into projects which make use
# of the ICU.
# CONTENTS OF THIS FILE
# 1). Base configuration information and linkage
# 2). Variables giving access to ICU tools
# 3). Host information
# 4). Compiler flags and settings
# 5). Data Packaging directives
# 6). Include of platform make fragment (mh-* file)
##################################################################
##################################################################
#
# *1* base configuration information and linkage
#
##################################################################
# The PREFIX is the base of where ICU is installed.
# Inside this directory you should find bin, lib, include/unicode,
# etc. If ICU is not installed in this directory, you must change the
# following line. There should exist $(prefix)/include/unicode/utypes.h
# for example.
prefix = /usr/local
exec_prefix = ${prefix}
libdir = ${exec_prefix}/lib
libexecdir = ${exec_prefix}/libexec
bindir = ${exec_prefix}/bin
datarootdir = ${prefix}/share
datadir = ${datarootdir}
sbindir = ${exec_prefix}/sbin
# about the ICU version
VERSION = 65.1
UNICODE_VERSION = 12.1
# The prefix for ICU libraries, normally 'icu'
ICUPREFIX = icu
PACKAGE = icu
LIBICU = lib$(ICUPREFIX)
# Static library prefix and file extension
STATIC_PREFIX = s
LIBSICU = lib$(STATIC_PREFIX)$(ICUPREFIX)
A = a
# Suffix at the end of libraries. Usually empty.
ICULIBSUFFIX =
# ICULIBSUFFIX_VERSION is non-empty if it is to contain a library
# version. For example, if it is 21, it means libraries are named
# libicuuc21.so for example.
# rpath links a library search path right into the binaries.
## mh-files MUST NOT override RPATHLDFLAGS unless they provide
## equivalent '#SH#' lines for icu-config fixup
ENABLE_RPATH = NO
ifeq ($(ENABLE_RPATH),YES)
RPATHLDFLAGS = $(LD_RPATH)$(LD_RPATH_PRE)$(libdir)
endif
#SH## icu-config version of above 'if':
#SH#case "x$ENABLE_RPATH" in
#SH# x[yY]*)
#SH# ENABLE_RPATH=YES
#SH# RPATHLDFLAGS="${LD_RPATH}${LD_RPATH_PRE}${libdir}"
#SH# ;;
#SH#
#SH# x[nN]*)
#SH# ENABLE_RPATH=NO
#SH# RPATHLDFLAGS=""
#SH# ;;
#SH#
#SH# x)
#SH# ENABLE_RPATH=NO
#SH# RPATHLDFLAGS=""
#SH# ;;
#SH#
#SH# *)
#SH# echo $0: Unknown --enable-rpath value ${ENABLE_RPATH} 1>&2
#SH# exit 3
#SH# ;;
#SH#esac
# Name flexibility for the library naming scheme. Any modifications should
# be made in the mh- file for the specific platform.
DATA_STUBNAME = data
COMMON_STUBNAME = uc
I18N_STUBNAME = i18n
LAYOUTEX_STUBNAME = lx
IO_STUBNAME = io
TOOLUTIL_STUBNAME = tu
CTESTFW_STUBNAME = test
### To link your application with ICU:
# 1. use LDFLAGS, CFLAGS, etc from above
# 2. link with $(ICULIBS)
# 3. optionally, add one or more of:
# - $(ICULIBS_I18N) - i18n library, formatting, etc.
# - $(ICULIBS_ICUIO) - ICU stdio equivalent library
ICULIBS_COMMON = -l$(ICUPREFIX)uc$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION)
ICULIBS_DATA = -l$(ICUPREFIX)$(DATA_STUBNAME)$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION)
ICULIBS_I18N = -l$(ICUPREFIX)$(I18N_STUBNAME)$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION)
ICULIBS_TOOLUTIL = -l$(ICUPREFIX)tu$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION)
ICULIBS_CTESTFW = -l$(ICUPREFIX)ctestfw$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION)
ICULIBS_ICUIO = -l$(ICUPREFIX)io$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION)
ICULIBS_OBSOLETE = -l$(ICUPREFIX)obsolete$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION)
ICULIBS_LAYOUTEX = -l$(ICUPREFIX)lx$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION)
ICULIBS_BASE = -L$(libdir)
# for icu-config to test with
ICULIBS_COMMON_LIB_NAME = ${LIBICU}${COMMON_STUBNAME}${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}.${SO}
ICULIBS_COMMON_LIB_NAME_A = ${LIBICU}${COMMON_STUBNAME}${ICULIBSUFFIX}.${A}
# ICULIBS is the set of libraries your application should link
# with usually. Many applications will want to add $(ICULIBS_I18N) as well.
ICULIBS = $(ICULIBS_BASE) $(ICULIBS_I18N) $(ICULIBS_COMMON) $(ICULIBS_DATA)
# Proper echo newline handling is needed in icu-config
ECHO_N=-n
ECHO_C=
# Not currently being used but good to have for proper tab handling
ECHO_T=
##################################################################
##################################################################
#
# *2* access to ICU tools
#
##################################################################
# Environment variable to set a runtime search path
# (Overridden when necessary in -mh files)
LDLIBRARYPATH_ENVVAR = LD_LIBRARY_PATH
# Versioned target for a shared library
FINAL_SO_TARGET = $(SO_TARGET).$(SO_TARGET_VERSION)
MIDDLE_SO_TARGET = $(SO_TARGET).$(SO_TARGET_VERSION_MAJOR)
# Access to important ICU tools.
# Use as follows: $(INVOKE) $(GENRB) arguments ..
INVOKE = $(LDLIBRARYPATH_ENVVAR)=$(libdir):$$$(LDLIBRARYPATH_ENVVAR) $(LEAK_CHECKER)
GENCCODE = $(sbindir)/genccode
ICUPKG = $(sbindir)/icupkg
GENCMN = $(sbindir)/gencmn
GENRB = $(bindir)/genrb
PKGDATA = $(bindir)/pkgdata
# moved here because of dependencies
pkgdatadir = $(datadir)/$(PACKAGE)$(ICULIBSUFFIX)/$(VERSION)
pkglibdir = $(libdir)/$(PACKAGE)$(ICULIBSUFFIX)/$(VERSION)
##################################################################
##################################################################
#
# *3* Information about the host
#
##################################################################
# Information about the host that 'configure' was run on.
host = x86_64-pc-linux-gnu
host_alias =
host_cpu = x86_64
host_vendor = pc
host_os = linux-gnu
# Our platform canonical name (as determined by configure)
# this is a #define value (i.e. U_XXXX or XXXX)
platform = U_LINUX
##################################################################
##################################################################
#
# *4* compiler flags and misc. options
#
##################################################################
AR = ar
# initial tab keeps it out of the shell version.
ARFLAGS := $(ARFLAGS)
#SH#ARFLAGS=" ${ARFLAGS}"
CC = gcc
CPP = gcc -E
CFLAGS =
CPPFLAGS = -I$(prefix)/include
CXXFLAGS = -std=c++11
CXX = g++
DEFAULT_MODE = static
DEFS = -DPACKAGE_NAME=\"ICU\" -DPACKAGE_TARNAME=\"International\ Components\ for\ Unicode\" -DPACKAGE_VERSION=\"65.1\" -DPACKAGE_STRING=\"ICU\ 65.1\" -DPACKAGE_BUGREPORT=\"http://icu-project.org/bugs\" -DPACKAGE_URL=\"http://icu-project.org\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DSIZEOF_VOID_P=8 -DHAVE_LIBM=1 -DHAVE_ELF_H=1 -DHAVE_GETTIMEOFDAY=1 -DHAVE_LIBPTHREAD=1 -DHAVE_INTTYPES_H=1 -DHAVE_DIRENT_H=1 -DHAVE_WCHAR_H=1 -DSIZEOF_WCHAR_T=4
# use a consistent INSTALL
INSTALL = $(SHELL) $(pkgdatadir)/install-sh -c
INSTALL_DATA = ${INSTALL} -m 644
INSTALL_DATA = ${INSTALL} -m 644
INSTALL_PROGRAM = ${INSTALL}
INSTALL_PROGRAM = ${INSTALL}
INSTALL_SCRIPT = ${INSTALL}
LDFLAGS = $(RPATHLDFLAGS)
LIBS = -lpthread -lm
LIB_M =
LIB_VERSION = 65.1
LIB_VERSION_MAJOR = 65
MKINSTALLDIRS = $(SHELL) $(pkgdatadir)/mkinstalldirs
RANLIB = ranlib
RMV = rm -rf
SHELL = /bin/bash
SHLIB.c= $(CC) $(DEFS) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -shared
SHLIB.cc= $(CXX) $(DEFS) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -shared
U_IS_BIG_ENDIAN = 0
includedir = ${prefix}/include
infodir = ${datarootdir}/info
localstatedir = ${prefix}/var
mandir = ${datarootdir}/man
oldincludedir = /usr/include
program_transform_name = s,x,x,
sharedstatedir = ${prefix}/com
sysconfdir = ${prefix}/etc
INSTALL-L = ${INSTALL_DATA}
# for derivative builds - don't bother with VERBOSE/NONVERBOSE SILENT_COMPILE
SILENT_COMPILE=$(1) #M#
ICU_MSG=@echo " $(1) " #M#
##################################################################
##################################################################
#
# *5* packaging options and directories
#
##################################################################
# The basename of the ICU data file (i.e. icudt21b )
ICUDATA_CHAR = l
ICUDATA_NAME = icudt65l
# Defaults for pkgdata's mode and directories
# The default data dir changes depending on what packaging mode
# is being used
ifeq ($(strip $(PKGDATA_MODE)),)
#SH# if [ "x$PKGDATA_MODE" = "x" ];
#SH# then
PKGDATA_MODE=static
#SH# fi
endif
#SH# case "$PKGDATA_MODE" in
ifeq ($(PKGDATA_MODE),common)
#SH# common)
ICUDATA_DIR = $(pkgdatadir)
ICUPKGDATA_DIR = $(ICUDATA_DIR)
#SH# ;;
else
ifeq ($(PKGDATA_MODE),dll)
#SH# dll)
ICUDATA_DIR = $(pkgdatadir)
ICUPKGDATA_DIR = $(libdir)
#SH# ;;
else
#SH# *)
ICUDATA_DIR = $(pkgdatadir)
ICUPKGDATA_DIR = $(ICUDATA_DIR)
#SH# ;;
endif
endif
#SH# esac
GENCCODE_ASSEMBLY = -a gcc
##################################################################
##################################################################
#
# *6* Inclusion of platform make fragment (mh-* file)
#
##################################################################
# The mh- file ("make fragment") for the platform is included here.
# It may override the above settings.
# It is put last so that the mh-file can override anything.
# The selfcheck is just a sanity check that this makefile is
# parseable. The mh fragment is only included if this does not occur.
ifeq (selfcheck,$(MAKECMDGOALS)) #M#
selfcheck: #M#
@echo passed #M#
else #M#
include $(pkgdatadir)/config/mh-linux
endif #M#

View File

@ -0,0 +1,292 @@
# Copyright (C) 2016 and later: Unicode, Inc. and others.
# License & terms of use: http://www.unicode.org/copyright.html
## -*-makefile-*-
#******************************************************************************
# Copyright (C) 1999-2014, International Business Machines
# Corporation and others. All Rights Reserved.
#******************************************************************************
# This Makefile.inc is designed to be included into projects which make use
# of the ICU.
# CONTENTS OF THIS FILE
# 1). Base configuration information and linkage
# 2). Variables giving access to ICU tools
# 3). Host information
# 4). Compiler flags and settings
# 5). Data Packaging directives
# 6). Include of platform make fragment (mh-* file)
##################################################################
##################################################################
#
# *1* base configuration information and linkage
#
##################################################################
# The PREFIX is the base of where ICU is installed.
# Inside this directory you should find bin, lib, include/unicode,
# etc. If ICU is not installed in this directory, you must change the
# following line. There should exist $(prefix)/include/unicode/utypes.h
# for example.
prefix = /usr/local
exec_prefix = ${prefix}
libdir = ${exec_prefix}/lib
libexecdir = ${exec_prefix}/libexec
bindir = ${exec_prefix}/bin
datarootdir = ${prefix}/share
datadir = ${datarootdir}
sbindir = ${exec_prefix}/sbin
# about the ICU version
VERSION = 65.1
UNICODE_VERSION = 12.1
# The prefix for ICU libraries, normally 'icu'
ICUPREFIX = icu
PACKAGE = icu
LIBICU = lib$(ICUPREFIX)
# Static library prefix and file extension
STATIC_PREFIX = s
LIBSICU = lib$(STATIC_PREFIX)$(ICUPREFIX)
A = a
# Suffix at the end of libraries. Usually empty.
ICULIBSUFFIX =
# ICULIBSUFFIX_VERSION is non-empty if it is to contain a library
# version. For example, if it is 21, it means libraries are named
# libicuuc21.so for example.
# rpath links a library search path right into the binaries.
## mh-files MUST NOT override RPATHLDFLAGS unless they provide
## equivalent '#SH#' lines for icu-config fixup
ENABLE_RPATH = NO
ifeq ($(ENABLE_RPATH),YES)
RPATHLDFLAGS = $(LD_RPATH)$(LD_RPATH_PRE)$(libdir)
endif
#SH## icu-config version of above 'if':
#SH#case "x$ENABLE_RPATH" in
#SH# x[yY]*)
#SH# ENABLE_RPATH=YES
#SH# RPATHLDFLAGS="${LD_RPATH}${LD_RPATH_PRE}${libdir}"
#SH# ;;
#SH#
#SH# x[nN]*)
#SH# ENABLE_RPATH=NO
#SH# RPATHLDFLAGS=""
#SH# ;;
#SH#
#SH# x)
#SH# ENABLE_RPATH=NO
#SH# RPATHLDFLAGS=""
#SH# ;;
#SH#
#SH# *)
#SH# echo $0: Unknown --enable-rpath value ${ENABLE_RPATH} 1>&2
#SH# exit 3
#SH# ;;
#SH#esac
# Name flexibility for the library naming scheme. Any modifications should
# be made in the mh- file for the specific platform.
DATA_STUBNAME = data
COMMON_STUBNAME = uc
I18N_STUBNAME = i18n
LAYOUTEX_STUBNAME = lx
IO_STUBNAME = io
TOOLUTIL_STUBNAME = tu
CTESTFW_STUBNAME = test
### To link your application with ICU:
# 1. use LDFLAGS, CFLAGS, etc from above
# 2. link with $(ICULIBS)
# 3. optionally, add one or more of:
# - $(ICULIBS_I18N) - i18n library, formatting, etc.
# - $(ICULIBS_ICUIO) - ICU stdio equivalent library
ICULIBS_COMMON = -l$(ICUPREFIX)uc$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION)
ICULIBS_DATA = -l$(ICUPREFIX)$(DATA_STUBNAME)$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION)
ICULIBS_I18N = -l$(ICUPREFIX)$(I18N_STUBNAME)$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION)
ICULIBS_TOOLUTIL = -l$(ICUPREFIX)tu$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION)
ICULIBS_CTESTFW = -l$(ICUPREFIX)ctestfw$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION)
ICULIBS_ICUIO = -l$(ICUPREFIX)io$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION)
ICULIBS_OBSOLETE = -l$(ICUPREFIX)obsolete$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION)
ICULIBS_LAYOUTEX = -l$(ICUPREFIX)lx$(ICULIBSUFFIX)$(ICULIBSUFFIX_VERSION)
ICULIBS_BASE = -L$(libdir)
# for icu-config to test with
ICULIBS_COMMON_LIB_NAME = ${LIBICU}${COMMON_STUBNAME}${ICULIBSUFFIX}${ICULIBSUFFIX_VERSION}.${SO}
ICULIBS_COMMON_LIB_NAME_A = ${LIBICU}${COMMON_STUBNAME}${ICULIBSUFFIX}.${A}
# ICULIBS is the set of libraries your application should link
# with usually. Many applications will want to add $(ICULIBS_I18N) as well.
ICULIBS = $(ICULIBS_BASE) $(ICULIBS_I18N) $(ICULIBS_COMMON) $(ICULIBS_DATA)
# Proper echo newline handling is needed in icu-config
ECHO_N=-n
ECHO_C=
# Not currently being used but good to have for proper tab handling
ECHO_T=
##################################################################
##################################################################
#
# *2* access to ICU tools
#
##################################################################
# Environment variable to set a runtime search path
# (Overridden when necessary in -mh files)
LDLIBRARYPATH_ENVVAR = LD_LIBRARY_PATH
# Versioned target for a shared library
FINAL_SO_TARGET = $(SO_TARGET).$(SO_TARGET_VERSION)
MIDDLE_SO_TARGET = $(SO_TARGET).$(SO_TARGET_VERSION_MAJOR)
# Access to important ICU tools.
# Use as follows: $(INVOKE) $(GENRB) arguments ..
INVOKE = $(LDLIBRARYPATH_ENVVAR)=$(libdir):$$$(LDLIBRARYPATH_ENVVAR) $(LEAK_CHECKER)
GENCCODE = $(sbindir)/genccode
ICUPKG = $(sbindir)/icupkg
GENCMN = $(sbindir)/gencmn
GENRB = $(bindir)/genrb
PKGDATA = $(bindir)/pkgdata
# moved here because of dependencies
pkgdatadir = $(datadir)/$(PACKAGE)$(ICULIBSUFFIX)/$(VERSION)
pkglibdir = $(libdir)/$(PACKAGE)$(ICULIBSUFFIX)/$(VERSION)
##################################################################
##################################################################
#
# *3* Information about the host
#
##################################################################
# Information about the host that 'configure' was run on.
host = x86_64-pc-linux-gnu
host_alias =
host_cpu = x86_64
host_vendor = pc
host_os = linux-gnu
# Our platform canonical name (as determined by configure)
# this is a #define value (i.e. U_XXXX or XXXX)
platform = U_LINUX
##################################################################
##################################################################
#
# *4* compiler flags and misc. options
#
##################################################################
AR = ar
# initial tab keeps it out of the shell version.
ARFLAGS := $(ARFLAGS)
#SH#ARFLAGS=" ${ARFLAGS}"
CC = gcc
CPP = gcc -E
CFLAGS =
CPPFLAGS = -I$(prefix)/include
CXXFLAGS = -std=c++11
CXX = g++
DEFAULT_MODE = static
DEFS = -DPACKAGE_NAME=\"ICU\" -DPACKAGE_TARNAME=\"International\ Components\ for\ Unicode\" -DPACKAGE_VERSION=\"65.1\" -DPACKAGE_STRING=\"ICU\ 65.1\" -DPACKAGE_BUGREPORT=\"http://icu-project.org/bugs\" -DPACKAGE_URL=\"http://icu-project.org\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DSIZEOF_VOID_P=8 -DHAVE_LIBM=1 -DHAVE_ELF_H=1 -DHAVE_GETTIMEOFDAY=1 -DHAVE_LIBPTHREAD=1 -DHAVE_INTTYPES_H=1 -DHAVE_DIRENT_H=1 -DHAVE_WCHAR_H=1 -DSIZEOF_WCHAR_T=4
# use a consistent INSTALL
INSTALL = $(SHELL) $(pkgdatadir)/install-sh -c
INSTALL_DATA = ${INSTALL} -m 644
INSTALL_DATA = ${INSTALL} -m 644
INSTALL_PROGRAM = ${INSTALL}
INSTALL_PROGRAM = ${INSTALL}
INSTALL_SCRIPT = ${INSTALL}
LDFLAGS = $(RPATHLDFLAGS)
LIBS = -lpthread -lm
LIB_M =
LIB_VERSION = 65.1
LIB_VERSION_MAJOR = 65
MKINSTALLDIRS = $(SHELL) $(pkgdatadir)/mkinstalldirs
RANLIB = ranlib
RMV = rm -rf
SHELL = /bin/bash
SHLIB.c= $(CC) $(DEFS) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -shared
SHLIB.cc= $(CXX) $(DEFS) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -shared
U_IS_BIG_ENDIAN = 0
includedir = ${prefix}/include
infodir = ${datarootdir}/info
localstatedir = ${prefix}/var
mandir = ${datarootdir}/man
oldincludedir = /usr/include
program_transform_name = s,x,x,
sharedstatedir = ${prefix}/com
sysconfdir = ${prefix}/etc
INSTALL-L = ${INSTALL_DATA}
# for derivative builds - don't bother with VERBOSE/NONVERBOSE SILENT_COMPILE
SILENT_COMPILE=$(1) #M#
ICU_MSG=@echo " $(1) " #M#
##################################################################
##################################################################
#
# *5* packaging options and directories
#
##################################################################
# The basename of the ICU data file (i.e. icudt21b )
ICUDATA_CHAR = l
ICUDATA_NAME = icudt65l
# Defaults for pkgdata's mode and directories
# The default data dir changes depending on what packaging mode
# is being used
ifeq ($(strip $(PKGDATA_MODE)),)
#SH# if [ "x$PKGDATA_MODE" = "x" ];
#SH# then
PKGDATA_MODE=static
#SH# fi
endif
#SH# case "$PKGDATA_MODE" in
ifeq ($(PKGDATA_MODE),common)
#SH# common)
ICUDATA_DIR = $(pkgdatadir)
ICUPKGDATA_DIR = $(ICUDATA_DIR)
#SH# ;;
else
ifeq ($(PKGDATA_MODE),dll)
#SH# dll)
ICUDATA_DIR = $(pkgdatadir)
ICUPKGDATA_DIR = $(libdir)
#SH# ;;
else
#SH# *)
ICUDATA_DIR = $(pkgdatadir)
ICUPKGDATA_DIR = $(ICUDATA_DIR)
#SH# ;;
endif
endif
#SH# esac
GENCCODE_ASSEMBLY = -a gcc
##################################################################
##################################################################
#
# *6* Inclusion of platform make fragment (mh-* file)
#
##################################################################
# The mh- file ("make fragment") for the platform is included here.
# It may override the above settings.
# It is put last so that the mh-file can override anything.
# The selfcheck is just a sanity check that this makefile is
# parseable. The mh fragment is only included if this does not occur.
ifeq (selfcheck,$(MAKECMDGOALS)) #M#
selfcheck: #M#
@echo passed #M#
else #M#
include $(pkgdatadir)/config/mh-linux
endif #M#

View File

@ -0,0 +1,17 @@
GENCCODE_ASSEMBLY_TYPE=-a gcc
SO=so
SOBJ=so
A=a
LIBPREFIX=lib
LIB_EXT_ORDER=.65.1
COMPILE=gcc -O3 -fno-short-wchar -DU_USING_ICU_NAMESPACE=1 -fno-short-enums -DU_HAVE_NL_LANGINFO_CODESET=0 -D__STDC_INT64__ -DU_TIMEZONE=0 -DUCONFIG_NO_LEGACY_CONVERSION=1 -DUCONFIG_NO_BREAK_ITERATION=1 -DUCONFIG_NO_COLLATION=1 -DUCONFIG_NO_FORMATTING=1 -DUCONFIG_NO_TRANSLITERATION=0 -DUCONFIG_NO_REGULAR_EXPRESSIONS=1 -ffunction-sections -fdata-sections -D_REENTRANT -DU_HAVE_ELF_H=1 -DU_ENABLE_DYLOAD=0 -DU_HAVE_STRTOD_L=1 -DU_HAVE_XLOCALE_H=0 -DU_ATTRIBUTE_DEPRECATED= -O2 -c
LIBFLAGS=-I/usr/local/include -DPIC -fPIC
GENLIB=gcc -O2 -Wl,--gc-sections -shared -Wl,-Bsymbolic
LDICUDTFLAGS=-nodefaultlibs -nostdlib
LD_SONAME=-Wl,-soname -Wl,
RPATH_FLAGS=
BIR_LDFLAGS=-Wl,-Bsymbolic
AR=ar
ARFLAGS=r
RANLIB=ranlib
INSTALL_CMD=/usr/bin/install -c

View File

@ -1 +1,17 @@
current/pkgdata.inc
GENCCODE_ASSEMBLY_TYPE=-a gcc
SO=so
SOBJ=so
A=a
LIBPREFIX=lib
LIB_EXT_ORDER=.65.1
COMPILE=gcc -O3 -fno-short-wchar -DU_USING_ICU_NAMESPACE=1 -fno-short-enums -DU_HAVE_NL_LANGINFO_CODESET=0 -D__STDC_INT64__ -DU_TIMEZONE=0 -DUCONFIG_NO_LEGACY_CONVERSION=1 -DUCONFIG_NO_BREAK_ITERATION=1 -DUCONFIG_NO_COLLATION=1 -DUCONFIG_NO_FORMATTING=1 -DUCONFIG_NO_TRANSLITERATION=0 -DUCONFIG_NO_REGULAR_EXPRESSIONS=1 -ffunction-sections -fdata-sections -D_REENTRANT -DU_HAVE_ELF_H=1 -DU_ENABLE_DYLOAD=0 -DU_HAVE_STRTOD_L=1 -DU_HAVE_XLOCALE_H=0 -DU_ATTRIBUTE_DEPRECATED= -O2 -c
LIBFLAGS=-I/usr/local/include -DPIC -fPIC
GENLIB=gcc -O2 -Wl,--gc-sections -shared -Wl,-Bsymbolic
LDICUDTFLAGS=-nodefaultlibs -nostdlib
LD_SONAME=-Wl,-soname -Wl,
RPATH_FLAGS=
BIR_LDFLAGS=-Wl,-Bsymbolic
AR=ar
ARFLAGS=r
RANLIB=ranlib
INSTALL_CMD=/usr/bin/install -c

View File

@ -7,11 +7,11 @@ BETA = 1
DEPENDS = cross/$(SPK_NAME)
UNSUPPORTED_ARCHS = $(PPC_ARCHS) $(ARMv5_ARCHS) $(i686_ARCHS) $(ARMv7L_ARCHS)
MAINTAINER = AuxXxilium
MAINTAINER = zsanjin
DESCRIPTION = open-vm-tools is a set of services and modules that enable several features in VMware products for better management of, and seamless user interactions with, guests.
RELOAD_UI = yes
DISPLAY_NAME = VMware Tools
CHANGELOG = "SPK Open-vm-tools | 22 Mar 2024 | Build 23259341"
CHANGELOG = "SPK Open-vm-tools | 23 Mar 2024 | Build 23259341"
HOMEPAGE = https://github.com/vmware/open-vm-tools
LICENSE = GPLv2/LGPLv2.1