Switch to CMake. Allows to simplify the Makefile.
Replaced InstallDev section with CMAKE_INSTALL.
Added PKG_BUILD_PARALLEL for faster compilation.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
On the OpenWrt build bots the compile currently fails:
cc1: error: /builder/shared-workdir/build/sdk/staging_dir/target-arm_cortex-a5+vfpv4_musl_eabi/include: No such file or directory [-Werror=missing-include-dirs]
cc1: all warnings being treated as errors
(Or rather, it _would_ fail like this if libmbim compiled successfully.)
The directory in question gets added to TARGET_CPPFLAGS by rules.mk.
Nothing usually gets installed to that directory, so unsurprisingly it
may not exist on the build bots.
On first glance this problem cannot be reproduced. But once autoreconf
is called this becomes possible.
If called without "--enable-more-warnings", configure adds -Werror to
the flags. This commit adds "--enable-more-warnings=yes" to the build.
This way the extra warnings are kept in place, but they aren't turned
into errors no more.
"PKG_FIXUP:=autoreconf" is also added so that it's easier to forecast
build failures on the build bots when preparing future pull request.
Last but not least "--disable-silent-rules" is added, because more
output is usually welcome for debugging, be it on the build bots or at
home/the office.
Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
On the OpenWrt build bots the compile currently fails:
make[8]: Entering directory '/builder/shared-workdir/build/sdk/build_dir/target-arm_cortex-a5+vfpv4_musl_eabi/libmbim-1.20.0/src/common'
CC libmbim_common_la-mbim-common.lo
cc1: error: /builder/shared-workdir/build/sdk/staging_dir/target-arm_cortex-a5+vfpv4_musl_eabi/include: No such file or directory [-Werror=missing-include-dirs]
cc1: all warnings being treated as errors
The directory in question gets added to TARGET_CPPFLAGS by rules.mk.
Nothing usually gets installed to that directory, so unsurprisingly it
may not exist on the build bots.
On first glance this problem cannot be reproduced. But once autoreconf
is called this becomes possible.
If called without "--enable-more-warnings", configure adds -Werror to
the flags. This commit adds "--enable-more-warnings=yes" to the build.
This way the extra warnings are kept in place, but they aren't turned
into errors no more.
"PKG_FIXUP:=autoreconf" is also added so that it's easier to forecast
build failures on the build bots when preparing future pull request.
Last but not least "--disable-silent-rules" is added, because more
output is usually welcome for debugging, be it on the build bots or at
home/the office.
Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
Currently only xml2-config is installed, for both the normal libxml2
package as well as the host package. The problem with that is that due
to multilib considerations the build host may have xml2-config installed
with a host triplet prefix, like x86_64-pc-linux-gnu-xml2-config (and
xml2-config as a symbolic link to it). Gentoo for instance sets it up
like this.
Packages may actually search for a prefixed xml2-config before searching
for xml2-config. An example would be Asterisk:
checking for x86_64-pc-linux-gnu-xml2-config... /usr/bin/x86_64-pc-linux-gnu-xml2-config
This then introduces wrong information into the build, for instance
bad includes:
~/tmp/openwrt $ /usr/bin/x86_64-pc-linux-gnu-xml2-config --cflags
-I/usr/include/libxml2
When the intention is to use OpenWrt's own (host) libxml2 one would like
to see this output used instead:
~/tmp/openwrt $ ./staging_dir/hostpkg/bin/xml2-config --cflags
-I/home/sk/tmp/openwrt/staging_dir/hostpkg/include/libxml2
This commit addresses this by installing xml2-config with a suitable
prefix and creating a symbolic link xml2-config. This is done for both
the host package and the normal package. The latter also needs this fix
because the target may use the same triplet as the host system (for
instance x86_64 cross-compiling for x86_64).
Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
The host build requires libxml2-dev. This commit adds the dependency for
libxml2/host, as the host system may not have it installed. This also
avoids using the host's xml2-config (in /usr/bin for instance) while
linking to libraries in staging_dir/hostpkg.
ldd staging_dir/hostpkg/bin/xsltproc | grep xml2
libxml2.so.2 => /home/sk/tmp/openwrt/staging_dir/hostpkg/lib/libxml2.so.2 (0x00007fcc0644c000)
Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
Commit 218f0229a4 added a workaround for a
problem. The host compile overwrote xml2-config in
"$(STAGING_DIR)/host/bin". The workaround fixed the issue for regular
target packages. But it didn't leave a proper xml2-config script for
host packages.
Times have changed. Host packages are now installed in
"$(STAGING_DIR_HOSTPKG). So there is no longer any danger of the host
package overwriting the xml2-config script for target packages. So
revert the mentioned commit, leaving us with two proper xml2-config
scripts, one for target package builds and one for host package builds.
Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
nls.mk is needed.
explicitly disabled udev. It's not available for use.
Added autoreconf to try to fix the buildbots.
Minor cleanups.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Release 0.9.3:
-PLAIN mechanism is used only when no other mechanisms are supported
-Legacy authentication is disabled by default, can be enabled with connection flag
XMPP_CONN_FLAG_LEGACY_AUTH
-Session is not established if it is optional
-Fixed a bug causing a reused connection not to cleanup properly
-Improved debug logging in OpenSSL module
-Few memory leaks fixed
Also fix some build flag
Signed-off-by: Chih-Wei Chen <changeway@gmail.com>
In other news:
- adds ABI_VERSION
- prefers INSTALL_DATA over CP
- removes gratuitous trailing slashes
Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
Also added the capability to use uclibcxx instead of libstdcpp.
Several size optimizations.
Fixed up Makefile to be up to standards.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
glib2 no longer depends on its host build. Added here.
Fixed license information.
Added PKG_BUILD_PARALLEL:=1 for faster compilation.
Removed gstreamer1-libs dependency as gst1-plugins-base includes it.
Other cleanups for consistency between packages.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
This removes lines that set PKG_BUILD_DIR when the set value is no
different from the default value.
Specifically, the line is removed if the assigned value is:
* $(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
The default PKG_BUILD_DIR was updated[1] to incorporate BUILD_VARIANT
if it is set, so now this is identical to the default value.
* $(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_SOURCE_SUBDIR)
if PKG_SOURCE_SUBDIR is set to $(PKG_NAME)-$(PKG_VERSION), making it
the same as the previous case
* $(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
This is the same as the default PKG_BUILD_DIR when there is no
BUILD_VARIANT.
* $(BUILD_DIR)/[name]-$(PKG_VERSION)
where [name] is a string that is identical to PKG_NAME
[1]: https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=e545fac8d968864a965edb9e50c6f90940b0a6c9
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
thread is only used when the C++ mutex header is missing. AFAIK, this is
the case on Windows and not on Linux. Certainly not in OpenWrt.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
The facebook people have been working on removing Boost dependencies from
their projects. This is the current state.
Signed-off-by: Rosen Penev <rosenp@gmail.com>