Open taotieren opened 1 year ago
❯ makepkg -sf
==> 正在创建软件包:minigui-git 5.0.11.r12.g0d1f1f02-1 (2023年06月28日 星期三 21时04分33秒)
==> 正在检查运行时依赖关系...
==> 正在检查编译时依赖关系==> 获取源代码...
-> 正在升级 minigui-git git 仓库...
==> 正在验证 source 文件,使用sha256sums...
minigui-git ... 已跳过==> 正在释放源码...
-> 正在建立 minigui-git git 仓库的拷贝...
正克隆到 'minigui-git'...
完成。==> 正在开始 pkgver()...
==> 正在开始 build()...
CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):
Compatibility with CMake < 2.8.12 will be removed from a future version of
CMake.
Update the VERSION argument <min> value or use a ...<max> suffix to tell
CMake that the project does not need compatibility with older versions.
-- The C compiler identification is GNU 13.1.1
-- The CXX compiler identification is GNU 13.1.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Find PTHREAD include in /usr/include
-- Find PTHREAD library in /usr/lib/libpthread.a
-- Performing Test _compile_ret
-- Performing Test _compile_ret - Success
-- Looking for include file alloca.h
-- Looking for include file alloca.h - found
-- Looking for include file dirent.h
-- Looking for include file dirent.h - found
-- Looking for include file dlfcn.h
-- Looking for include file dlfcn.h - found
-- Looking for include file inttypes.h
-- Looking for include file inttypes.h - found
-- Looking for include file locale.h
-- Looking for include file locale.h - found
-- Looking for include file math.h
-- Looking for include file math.h - found
-- Looking for include file memory.h
-- Looking for include file memory.h - found
-- Looking for include file ndir.h
-- Looking for include file ndir.h - not found
-- Looking for include file stdint.h
-- Looking for include file stdint.h - found
-- Looking for include file stdlib.h
-- Looking for include file stdlib.h - found
-- Looking for include file strings.h
-- Looking for include file strings.h - found
-- Looking for include file string.h
-- Looking for include file string.h - found
-- Looking for include file sys/dir.h
-- Looking for include file sys/dir.h - found
-- Looking for include file sys/ndir.h
-- Looking for include file sys/ndir.h - not found
-- Looking for include file sys/stat.h
-- Looking for include file sys/stat.h - found
-- Looking for include file sys/time.h
-- Looking for include file sys/time.h - found
-- Looking for include file sys/types.h
-- Looking for include file sys/types.h - found
-- Looking for include file termio.h
-- Looking for include file termio.h - found
-- Looking for include file unistd.h
-- Looking for include file unistd.h - found
-- Looking for alloca
-- Looking for alloca - not found
-- Looking for time
-- Looking for time - found
-- Looking for getpagesize
-- Looking for getpagesize - found
-- Looking for mktime
-- Looking for mktime - found
-- Looking for localtime
-- Looking for localtime - found
-- Looking for strdup
-- Looking for strdup - found
-- Looking for strcasecmp
-- Looking for strcasecmp - found
-- Looking for strncasecmp
-- Looking for strncasecmp - found
-- Looking for strerror
-- Looking for strerror - found
-- Looking for getpt
-- Looking for getpt - found
-- Looking for mmap
-- Looking for mmap - found
-- Looking for setlocale
-- Looking for setlocale - found
-- Looking for vprintf
-- Looking for vprintf - found
-- Found PkgConfig: /usr/bin/pkg-config (found version "1.8.1")
-- Checking for module 'libpng'
-- Found libpng, version 1.6.40
-- Find JPEG include in /usr/include
-- Find JPEG library in /usr/lib/libjpeg.so
=============================================
MiniGUI Version : 3.0.13
Run mode : Threads
OS Name : linux
Target board : unknown
Library type : Dynamic
=============================================
*********************************************
* license-management
*********************************************
* Enabled:
splash screensaver
* Disabled:
productid
*********************************************
* gal
*********************************************
* Enabled:
fbcon dummy pcxvfb
* Disabled:
dfb qvfb wvfb commlcd shadow mlshadow em85xxosd em85xxyuv em86gfx svpxxosd bf533
mb93493 utpmc nexus s3c6410 custom sigma8654 mstar hi3560a gdl ST7167 STGFB rtosxvfb
hi35xx
*********************************************
* ial
*********************************************
* Enabled:
dummy console dlcustom consoleps2 consoleimps2 consolems consolems3 consoletextmode
* Disabled:
custom net ciscotouchpad mstar ipaqh3600 nexus ipaqh5400 tslib auto random comm
qvfb qemu wvfb jz4740 lide 2440 davinci6446 dfb consolegpm
*********************************************
* look and feel renderer
*********************************************
* Enabled:
flat skin
* Disabled:
(null)
*********************************************
* control
*********************************************
* Enabled:
static button sledit bidisledit listbox progressbar newtoolbar trackbar combobox
propsheet scrollview monthcal treeview spinbox coolbar listview iconview animation
scrollbar newtextedit textedit menubutton
* Disabled:
treeviewrdr gridview
*********************************************
* charset
*********************************************
* Enabled:
latin2support latin3support latin4support latin5support latin6support latin7support
latin8support latin9support latin10support cyrillicsupport arabicsupport greeksupport
hebrewsupport thaisupport gbsupport gbksupport big5support euckrsupport eucjpsupport
shiftjissupport
* Disabled:
gb18030support
*********************************************
* font
*********************************************
* Enabled:
bmpfsupport upfsupport rbfsupport vbfsupport unicodesupport
* Disabled:
qpfsupport sefsupport ttfenablecache ttfgrayadjust
*********************************************
* incorefont
*********************************************
* Enabled:
rbfvgaoem rbfterminal rbffixedsys sserif courier system times
* Disabled:
(null)
*********************************************
* image
*********************************************
* Enabled:
gifsupport pngsupport jpgsupport
* Disabled:
pcxsupport lbmsupport tgasupport
*********************************************
* keyboard-layout
*********************************************
* Enabled:
(null)
* Disabled:
hebrewpc arabicpc frpc fr de delatin1 it es escp850
*********************************************
* misc
*********************************************
* Enabled:
dblclk savebitmap aboutdlg savescreen havemenu haveclipboard havecursor havefixedmath
havemousecalibrate haveadv2dapi
* Disabled:
debug miniguientry incoreres useownmalloc useownstdio useownpthread havetracemsg
havemsgstr
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!
!! WARNING
!!
!!
!! Product ID is *DISABLE*
!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-- Configuring done (3.9s)
CMake Error at src/CMakeLists.txt:106 (add_library):
Cannot find source file:
misc/listenfd.c
Tried extensions .c .C .c++ .cc .cpp .cxx .cu .mpp .m .M .mm .ixx .cppm .h
.hh .h++ .hm .hpp .hxx .in .txx .f .F .for .f77 .f90 .f95 .f03 .hip .ispc
CMake Error at src/CMakeLists.txt:106 (add_library):
No SOURCES given to target: _ths
CMake Generate step failed. Build files cannot be regenerated correctly.
==> 错误: 在 build() 中发生一个错误。 正在放弃...
哦,您在用 cmake 配置和编译啊?cmake 不维护了,仍然在使用 autotools。所以您要用 autotools 那套命令来配置和编译。
用 automake
方式重写 PKGBUILD
# Maintainer: taotieren <admin@taotieren.com>
pkgbase=minigui-git
pkgname=(minigui-{,{mgutils,mgplus,mgeff,mgncs,mgncs4touch,mg-tools,mg-tests,mg-samples,mg-demos,cell-phone-ux-demo,res,docs}-}git)
pkgver=5.0.11.r12.g0d1f1f02
pkgrel=1
arch=('any')
_url="https://github.com/VincentWei"
url="${_url}/MiniGUI"
license=('GPLv3')
provides=(${pkgname%-git})
conflicts=(${pkgname%-git})
# replaces=(${pkgname})
depends=(
chipmunk
freetype2
harfbuzz
libdrm
libevdev
libjpeg-turbo
libinput
libpng
kmod
mtdev
util-linux
sqlite
systemd
pkgconf
zlib)
optdepends=()
makedepends=(git
automake)
backup=()
options=('!strip')
install=
source=("${pkgbase}::git+${url}.git"
"minigui-mgutils::git+${_url}/mgutils.git"
"minigui-mgplus::git+${_url}/mgplus.git"
"minigui-mgeff::git+${_url}/mgeff.git"
"minigui-mgncs::git+${_url}/mgncs.git"
"minigui-mgncs4touch::git+${_url}/mgncs4touch.git"
"minigui-mg-tools::git+${_url}/mg-tools.git"
"minigui-mg-tests::git+${_url}/mg-tests.git"
"minigui-mg-samples::git+${_url}/mg-samples.git"
"minigui-mg-demos::git+${_url}/mg-demos.git"
"minigui-cell-phone-ux-demo::git+${_url}/cell-phone-ux-demo.git"
"minigui-res::git+${_url}/minigui-res.git"
"minigui-docs::git+${_url}/minigui-docs.git")
sha256sums=('SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP')
pkgver() {
cd "${srcdir}/${pkgbase}"
git describe --long --tags | sed 's/ver-//g;s/\([^-]*-g\)/r\1/;s/-/./g'
}
prepare() {
install -Dm0755 /dev/stdin "${srcdir}/myconfig.sh" << EOF
# This is the template of `myconfig.sh`, and the later
# will be included in every script.
# PLEASE COPY THIS FILE TO `myconfig.sh`,
# AND CHANGE THE FOLLOWING GLOBAL VARIABLES FOR YOUR CUSTOMIZATION.
#
# The URL prefix of remote repository.
# Use this if you want to use the repos on gitlab.fmsoft.cn via HTTPS (recommended)
REPO_URL=https://gitlab.fmsoft.cn/VincentWei
# Use this one if you are a developer of MiniGUI
# REPO_URL=git4os@gitlab.fmsoft.cn:VincentWei
# Use this if you want to visit GitHub via HTTPS
# REPO_URL=https://github.com/VincentWei
# Use this one if you can visit GitHub via SSH
# REPO_URL=git@github.com:VincentWei
#
# The branch name
BRANCH_NAME=rel-5-0
#
# Global configuration options for MiniGUI Core and components.
# GOPTS="--enable-develmode"
GOPTS=
#
# extra options for configuring MiniGUI Core.
# MGOPTS="--with-targetname=external"
MGOPTS=
#
# The jobs number for building source.
NRJOBS=`getconf _NPROCESSORS_ONLN`
EOF
}
package_minigui-mgutils-git() {
pkgdesc="A component of MiniGUI, provides users with a number of common dialog templates"
source "${srcdir}/myconfig.sh"
cd "${srcdir}/${pkgname%-git}"
./autogen.sh
./configure --prefix=/usr \
--disable-static $GOPTS
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
package_minigui-mgplus-git() {
pkgdesc="A MiniGUI component which provides support for advanced 2D graphics functions"
source "${srcdir}/myconfig.sh"
cd "${srcdir}/${pkgname%-git}"
./autogen.sh
./configure --prefix=/usr \
--disable-static $GOPTS
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
package_minigui-mgeff-git() {
pkgdesc="An animation framework for MiniGUI"
source "${srcdir}/myconfig.sh"
cd "${srcdir}/${pkgname%-git}"
./autogen.sh
./configure --prefix=/usr \
--disable-static $GOPTS
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
package_minigui-mgncs-git() {
pkgdesc="mGNCS provides a new control set and a new framework for MiniGUI apps."
source "${srcdir}/myconfig.sh"
cd "${srcdir}/${pkgname%-git}"
./autogen.sh
./configure --prefix=/usr \
--disable-static $GOPTS
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
package_minigui-mgncs4touch-git() {
pkgdesc="A set of mGNCS-compliant controls for devices with a touch screen."
source "${srcdir}/myconfig.sh"
cd "${srcdir}/${pkgname%-git}"
./autogen.sh
./configure --prefix=/usr \
--disable-static $GOPTS
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
package_minigui-mg-tools-git() {
pkgdesc="A modern and proven cross-platform window system for embedded systems or smart IoT devices."
source "${srcdir}/myconfig.sh"
cd "${srcdir}/${pkgname%-git}"
./autogen.sh
./configure --prefix=/usr \
--disable-static $GOPTS
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
package_minigui-mg-tests-git() {
pkgdesc="Test code of MiniGUI Core"
source "${srcdir}/myconfig.sh"
cd "${srcdir}/${pkgname%-git}"
./autogen.sh
./configure --prefix=/usr \
--disable-static $GOPTS
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
package_minigui-mg-samples-git() {
pkgdesc="Basic Samples for MiniGUI Core and Key MiniGUI Components."
source "${srcdir}/myconfig.sh"
cd "${srcdir}/${pkgname%-git}"
./autogen.sh
./configure --prefix=/usr \
--disable-static $GOPTS
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
package_minigui-mg-demos-git() {
pkgdesc="A set of demos as supplements of cell-phone-ux-demo"
source "${srcdir}/myconfig.sh"
cd "${srcdir}/${pkgname%-git}"
./autogen.sh
./configure --prefix=/usr \
--disable-static $GOPTS
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
package_minigui-cell-phone-ux-demo-git() {
pkgdesc="This UX demo shows the new features of MiniGUI core, mGEff, mGNCS, and mGNCS4Touch components."
source "${srcdir}/myconfig.sh"
cd "${srcdir}/${pkgname%-git}"
./autogen.sh
./configure --prefix=/usr \
--disable-static $GOPTS
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
package_minigui-res-git() {
pkgdesc="Resources package for MiniGUI"
source "${srcdir}/myconfig.sh"
cd "${srcdir}/${pkgname%-git}"
./autogen.sh
./configure --prefix=/usr \
--disable-static $GOPTS
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
package_minigui-docs-git() {
pkgdesc="Documents for MiniGUI Core and MiniGUI Components."
install -dm0755 ${pkgdir}/usr/share/doc
cp -rv "${srcdir}"/${pkgname%-git} "${pkgdir}"/usr/share/doc/
}
package_minigui-git() {
pkgdesc="A modern and proven cross-platform window system for embedded systems or smart IoT devices."
depends=(minigui-{mgutils,mgplus,mgeff,mgncs,mgncs4touch,mg-tools,mg-tests,mg-samples,mg-demos,cell-phone-ux-demo,res,docs})
source "${srcdir}/myconfig.sh"
cd "${srcdir}/${pkgbase}"
./autogen.sh
./configure --prefix=/usr \
--disable-static $GOPTS
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
编译时还是报错
可以参考下 build-minigui-5.0 中的配置和构建脚本。
更新 PKGBUILD 后
# Maintainer: taotieren <admin@taotieren.com>
pkgbase=minigui-git
pkgname=(minigui{,-{mgutils,mgplus,mgeff,mgncs,chipmunk,mgncs4touch,mg-tools,mg-tests,mg-samples,mg-demos,cell-phone-ux-demo,res,docs,ministudo}}-git)
pkgver=5.0.11.r12.g0d1f1f02
pkgrel=1
arch=('x86_64')
_url="https://github.com/VincentWei"
url="${_url}/MiniGUI"
license=('GPLv3')
depends=(
freetype2
gtk2
harfbuzz
libdrm
libevdev
libjpeg-turbo
libtool
libinput
libwebp
libxml2
libpng
kmod
mtdev
openssl
util-linux
sqlite
systemd
xorg-server-xvfb
zlib)
optdepends=()
makedepends=(git
autoconf
automake
cmake
make
pkgconf)
backup=()
options=('!strip')
install=
source=("${pkgbase}::git+${url}.git"
"minigui-mgutils::git+${_url}/mgutils.git"
"minigui-mgplus::git+${_url}/mgplus.git"
"minigui-mgeff::git+${_url}/mgeff.git"
"minigui-mgncs::git+${_url}/mgncs.git"
"minigui-mgncs4touch::git+${_url}/mgncs4touch.git"
"minigui-mg-tools::git+${_url}/mg-tools.git"
"minigui-mg-tests::git+${_url}/mg-tests.git"
"minigui-mg-samples::git+${_url}/mg-samples.git"
"minigui-mg-demos::git+${_url}/mg-demos.git"
"minigui-chipmunk::git+${_url}/chipmunk.git"
"minigui-cell-phone-ux-demo::git+${_url}/cell-phone-ux-demo.git"
"minigui-res::git+${_url}/minigui-res.git"
"minigui-docs::git+${_url}/minigui-docs.git"
"minigui-ministudio::git+https://github.com/FMSoftCN/ministudo-guibuilder.git")
sha256sums=('SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP')
pkgver() {
cd "${srcdir}/${pkgbase}"
git describe --long --tags | sed 's/ver-//g;s/\([^-]*-g\)/r\1/;s/-/./g'
}
package_minigui-mgutils-git() {
pkgdesc="A component of MiniGUI, provides users with a number of common dialog templates"
url="${_url}/mgutils"
depends=(minigui)
provides=(${pkgname%-git})
conflicts=(${pkgname%-git})
cd "${srcdir}/${pkgname%-git}"
./autogen.sh
./configure --prefix=/usr \
--disable-static \
--with-targetname=mstudio \
--with-libsuffix=msd
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
package_minigui-mgplus-git() {
pkgdesc="A MiniGUI component which provides support for advanced 2D graphics functions"
url="${_url}/mgplus"
depends=(minigui)
provides=(${pkgname%-git})
conflicts=(${pkgname%-git})
cd "${srcdir}/${pkgname%-git}"
./autogen.sh
./configure --prefix=/usr \
--disable-static \
--with-targetname=mstudio \
--with-libsuffix=msd
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
package_minigui-mgeff-git() {
pkgdesc="An animation framework for MiniGUI"
url="${_url}/mgeff"
depends=(
minigui
minigui-mgplus
)
provides=(${pkgname%-git})
conflicts=(${pkgname%-git})
cd "${srcdir}/${pkgname%-git}"
./autogen.sh
./configure --prefix=/usr \
--with-targetname=mstudio \
--with-libsuffix=msd
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
package_minigui-mgncs-git() {
pkgdesc="mGNCS provides a new control set and a new framework for MiniGUI apps."
url="${_url}/mgncs"
depends=(
minigui
minigui-mgutils
)
provides=(${pkgname%-git})
conflicts=(${pkgname%-git})
cd "${srcdir}/${pkgname%-git}"
sed -i 's|$(prefix)/etc|/etc|g;s| $(INSTALL_DATA)|# $(INSTALL_DATA)|g' etc/Makefile.am
./autogen.sh
./configure --prefix=/usr \
--disable-static \
--with-targetname=mstudio \
--with-libsuffix=msd \
--enable-guibuilder-support \
--enable-datasource \
--enable-old-mledit \
--enable-texteditor
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
package_minigui-chipmunk-git() {
pkgdesc="Chipmunk is a simple, lightweight, fast and portable 2D rigid body physics library written in C. "
url="${_url}/chipmunk"
depends=(
cmake
gtk2
)
provides=(${pkgname%-git} chipmunk)
conflicts=(${pkgname%-git} chipmunk)
replaces=(chipmunk)
cd "${srcdir}/${pkgname%-git}"
# Ninja build
# see:https://wiki.archlinux.org/title/CMake_package_guidelines
# cmake -DCMAKE_BUILD_TYPE=Release \
cmake -DCMAKE_BUILD_TYPE=None \
-DCMAKE_INSTALL_PREFIX=/usr
make
make DESTDIR="$pkgdir" install
}
package_minigui-mgncs4touch-git() {
pkgdesc="A set of mGNCS-compliant controls for devices with a touch screen."
url="${_url}/mgncs4touch"
depends=(
minigui
minigui-mgutils
minigui-mgplus
minigui-mgeff
minigui-mgncs
minigui-chipmunk
)
provides=(${pkgname%-git})
conflicts=(${pkgname%-git})
cd "${srcdir}/${pkgname%-git}"
sed -i 's|$(prefix)/etc|/etc|g;s| $(INSTALL_DATA)|# $(INSTALL_DATA)|g' etc/Makefile.am
./autogen.sh
./configure --prefix=/usr \
--disable-static \
--with-targetname=mstudio \
--with-libsuffix=msd \
--enable-guibuilder-support
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
package_minigui-mg-tools-git() {
pkgdesc="A modern and proven cross-platform window system for embedded systems or smart IoT devices."
url="${_url}/mg-tools"
depends=(
freetype2
openssl
minigui
minigui-mgutils
)
provides=(${pkgname%-git})
conflicts=(${pkgname%-git})
cd "${srcdir}/${pkgname%-git}"
./autogen.sh
./configure --prefix=/usr
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
package_minigui-mg-tests-git() {
pkgdesc="Test code of MiniGUI Core"
url="${_url}/mg-tests"
depends=(
minigui
minigui-mgeff
)
provides=(${pkgname%-git})
conflicts=(${pkgname%-git})
cd "${srcdir}/${pkgname%-git}"
./autogen.sh
./configure --prefix=/usr
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
package_minigui-mg-samples-git() {
pkgdesc="Basic Samples for MiniGUI Core and Key MiniGUI Components."
url="${_url}/mg-samples"
depends=(
minigui
minigui-mgutils
minigui-mgplus
minigui-mgeff
minigui-mgncs
)
provides=(${pkgname%-git})
conflicts=(${pkgname%-git})
cd "${srcdir}/${pkgname%-git}"
./autogen.sh
./configure --prefix=/usr
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
package_minigui-mg-demos-git() {
pkgdesc="A set of demos as supplements of cell-phone-ux-demo"
url="${_url}/mg-demos"
depends=(
minigui
minigui-mgutils
minigui-mgplus
minigui-mgeff
minigui-mgncs
minigui-mgncs4touch
)
provides=(${pkgname%-git})
conflicts=(${pkgname%-git})
cd "${srcdir}/${pkgname%-git}"
./autogen.sh
./configure --prefix=/usr
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
package_minigui-cell-phone-ux-demo-git() {
pkgdesc="This UX demo shows the new features of MiniGUI core, mGEff, mGNCS, and mGNCS4Touch components."
url="${_url}/cell-phone-ux-demo"
depends=(
minigui
minigui-mgutils
minigui-mgplus
minigui-mgeff
minigui-mgncs
minigui-mgncs4touch
minigui-chipmunk
)
provides=(${pkgname%-git})
conflicts=(${pkgname%-git})
cd "${srcdir}/${pkgname%-git}"
sed -i 's|$(prefix)/bin/etc|/etc|g' etc/Makefile.am
./autogen.sh
./configure --prefix=/usr
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
package_minigui-res-git() {
pkgdesc="Resources package for MiniGUI"
url="${_url}/minigui-res"
depends=(minigui)
provides=(${pkgname%-git})
conflicts=(${pkgname%-git})
cd "${srcdir}/${pkgname%-git}"
sed -i 's|prefix = $(TOPDIR)/usr/local|prefix = $(prefix)|g' config.linux
./autogen.sh
./configure --prefix=/usr
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
package_minigui-docs-git() {
pkgdesc="Documents for MiniGUI Core and MiniGUI Components."
url="${_url}/minigui-docs"
depends=(minigui)
provides=(${pkgname%-git})
conflicts=(${pkgname%-git})
install -dm0755 ${pkgdir}/usr/share/doc
cp -rv "${srcdir}"/${pkgname%-git} "${pkgdir}"/usr/share/doc/
}
package_minigui-git() {
pkgdesc="A modern and proven cross-platform window system for embedded systems or smart IoT devices."
url="${_url}/MiniGUI"
# depends=(
# # chipmunk
# )
provides=(${pkgname%-git})
conflicts=(${pkgname%-git})
cd "${srcdir}/${pkgbase}"
sed -i 's|$(prefix)/etc|/etc|g' etc/Makefile.am
./autogen.sh
./configure \
$prefix_config \
--prefix=/usr \
--disable-static \
--with-targetname=mstudio \
--with-libsuffix=msd \
--enable-pcxvfb \
--disable-qvfbial \
--disable-consoleial \
--disable-dummyial \
--disable-autoial \
--disable-videodummy \
--disable-videoqvfb \
--disable-videofbcon \
--disable-videocommlcd \
--with-ttfsupport=ft2 \
--enable-qpfsupport \
--enable-upfsupport \
--enable-gb18030support \
--enable-unicodesupport \
--enable-aboutdlg \
--disable-savescreen \
--disable-splash \
--disable-screensaver \
--with-runmode=ths \
--enable-ctrlstatic \
--enable-ctrlbutton \
--enable-ctrlsledit \
--enable-ctrlbidisledit \
--enable-ctrlnewtextedit \
--enable-ctrllistbox \
--enable-ctrlpgbar \
--enable-ctrlcombobox \
--enable-ctrlpropsheet \
--enable-ctrltrackbar \
--enable-ctrlscrollbar \
--enable-ctrlnewtoolbar \
--enable-ctrlmenubtn \
--enable-ctrlscrollview \
--enable-ctrltextedit \
--enable-ctrlmonthcal \
--enable-ctrltreeview \
--enable-ctrltreeview-rdr \
--enable-ctrlspinbox \
--enable-ctrlcoolbar \
--enable-ctrllistview \
--enable-ctrliconview \
--enable-ctrlgridview \
--enable-ctrlanimation \
--disable-watermark \
--disable-pngsupport \
--disable-videodrm
sed -i 's|/local||g' etc/mvfb.cfg
sed -i 's|/local||g' etc/MiniGUI.cfg
make -j$NR_JOBS
make DESTDIR="$pkgdir" install
}
package_minigui-ministudo-git() {
pkgdesc="GUIBuilder of miniStudio."
depends=(minigui{,-{mgutils,mgplus,mgeff,mgncs,mgncs4touch,mg-tools,mg-tests,mg-samples,mg-demos,cell-phone-ux-demo,chipmunk,res,docs}})
url="https://github.com/FMSoftCN/ministudo-guibuilder"
provides=(${pkgname%-git})
conflicts=(${pkgname%-git})
# build GUIBuilder
cd "${srcdir}/${pkgname%-git}"
./autogen.sh
./configure --prefix=/usr \
--enable-werror
make
make DESTDIR="$pkgdir" install
# resourse
cd "${srcdir}/${pkgname%-git}/etc"
make
make DESTDIR="$pkgdir" install
# tools/mgcfg-trans
cd "${srcdir}/${pkgname%-git}/tools/mgcfg-trans"
rm -f mgcfg-trans
gcc lex.yy.c -o mgcfg-trans
install -Dm755 mgcfg-trans -t $pkgdir/bin/
# tools/res2c
cd "${srcdir}/${pkgname%-git}/tools/res2"
make clean
make
install -Dm755 cfg2c.py -t $pkgdir/bin/
install -Dm755 res2c -t $pkgdir/bin/
}
编译报错如下
==> Starting package_minigui-mg-tools-git()...
configure.ac:8: installing './compile'
configure.ac:21: installing './config.guess'
configure.ac:21: installing './config.sub'
configure.ac:5: installing './install-sh'
configure.ac:5: installing './missing'
bdf2rbf/Makefile.am: installing './depcomp'
configure.ac:14: warning: The macro `AC_HEADER_STDC' is obsolete.
configure.ac:14: You should run autoupdate.
./lib/autoconf/headers.m4:704: AC_HEADER_STDC is expanded from...
configure.ac:14: the top level
configure.ac:60: warning: The macro `ac_cv_prog_gcc' is obsolete.
configure.ac:60: You should run autoupdate.
./lib/autoconf/c.m4:440: ac_cv_prog_gcc is expanded from...
configure.ac:60: the top level
configure.ac:90: warning: AC_OUTPUT should be used without arguments.
configure.ac:90: You should run autoupdate.
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking whether make supports the include directive... yes (GNU style)
checking dependency style of gcc... gcc3
checking for g++... g++
checking whether the compiler supports GNU C++... yes
checking whether g++ accepts -g... yes
checking for g++ option to enable C++11 features... none needed
checking dependency style of g++... gcc3
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking for unistd.h... (cached) yes
checking for an ANSI C-conforming const... yes
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking whether lstat correctly handles trailing slash... yes
checking whether lstat accepts an empty string... no
checking for GNU libc compatible malloc... yes
checking for minigui/common.h... yes
checking for freetype/freetype.h... no
checking for openssl/md5.h... yes
checking for gcc options needed to detect all undeclared functions... none needed
checking whether __NOUNIX__ is declared... no
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for MINIGUI... yes
checking for MGUTILS... yes
checking for TT_FreeType_Version in -lttf... no
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating res/Makefile
config.status: creating tools/Makefile
config.status: creating font-tools/Makefile
config.status: creating mgcfg-trans/Makefile
config.status: creating inner-res-trans/Makefile
config.status: creating res2c/Makefile
config.status: creating ngux-tools/Makefile
config.status: creating product-id/Makefile
config.status: creating cryptool/Makefile
config.status: creating rbfeditor/Makefile
config.status: creating vbfeditor/Makefile
config.status: creating qpfeditor/Makefile
config.status: creating upfeditor/Makefile
config.status: creating image-dumper/Makefile
config.status: creating common/Makefile
config.status: creating ttf2qpf/Makefile
config.status: creating ttf2upf/Makefile
config.status: creating bdf2upf/Makefile
config.status: creating bdf2rbf/Makefile
config.status: executing depfiles commands
Making all in common
make[1]: Entering directory '/home/taotieren/git_clone/aur/minigui-git/src/minigui-mg-tools/common'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/taotieren/git_clone/aur/minigui-git/src/minigui-mg-tools/common'
Making all in tools
make[1]: Entering directory '/home/taotieren/git_clone/aur/minigui-git/src/minigui-mg-tools/tools'
gcc -DPACKAGE_NAME=\"mg-tools\" -DPACKAGE_TARNAME=\"mg-tools\" -DPACKAGE_VERSION=\"3.2.1\" -DPACKAGE_STRING=\"mg-tools\ 3.2.1\" -DPACKAGE_BUGREPORT=\"consult@minigui.com\" -DPACKAGE_URL=\"\" -DPACKAGE=\"mg-tools\" -DVERSION=\"3.2.1\" -DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_UNISTD_H=1 -DSTDC_HEADERS=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_UNISTD_H=1 -DLSTAT_FOLLOWS_SLASHED_SYMLINK=1 -DHAVE_MALLOC=1 -DHAVE_MINIGUI_COMMON_H=1 -DHAVE_OPENSSL_MD5_H=1 -DHAVE_DECL___NOUNIX__=0 -D_LANG_EN=1 -I. -march=x86-64-v3 -mtune=native -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -flto=auto -Wall -Wstrict-prototypes -pipe -MT bin2c.o -MD -MP -MF .deps/bin2c.Tpo -c -o bin2c.o bin2c.c
gcc -DPACKAGE_NAME=\"mg-tools\" -DPACKAGE_TARNAME=\"mg-tools\" -DPACKAGE_VERSION=\"3.2.1\" -DPACKAGE_STRING=\"mg-tools\ 3.2.1\" -DPACKAGE_BUGREPORT=\"consult@minigui.com\" -DPACKAGE_URL=\"\" -DPACKAGE=\"mg-tools\" -DVERSION=\"3.2.1\" -DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_UNISTD_H=1 -DSTDC_HEADERS=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_UNISTD_H=1 -DLSTAT_FOLLOWS_SLASHED_SYMLINK=1 -DHAVE_MALLOC=1 -DHAVE_MINIGUI_COMMON_H=1 -DHAVE_OPENSSL_MD5_H=1 -DHAVE_DECL___NOUNIX__=0 -D_LANG_EN=1 -I. -march=x86-64-v3 -mtune=native -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -flto=auto -Wall -Wstrict-prototypes -pipe -MT bdf2bin.o -MD -MP -MF .deps/bdf2bin.Tpo -c -o bdf2bin.o bdf2bin.c
gcc -DPACKAGE_NAME=\"mg-tools\" -DPACKAGE_TARNAME=\"mg-tools\" -DPACKAGE_VERSION=\"3.2.1\" -DPACKAGE_STRING=\"mg-tools\ 3.2.1\" -DPACKAGE_BUGREPORT=\"consult@minigui.com\" -DPACKAGE_URL=\"\" -DPACKAGE=\"mg-tools\" -DVERSION=\"3.2.1\" -DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_UNISTD_H=1 -DSTDC_HEADERS=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_UNISTD_H=1 -DLSTAT_FOLLOWS_SLASHED_SYMLINK=1 -DHAVE_MALLOC=1 -DHAVE_MINIGUI_COMMON_H=1 -DHAVE_OPENSSL_MD5_H=1 -DHAVE_DECL___NOUNIX__=0 -D_LANG_EN=1 -I. -march=x86-64-v3 -mtune=native -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -flto=auto -Wall -Wstrict-prototypes -pipe -MT font.o -MD -MP -MF .deps/font.Tpo -c -o font.o font.c
bin2c.c:80:1: warning: function declaration isn’t a prototype [-Wstrict-prototypes]
80 | error (msg1, msg2, msg3)
| ^~~~~
bin2c.c:102:1: warning: function declaration isn’t a prototype [-Wstrict-prototypes]
102 | my_strrchr (s, c)
| ^~~~~~~~~~
bin2c.c: In function ‘add_export’:
bin2c.c:213:20: warning: implicit declaration of function ‘isalnum’ [-Wimplicit-function-declaration]
213 | if(isalnum(begin[i]))
| ^~~~~~~
bin2c.c:42:1: note: include ‘<ctype.h>’ or provide a declaration of ‘isalnum’
41 | #include <string.h>
+++ |+#include <ctype.h>
42 |
bin2c.c: In function ‘parser_args’:
bin2c.c:248:17: error: format not a string literal and no format arguments [-Werror=format-security]
248 | printf(usage);
| ^~~~~~
bin2c.c:264:33: error: format not a string literal and no format arguments [-Werror=format-security]
264 | printf(usage);
| ^~~~~~
bin2c.c: At top level:
bin2c.c:278:1: warning: function declaration isn’t a prototype [-Wstrict-prototypes]
278 | main (argc, argv)
| ^~~~
bin2c.c: In function ‘main’:
bin2c.c:289:7: warning: unused variable ‘position’ [-Wunused-variable]
289 | int position;
| ^~~~~~~~
bin2c.c:288:9: warning: unused variable ‘ptr’ [-Wunused-variable]
288 | char *ptr;
| ^~~
bin2c.c:283:8: warning: unused variable ‘suffix’ [-Wunused-variable]
283 | char suffix[SUFFIXLEN];
| ^~~~~~
bin2c.c: At top level:
bin2c.c:181:12: warning: ‘file_list’ defined but not used [-Wunused-variable]
181 | static int file_list;
| ^~~~~~~~~
bin2c.c:102:1: warning: ‘my_strrchr’ defined but not used [-Wunused-function]
102 | my_strrchr (s, c)
| ^~~~~~~~~~
bdf2bin.c: In function ‘main’:
bdf2bin.c:60:11: warning: variable ‘font’ set but not used [-Wunused-but-set-variable]
60 | u_char *font;
| ^~~~
bdf2bin.c: In function ‘FontLoadBdf’:
bdf2bin.c:290:11: warning: pointer targets in returning ‘char *’ from a function with return type ‘u_char *’ {aka ‘unsigned char *’} differ in signedness [-Wpointer-sign]
290 | return(fdata);
| ^
bdf2bin.c:108:33: warning: unused variable ‘code’ [-Wunused-variable]
108 | int num, width, high, i, j, code = 0, pitch;
| ^~~~
bdf2bin.c:107:16: warning: unused variable ‘ch2’ [-Wunused-variable]
107 | u_char ch, ch2;
| ^~~
bdf2bin.c:107:12: warning: unused variable ‘ch’ [-Wunused-variable]
107 | u_char ch, ch2;
| ^~
bdf2bin.c:231:17: warning: ignoring return value of ‘fgets’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
231 | fgets(line, 256, fp);
| ^~~~~~~~~~~~~~~~~~~~
mv -f .deps/font.Tpo .deps/font.Po
cc1: some warnings being treated as errors
make[1]: *** [Makefile:385: bin2c.o] Error 1
make[1]: *** Waiting for unfinished jobs....
mv -f .deps/bdf2bin.Tpo .deps/bdf2bin.Po
make[1]: Leaving directory '/home/taotieren/git_clone/aur/minigui-git/src/minigui-mg-tools/tools'
make: *** [Makefile:364: all-recursive] Error 1
==> ERROR: A failure occurred in package_minigui-mg-tools-git().
Aborting...
minigui-git
PKGBUILDbuild log