summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 176670e809f4e75344b7ed56d66b27ea1f696f29 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
# Maintainer: taotieren <admin@taotieren.com>

pkgbase=ok-edu-classroom-desktop-git
pkgname=(ok-msg-desktop-git)
pkgver=r31.341cfc8
pkgrel=1
arch=(x86_64
    aarch64
    riscv64)
_url="https://github.com/okstar-org"
url="${_url}/ok-msg-desktop"
pkgdesc="OkMSG是由OkStar(okstar.org)社区开发和维护的注重数据安全与保护的企业通讯协同工具,支持独立私有化部署的集即时消息、语音、视频通话、发送文件、会议等多种功能于一身的开源项目,同时让您的企业更加有效开启协作、有效沟通,控制成本,开拓新业务,并帮助您加速发展业务。"
provides=(${pkgname%-git} ok-gloox)
conflicts=(${pkgname%-git} ok-gloox)
replaces=()
license=('GPL-2.0-or-later' 'MulanPubL-2.0')
groups=()
depends=(glibc
    gcc-libs)
# _cver=14
# _gver=12
makedepends=(
    cmake
#     clang${_cver}
#     llvm${_cver}
#     gcc${_gver}
    git
    ninja
    python
#     gbm
    gtk3
    libdrm
    libinput
    libxi
    libxkbfile
    krb5
    mtdev
    openssl
    systemd
    perl
    pkgconf

# Qt xcb
    qt5-tools
    freetype2
    fontconfig
    libx11
    libxcb
    libxcrypt
    libxext
    libxfixes
    libxrender

# Qt Multimedia
    alsa-lib
    gstreamer
    qt5-multimedia
    qt5-svg
    qt5-xmlpatterns

# sqlite sqlcipher
    sqlite
    sqlcipher

# vpx qrencode sodium
    ffmpeg
    qrencode
    libexif
    libvpx
    libjpeg-turbo
    libtiff
    libpng
    libsodium
    libxss
    highway
# webrtc gloox
#     webrtc-audio-processing
#     ok-gloox
    )
checkdepends=()
optdepends=()
source=("${pkgname}::git+${_url}/ok-msg-desktop.git"
    "gloox::git+${_url}/ok-gloox.git"
)
sha256sums=('SKIP'
            'SKIP')
options=()

prepare()
{
    git -C "${srcdir}/${pkgname}" clean -dfx
    cd "${srcdir}/${pkgname}"
    git submodule init
    git config submodule.3rdparty/gloox.url "$srcdir/gloox"
    git -c protocol.file.allow=always submodule update
    git checkout develop
}

pkgver() {
    cd "${srcdir}/${pkgname}"
    ( set -o pipefail
        git describe --long --tag --abbrev=7 2>/dev/null | sed 's/^v//g;s/\([^-]*-g\)/r\1/;s/-/./g' ||
        printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short=7 HEAD)"
    )
}
build() {
#     export QTDIR=/usr/lib
    cd "${srcdir}/${pkgname}"
#     sed -i '1,13d' cmake/dependencies.cmake
# see:https://wiki.archlinux.org/title/CMake_package_guidelines
#     cmake -DCMAKE_BUILD_TYPE=Release None \
# clang
#     cmake -DCMAKE_BUILD_TYPE=Debug \
#         -DCMAKE_INSTALL_PREFIX=/usr \
#         -DCMAKE_C_COMPILER=/usr/lib/llvm${_cver}/bin/clang \
#         -DCMAKE_CXX_COMPILER=/usr/lib/llvm${_cver}/bin/clang++ \
#         -B build \
#         -G Ninja \
#         -Wno-dev
# #         -DCMAKE_MAKE_PROGRAM=/usr/bin/ninja \
# gcc 12
#     cmake -DCMAKE_BUILD_TYPE=Debug \
#         -DCMAKE_INSTALL_PREFIX=/usr \
#         -DCMAKE_C_COMPILER=/usr/bin/gcc-${_gver} \
#         -DCMAKE_CXX_COMPILER=/usr/bin/g++-${_gver} \
#         -B build \
#         -G Ninja \
#         -Wno-dev
    cmake -DCMAKE_BUILD_TYPE=Debug \
        -DCMAKE_INSTALL_PREFIX=/usr \
        -B build \
        -G Ninja \
        -Wno-dev
#         -DCMAKE_MAKE_PROGRAM=/usr/bin/ninja \
    ninja -C build
}

package() {
    DESTDIR="${pkgdir}" ninja -C "${srcdir}"/${pkgname}/build install
}