Sisyphus repositório
Última atualização: 1 outubro 2023 | SRPMs: 18631 | Visitas: 37045677
en ru br
ALT Linux repositórios
S:11.0.3-alt1
5.0: 1.1.0-alt2

Group :: Development/Tools
RPM: qt-creator

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs e FR  Repocop 

%define _unpackaged_files_terminate_build 1

# for llvm built with clang we should use lld due thinLTO bitcode

# in static libs
# otherwise use bfd/gold linker
%ifnarch x86_64 ppc64le
%def_without lld
%global optflags_lto %optflags_lto -ffat-lto-objects
%else
%def_with lld
%global optflags_lto %nil
%endif

%def_with ClangCodeModel
%define qt_version 6.2.4

%ifarch %not_qt6_qtwebengine_arches
%def_disable qtwebengine
%else
%def_enable qtwebengine
%endif

%add_findreq_skiplist  %_datadir/qtcreator/*
%add_findprov_skiplist %_datadir/qtcreator/*

Name:    qt-creator
Version: 11.0.3
Release: alt1

Summary: Cross-platform IDE for Qt
License: GPL-3.0 with Qt-GPL-exception-1.0 and MIT and LGPL-2.0 and LGPL-2.1 and LGPL-3.0 and BSD-3-Clause and BSL-1.0 and ALT-Public-Domain
Group:   Development/Tools

URL: http://qt-project.org/wiki/Category:Tools::QtCreator
VCS: git://code.qt.io/qt-creator/qt-creator.git
Packager: Andrey Cherepanov <cas at altlinux.org>

ExcludeArch: %ix86 armh

Source: %name-%version.tar
Source1: submodules.tar

Patch0: %name-%version-%release.patch

Provides: qtcreator = %EVR
Obsoletes: qtcreator < %EVR
Provides: qt-creator-clangcodemodel = %EVR
Obsoletes: qt-creator-clangcodemodel < %EVR

BuildRequires(pre): cmake
BuildRequires(pre): rpm-build-ninja
BuildRequires(pre): qt6-base-devel >= %qt_version
BuildRequires(pre): rpm-build-python3
BuildRequires(pre): rpm-macros-qt6-webengine
BuildRequires: gcc-c++
BuildRequires: qt6-designer >= %qt_version
BuildRequires: qt6-declarative-devel >= %qt_version
BuildRequires: qt6-tools-devel >= %qt_version
BuildRequires: qt6-serialport-devel
%if_enabled qtwebengine
BuildRequires: qt6-webengine-devel >= %qt_version
%endif
BuildRequires: qt6-svg-devel >= %qt_version
BuildRequires: qt6-5compat qt6-5compat-devel >= %qt_version
BuildRequires: qt6-shadertools-devel >= %qt_version
BuildRequires: qt6-quicktimeline qt6-quicktimeline-devel >= %qt_version
BuildRequires: kf5-syntax-highlighting-devel
%if_with ClangCodeModel
BuildRequires: clang
BuildRequires: clang-devel
BuildRequires: clang-tools
BuildRequires: clangd
%if_with lld
BuildRequires: lld /proc
%endif
BuildRequires: llvm-devel
%endif
BuildRequires: libsystemd-devel
BuildRequires: elfutils-devel
BuildRequires: libzstd-devel
BuildRequires: zlib-devel
BuildRequires: libxml2-devel
# Qbs documentation
#BuildRequires: python3-module-lxml
#BuildRequires: python3-module-bs4
# Missing build requirements
#BuildRequires: litehtml-devel
BuildRequires: libffi-devel
BuildRequires: xml-utils
BuildRequires: python3-module-lxml
BuildRequires: python3-module-beautifulsoup4

Requires: %name-core = %EVR
# Add Qt5 build environment to build Qt project
Requires: qt6-base-devel
Requires: qt6-tools

%ifarch %e2k
# error: cpio archive too big - 4446M
%global __find_debuginfo_files %nil
%endif

%add_python3_req_skip dmgbuild

%description
Qt Creator (previously known as Project Greenhouse) is a new, lightweight,
cross-platform integrated  development environment (IDE) designed to make
development with the Qt application framework even faster and easier.

This package contains IDE and Qt5 build environment.

%package core
Summary: Cross-platform IDE for Qt
Group:   Development/Tools
Requires: %name-data = %EVR
Provides: qbs = 1.14.0
Obsoletes: qbs < 1.14.0
Requires: qt6-translations

%description core
Qt Creator (previously known as Project Greenhouse) is a new, lightweight,
cross-platform integrated  development environment (IDE) designed to make
development with the Qt application framework even faster and easier.

This is core part of IDE without Qt5 build environment.

%package doc
Summary: %name docs
Group: Documentation
%if_enabled qtwebengine
Requires: %name
%endif
Requires: qt6-base-doc
Requires: qt6-tools

%description doc
Documentation for %name

%package data
Summary: Data files for %name
Group: Development/Tools
%if_enabled qtwebengine
Requires: %name-core
%endif

%description data
Data files for %name

%prep
%setup
# Unpack submodules content
tar xf %SOURCE1
#sed -i 's,tools\/qdoc3,bin,' doc/doc.pri
#subst 's,share\/doc\/qtcreator,share\/qtcreator\/doc,' doc/doc.pri src/plugins/help/helpplugin.cpp
%patch0 -p1
%ifarch %e2k
# strip UTF-8 BOM, lcc 1.23 won't ignore it yet
find src -type f -print0 -name '*.cpp' -o -name '*.h' |
xargs -r0 sed -ri 's,^\xEF\xBB\xBF,,'
%endif
# Use Python3 for Python scripts
subst 's at #!.*python[23]\? at #!%__python3 at ' `find . -name \*.py` \
src/libs/qt-breakpad/qtbreakpadsymbols

%build
export QTDIR=%_qt6_prefix
export PATH="%{_qt6_bindir}:$PATH"
%ifarch %e2k
# fool sqlite into building with lcc
sed -i 's,^QMAKE_CFLAGS_WARN_ON.*$,& -D__INTEL_COMPILER,' src/libs/3rdparty/sqlite/sqlite.pri
%endif
%if_with ClangCodeModel
export LLVM_INSTALL_DIR="%_prefix"
%remove_optflags -frecord-gcc-switches
%endif

%cmake -GNinja \
   -Wno-dev \
   -DWITH_DOCS=ON \
   -DBUILD_QBS=ON \
   -Djournald=ON \
   -DBUILD_DEVELOPER_DOCS=OFF \
   -DCMAKE_INSTALL_LIBDIR=%_lib \
   -DCMAKE_EXE_LINKER_FLAGS="$LDFLAGS -Wl,-rpath,%_libdir/qtcreator -Wl,-rpath,%_libdir/qtcreator/plugins" \
   -DCMAKE_SHARED_LINKER_FLAGS="$LDFLAGS %{?_with_lld:-fuse-ld=lld -Wl,--build-id=sha1} -Wl,-rpath,%_libdir/qtcreator -Wl,-rpath,%_libdir/qtcreator/plugins"

%ninja_build -C "%_cmake__builddir"
%ninja_build -C "%_cmake__builddir" qch_docs

%install
%ninja_install -C "%_cmake__builddir"
# Unable to install documentstion using ninja-build
#%%ninja_install -C "%_cmake__builddir" qch_docs
install -Dpm0644 %_cmake__builddir/share/doc/qtcreator/qtcreator.qch %buildroot%_defaultdocdir/qtcreator/qtcreator.qch

# Remove Windows cdb debugger support to prevent unmet python2.7(cdbext)

rm -f %buildroot%_datadir/qtcreator/debugger/cdbbridge.py

# Add correct pkgname to appdata.xml file

subst '/<releases>/i \ <pkgname>qt-creator</pkgname>' %buildroot%_datadir/metainfo/*.xml

%files

%files core
%doc README* LICENSE*
%_bindir/*
%_libdir/qtcreator
%_prefix/libexec/qtcreator
%_iconsdir/hicolor/*/apps/QtProject-qtcreator.png
%_desktopdir/*.desktop
%_datadir/metainfo/*.xml

%files doc
%_defaultdocdir/qtcreator

%files data
%dir %_datadir/qtcreator
%_datadir/qtcreator/*

%changelog

Todas as alterações você pod ver aqui

 
projeto & código: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
mantenedor atual: Michael Shigorin
mantenedor da tradução: Fernando Martini aka fmartini © 2009