#
# Conditional build:
%bcond_with bootstrap # build boostrap
+%bcond_without verbose # disable verbose build
-%define svnrev 2577
+%define ver 0.1.9998
+%define svnrev 2700
Summary: A cross-platform build environment
Name: kBuild
-Version: 0.1.9998
+Version: %{ver}.%{svnrev}
Release: 1
Group: Development/Tools
# Most tools are from NetBSD, some are from FreeBSD, and make and sed are from GNU
License: BSD and GPL v2+
URL: http://svn.netlabs.org/kbuild
Source0: %{name}-r%{svnrev}.tar.bz2
-# Source0-md5: d2ae623626f1e464333c384a2465a77a
+# Source0-md5: 7c394fbe248f903d0bc1aabd235dc0a9
Source1: get-source.sh
Patch0: %{name}-0.1.3-escape.patch
Patch1: %{name}-0.1.5-dprintf.patch
Patch2: %{name}-0.1.5-pthread.patch
+Patch3: re_string_fetch_byte_case-not-pure-attribute.patch
BuildRequires: acl-devel
BuildRequires: autoconf
BuildRequires: automake
- Non-recursive makefile method by using sub-makefiles
%prep
-%setup -q -n %{name}
+%setup -qc
+mv %{name} .tmp; mv .tmp/* .
%patch0 -p1
%patch1 -p1
%patch2 -p1
+%patch3 -p1
cat > SvnInfo.kmk << EOF
KBUILD_SVN_REV := %{svnrev}
%{__sed} -i -e 's@_LDFLAGS\.%{kbuild_arch}*.*=@& %{rpmldflags}@g' Config.kmk
%build
-%define bootstrap_mflags %{?_smp_mflags} \\\
- CC="%{__cc}" \\\
- TOOL_GCC3_CC="%{__cc}" \\\
- CFLAGS="%{rpmcflags}" \\\
- KBUILD_VERBOSE=2 \\\
- KBUILD_VERSION_PATCH=999
-
-%define mflags %{bootstrap_mflags} \\\
- NIX_INSTALL_DIR=%{_prefix} \\\
- BUILD_TYPE=release \\\
- MY_INST_MODE=0644 \\\
+%define bootstrap_mflags %{?_smp_mflags} %{?with_verbose:KBUILD_VERBOSE=2} \\\
+ CC="%{__cc}" TOOL_GCC3_CC="%{__cc}" CFLAGS="%{rpmcflags}"
+
+%define mflags %{bootstrap_mflags} \\\
+ NIX_INSTALL_DIR=%{_prefix} \\\
+ BUILD_TYPE=release \\\
+ MY_INST_MODE=0644 \\\
MY_INST_BIN_MODE=0755
ver=$(awk '/^KBUILD_VERSION =/{print $3}' Config.kmk)
-test "$ver" = %{version}
+test "$ver" = %{ver}
+%if %{with bootstrap}
cd src/kmk
%{__libtoolize}
%{__aclocal} -I config
%{__automake}
cd ../..
-%if %{with bootstrap}
kBuild/env.sh --full \
%{__make} -f bootstrap.gmk %{bootstrap_mflags}
+
+kBuild/env.sh kmk clean
%endif
-kBuild/env.sh kmk %{mflags} rebuild
+kBuild/env.sh kmk %{mflags} all \
+ PATH_INS=$RPM_BUILD_ROOT
%install
rm -rf $RPM_BUILD_ROOT
-export KBUILD_VERBOSE=2
kBuild/env.sh kmk %{mflags} install \
PATH_INS=$RPM_BUILD_ROOT