
%Q6cmake \
    __qt6_cmake() \
    { \
	export PATH=%_qt6_bindir:$PATH; \
	export QTDIR=%_qt6_prefix; \
	export CFLAGS="${CFLAGS:-%optflags}"; \
	export CXXFLAGS="${CXXFLAGS:-%optflags}"; \
	pushd BUILD; \
	cmake .. \\\
%if "%__qt6_build_tool" == "ninja" \
        -GNinja \\\
%else \
        -G"Unix Makefiles" \\\
%endif \
	-DCMAKE_INSTALL_PREFIX=%prefix \\\
	-DINSTALL_ARCHDATADIR=%_qt6_archdatadir \\\
	-DINSTALL_BINDIR=%_qt6_bindir \\\
	-DINSTALL_DATADIR=%_qt6_datadir \\\
	-DINSTALL_DOCDIR=%_qt6_docdir \\\
	-DINSTALL_EXAMPLESDIR=%_qt6_examplesdir \\\
	-DINSTALL_INCLUDEDIR=%_qt6_headerdir \\\
	-DINSTALL_QMLDIR=%_qt6_qmldir \\\
	-DINSTALL_LIBDIR=%_qt6_libdir \\\
	-DINSTALL_LIBEXECDIR=%_qt6_libexecdir \\\
	-DINSTALL_PLUGINSDIR=%_qt6_plugindir \\\
	-DINSTALL_SYSCONFDIR=%_qt6_sysconfdir \\\
	-DINSTALL_TRANSLATIONSDIR=%_qt6_translationdir \\\
	-DINSTALL_MKSPECSDIR=%_qt6_mkspecsdir \\\
	"$@" \
	popd \
    } \
    mkdir -p BUILD; \
    __qt6_cmake

%Q6make \
    __qt6_make() \
    { \
	cmake --build BUILD %_smp_mflags --verbose "$@" \
    } \
    __qt6_make

%Q6build \
    __qt6_build() \
    { \
        %Q6cmake "$@" \
        %Q6make \
    } \
    __qt6_build

%cmake_install_qt6_base \
    __qt6_install() \
    { \
	cmake --install BUILD --prefix %buildroot/%prefix "$@" \
    } \
    __qt6_install

%Q6install_qt \
    __qt6_install() \
    { \
	%cmake_install_qt6_base \
	%install_qt6_post_qt \
	%install_qt6_post_common \
    } \
    __qt6_install

%Q6install \
    __qt6_install() \
    { \
	%cmake_install_qt6_base \
	%install_qt6_post_user \
	%install_qt6_post_common \
    } \
    __qt6_install


%qmake_qt6 \
    __qmake_qt6() \
    { \
        export CPPFLAGS="%optflags %optflags_shared" ; \\\
        %_qt6_qmake \\\
        QMAKE_CFLAGS="%optflags %optflags_shared" \\\
        QMAKE_CXXFLAGS="%optflags %optflags_shared" \\\
        "$@" \
    } \
    __qmake_qt6

%install_qt6_base \
    __install_qt6_base() \
    { \
	make install INSTALL_ROOT=%buildroot "$@" \
    }\
    __install_qt6_base

%install_qt6_post_user \
    __install_qt6_post_user() \
    { \
	mkdir -p %buildroot/%_bindir \
	ls -1d %buildroot/%_qt6_bindir/* 2>/dev/null | while read f ; do \
	    [ -f "$f" ] || continue \
	    fname=`basename $f` \
	    mv $f %buildroot/%_bindir/${fname} \
	    ln -s `relative %_bindir/${fname} %_qt6_bindir/$fname` %buildroot/%_qt6_bindir/$fname \
	done \
    }\
    __install_qt6_post_user

%install_qt6_post_qt \
    __install_qt6_post_qt() \
    { \
	mkdir -p %buildroot/%_bindir \
	ls -1d %buildroot/%_qt6_bindir/* 2>/dev/null | while read f ; do \
	    [ -f "$f" ] || continue \
	    fname=`basename $f` \
	    mv $f %buildroot/%_bindir/${fname}-%_qt6 \
	    ln -s `relative %_bindir/${fname}-%_qt6 %_qt6_bindir/$fname-%_qt6` %buildroot/%_qt6_bindir/$fname \
	    if echo "$fname" | grep -qe '6$'  ; then \
		ln -s $fname-%_qt6 %buildroot/%_bindir/$fname \
	    fi \
	done \
        ls -1d %buildroot/%_qt6_libdir/*.{a,so,prl} 2>/dev/null | \
        while read f ; do \
            [ -d "$f" ] && continue \
            fname=`basename $f` \
            mkdir -p %buildroot/%_qt6_libdatadir \
            ln -s `relative $f %buildroot/%_qt6_libdatadir/$fname` %buildroot/%_qt6_libdatadir/$fname ||: \
        done \
    }\
    __install_qt6_post_qt

%install_qt6_post_common \
    __install_qt6_post_common() \
    { \
	if [ -d %buildroot/%_qt6_libdir ] ; then \
	    pushd %buildroot/%_qt6_libdir \
	    ls -1 *prl 2>/dev/null | while read prl_file ; do \
		sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' ${prl_file} \
		if [ -f "$(basename ${prl_file} .prl).so" ]; then \
		    sed -i -e '/^QMAKE_PRL_LIBS/d' ${prl_file} \
		fi \
	    done \
	    popd \
	fi \
    }\
    __install_qt6_post_common

%install_qt6_qt \
    __install_qt6_qt() \
    { \
	%install_qt6_base "$@" \
	%install_qt6_post_qt \
	%install_qt6_post_common \
    }\
    __install_qt6_qt

%install_qt6 \
    __install_qt6() \
    { \
	%install_qt6_base "$@" \
	%install_qt6_post_user \
	%install_qt6_post_common \
    }\
    __install_qt6
