Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:h-cheung
emacs-pgtk-nativecomp
emacs-pgtk-nativecomp.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File emacs-pgtk-nativecomp.spec of Package emacs-pgtk-nativecomp
# # spec file for package emacs-pgtk-native-comp # # Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # %define non_git_version 29.0.50 Name: emacs-pgtk-native-comp Version: 1647402697.7c9dd62270 Release: 0 Summary: Pure GTK Emacs with native compilation License: GPL-3.0+ URL: https://github.com/emacs/emacs Source0: emacs-%{version}.tar.xz Patch0: suse-native-comp-driver-options.patch BuildRequires: autoconf BuildRequires: automake BuildRequires: giflib-devel BuildRequires: cairo-devel BuildRequires: dbus-1-devel BuildRequires: fdupes BuildRequires: gtk3-devel # Used for installtion of info pages as well as to # detect if the page info.info is part of that package BuildRequires: info BuildRequires: libgnutls-devel BuildRequires: libjpeg-devel BuildRequires: libotf-devel BuildRequires: libpng-devel BuildRequires: librsvg-devel BuildRequires: libtiff-devel BuildRequires: libudev-devel BuildRequires: libxml2-devel BuildRequires: m17n-lib-devel BuildRequires: makeinfo BuildRequires: ncurses-devel BuildRequires: xorg-x11-devel BuildRequires: xz BuildRequires: zlib-devel BuildRequires: pkgconfig(harfbuzz) BuildRequires: pkgconfig(jansson) BuildRequires: pkgconfig(libsystemd) BuildRequires: pkgconfig(webkit2gtk-4.0) >= 2.12 # Needed for native compilation BuildRequires: gcc12-devel BuildRequires: libgccjit0-devel-gcc12 # Needed for libgccjit smoke tests BuildRequires: gcc12 BuildRequires: libgccjit0 BuildRequires: libXpm-devel Requires: gcc12 Provides: emacs = %{non_git_version} Obsoletes: emacs < %{non_git_version} Obsoletes: emacs-info < %{non_git_version} Obsoletes: emacs-x11 < %{non_git_version} %description Pure GTK Emacs with native compilation. %package -n etags Summary: Generate Tag Files for use with Emacs Requires(post): coreutils update-alternatives Requires(preun): coreutils update-alternatives Provides: ctags:/usr/bin/etags %description -n etags ETags generates tag files from source code in Pascal, Cobol, Ada, Perl, LaTeX, Scheme, Emacs Lisp/Common Lisp, Postscript, Erlang, Python, Prolog, and most assembler-like syntaxes. %package devel Summary: Development header files %description devel Contains header files for developing Emacs modules. %prep %setup -q -n emacs-%{version} %patch0 -p1 ./autogen.sh grep -v "tetris.elc" lisp/Makefile.in > lisp/Makefile.in.new \ && mv lisp/Makefile.in.new lisp/Makefile.in grep -v "pong.elc" lisp/Makefile.in > lisp/Makefile.in.new \ && mv lisp/Makefile.in.new lisp/Makefile.in # Avoid trademark issues rm -f lisp/play/tetris.el lisp/play/tetris.elc rm -f lisp/play/pong.el lisp/play/pong.el %build # needed for libgccjit to work export LIBRARY_PATH=/usr/lib64:/usr/lib64/gcc/x86_64-suse-linux/11 export LDFLAGS='-Wl,-O2' # pre-compile lisp export NATIVE_FULL_AOT=1 %configure --with-pgtk --with-native-compilation --with-cairo --with-libotf \ --with-jpeg --with-tiff --with-gif --with-png --with-rsvg --with-xft \ --with-dbus --with-sound --with-xwidgets \ --enable-link-time-optimization --with-xpm --with-gpm=no --with-modules \ --with-harfbuzz --with-json \ --enable-locallisppath=%{_datadir}/emacs/%{non_git_version}/site-lisp:%{_datadir}/emacs/site-lisp make %{?_smp_mflags} %install %make_install mkdir -p %{buildroot}/usr/lib/systemd/user mv %{buildroot}%{_libdir}/systemd/user/emacs.service %{buildroot}/usr/lib/systemd/user/ %fdupes %{buildroot}/%{_prefix} %files %license COPYING %{_bindir}/emacs %{_bindir}/emacs-%{non_git_version} %{_bindir}/emacsclient %{_bindir}/ebrowse /usr/lib/systemd/user/emacs.service %dir %{_datadir}/emacs %dir %{_datadir}/emacs/%{non_git_version} %dir %{_datadir}/emacs/%{non_git_version}/etc %dir %{_datadir}/emacs/%{non_git_version}/lisp %dir %{_datadir}/emacs/%{non_git_version}/site-lisp %{_datadir}/emacs/%{non_git_version}/etc/* %exclude %{_datadir}/emacs/%{non_git_version}/etc/ETAGS.* %{_datadir}/emacs/%{non_git_version}/lisp/* %{_datadir}/emacs/%{non_git_version}/site-lisp/subdirs.el %{_datadir}/emacs/site-lisp/subdirs.el %dir %{_libdir}/emacs %dir %{_libdir}/emacs/%{non_git_version} %dir %{_libdir}/emacs/%{non_git_version}/native-lisp/ %dir %{_libdir}/emacs/%{non_git_version}/native-lisp/%{non_git_version}-*/ %dir %{_libdir}/emacs/%{non_git_version}/native-lisp/%{non_git_version}-*/preloaded %{_libdir}/emacs/%{non_git_version}/native-lisp/%{non_git_version}-*/*.eln %{_libdir}/emacs/%{non_git_version}/native-lisp/%{non_git_version}-*/preloaded/*.eln %dir %{_libexecdir}/emacs/ %dir %{_libexecdir}/emacs/%{non_git_version}/ %{_libexecdir}/emacs/%{non_git_version}/*-suse-linux-gnu/ %dir %{_datadir}/applications/ %{_datadir}/applications/emacs*.desktop %{_datadir}/icons/hicolor/*/apps/emacs.* %{_datadir}/icons/hicolor/*/mimetypes/emacs-document*.svg %{_datadir}/glib-2.0/schemas/org.gnu.emacs.defaults.gschema.xml %{_datadir}/metainfo/emacs.metainfo.xml %{_mandir}/man1/emacs.1%{ext_man} %{_mandir}/man1/emacsclient.1%{ext_man} %{_mandir}/man1/ebrowse.1%{ext_man} %doc %{_infodir}/*.gz %files -n etags %{_bindir}/etags %{_bindir}/ctags %{_mandir}/man1/*tags.1%{ext_man} %dir %{_datadir}/emacs %dir %{_datadir}/emacs/%{non_git_version} %dir %{_datadir}/emacs/%{non_git_version}/etc %doc %{_datadir}/emacs/%{non_git_version}/etc/ETAGS.EBNF %doc %{_datadir}/emacs/%{non_git_version}/etc/ETAGS.README %files devel %{_includedir}/emacs-module.h %changelog
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor