Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
server:mail
alpine
alpine.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File alpine.spec of Package alpine
# # spec file for package alpine # # Copyright (c) 2024 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/ # # grep '\*version' for new pico version number # grep 'PILOT_VERSION' for new pilot version number Name: alpine # For debugging only: %define build_vanilla 0 Version: 2.26 Release: 0 Summary: Mail User Agent License: Apache-2.0 Group: Productivity/Networking/Email/Clients URL: https://alpineapp.email/ #Git-Clone: https://repo.or.cz/alpine.git #Source: %name-%version.tar.xz Source: https://alpineapp.email/alpine/release/src/alpine-%version.tar.xz Source2: https://alpineapp.email/alpine/release/src/sig/alpine-%version.tar.xz.sig Source3: %name.png Source4: %name.desktop Source9: UPDATING.txt Patch2: make-use-of-strncat-safer.diff Patch3: operation-may-be-undefined-warning.diff Patch4: fix-implicit.patch Patch5: alpine-gcc44.diff Patch6: alpine-timestamp.patch Patch10: pico-fix-spurious-undef-warnings.diff Patch20: pine-expression-warnings.diff Patch60: signal-and-panic-improvements.diff Patch61: return-values.diff Patch62: alpine-qsort.patch # # Eduardo Chappa's patches. # http://patches.freeiz.com/alpine/ # Source600: chappa-colortext.txt Patch600: chappa-colortext.patch Source601: chappa-fancy.txt Patch601: chappa-fancy.patch Source603: chappa-insertpat.txt Patch603: chappa-insertpat.patch Source604: chappa-maildir.txt Patch604: chappa-maildir.patch Source614: chappa-fillpara.txt Patch614: chappa-fillpara.patch Source615: chappa-fromheader.txt Patch615: chappa-fromheader.patch Source616: chappa-rules.txt Patch616: chappa-rules.patch Source617: chappa-DelText.txt Patch617: chappa-DelText.patch BuildRequires: autoconf >= 2.69 BuildRequires: krb5-devel BuildRequires: libtool BuildRequires: ncurses-devel BuildRequires: openldap2-devel BuildRequires: openssl-devel BuildRequires: pam-devel BuildRequires: update-desktop-files BuildRequires: xz # pgp4pine requires pine: (6.20 is what alpine writes to ~/.pinerc) Provides: pine = 6.20 Obsoletes: pine4 Provides: pine4 %description Alpine is a display-oriented email client that is suitable for both the inexperienced email user as well as for the most demanding of power users. Alpine is based on the PineĀ® Message System, which was also developed at the University of Washington. Alpine can be learned by exploration and the use of context-sensitive help. The user experience is highly customizable through the use of the Alpine Setup command. %package -n pico Summary: A small, easy to use editor Group: Productivity/Editors/Other Version: 5.09 Release: 0 %description -n pico Pico is a simple, display-oriented text editor based on the Pine message system composer. As with Pine, commands are displayed at the bottom of the screen, and context-sensitive help is provided. Characters are inserted into the text as they are typed. %package -n pilot Summary: Simple file system browser Group: Productivity/File utilities Version: 2.99 Release: 0 %description -n pilot Pilot is a simple, display-oriented file system browser based on the Pine message system composer. As with Pine, commands are displayed at the bottom of the screen, and context-sensitive help is provided. %prep %setup -q %if !0%{?build_vanilla} # # This is here to support checking if any patches add new warnings: # if [ ! -s %{_sourcedir}/compile-warnings-%{suse_version}-%{_arch}.log ]; then echo "No warnings check possible, set build_vanilla to 1 and" echo "add compile-warnings-%{suse_version}-%{_arch}.log from" echo "that build to the rpm build process so that it's found here". else sed 's/:[0-9]*//' %{_sourcedir}/compile-warnings-%{suse_version}-%{_arch}.log \ >compile-warnings-allowed.log fi # # "Chappa" patches # %patch -P 600 -p1 %patch -P 601 -p1 %patch -P 603 -p1 %patch -P 604 -p1 %patch -P 614 -p1 %patch -P 615 -p1 %patch -P 616 -p1 %patch -P 617 -p1 # # SuSE patches - warning fixes, etc: # %patch -P 2 -p1 %patch -P 3 -p1 %patch -P 4 -p1 %patch -P 5 -p1 %patch -P 6 -p1 %patch -P 10 -p1 %patch -P 20 -p1 %patch -P 60 -p1 %patch -P 61 -p1 %patch -P 62 %endif %build # # Comment on disabled warnings: The disabled warnings are rather harmless # and disabling them allows to focus on the really serious warnings: # export CFLAGS="${RPM_OPT_FLAGS/-O2/-Os} \ -Wno-unused-value -fno-strict-aliasing -Wno-pointer-sign -Wno-unused \ -Wno-address \ " # # On -Waddress: # # Added with gcc-4.2: It warns when the address of a variable (not a pointer) # is used in an expression. Since addresses of variables are always non-zero, # they are always true and can be safely removed from the expression, # but the code is safe nontheless. # # -Waddress generates >100 warnings in alpine and we disabled them to # concentrate on the really important warnings which could be real bugs better. # : # # Used in conjunction with signal-and-panic-improvements.diff: # export LDFLAGS="-rdynamic" # -rdynamic is used for backtrace_symbols: : autoreconf -fiv %configure \ --with-ssl-dir="%{_prefix}" \ --with-smtp-msa="%{_sbindir}/sendmail" \ --with-password-prog="%{_bindir}/passwd" \ --with-npa="%{_bindir}/inews" \ --with-spellcheck-prog="please set Speller to eg. 'aspell -c' in SETUP/Configuration"\ --with-system-pinerc=%_sysconfdir/pine.conf \ --with-system-fixed-pinerc=%_sysconfdir/pine.conf.fixed \ --with-debug-level=0 \ --with-debug-files=2 \ --with-file=.alpine-debug \ --with-default-mail-directory=Mail \ --with-web-bin=%_libdir/%name \ --with-passfile=.pinepw || { grep -B9 -A20 'failed program was' config.log | grep -A24 checking exit 5 } %{?fedora_version: tag=LFD} %{?mandriva_version: tag=LMD} %{?redhat_version: tag=LRH} %{?centos_version: tag=LRH} %{?suse_version: tag=LSU} perl -i -pe 's{(define SYSTYPE) "LNX"}{$1 "'"$tag"'"}g' include/config.h # # imap does not use CFLAGS from configure, needs EXTRACFLAGS/EXTRALDFLAGS: # %make_build EXTRACFLAGS="$CFLAGS" EXTRALDFLAGS="$EXTRALDFLAGS" \ MAILSPOOL="%{_localstatedir}/mail" -j1 %install %make_install # # When called as alpinef, alpine uses function keys instead of Control keys: # ln %{buildroot}/%{_bindir}/alpine %{buildroot}/%{_bindir}/alpinef install -D -m644 %{SOURCE3} %{buildroot}/%{_datadir}/pixmaps/%name.png install -D -m644 %{SOURCE4} %{buildroot}/%{_datadir}/applications/%name.desktop %suse_update_desktop_file %name : ln -sf alpine %{buildroot}/%{_bindir}/pine : install -m755 pico/{pico,pilot} %{buildroot}/%{_bindir} install -m644 doc/man1/{pico.1,pilot.1} %{buildroot}/%{_mandir}/man1/ %check #since there are no logs in the package at the moment, there are no checks, #but the warning logs can be recreated for regression tracking in warnings: if [ -s %{_sourcedir}/compile-warnings-%{suse_version}-%{_arch}.log ]; then grep -e '^[a-z0-9_]*.[cho]:' -e 'Entering directory' make.log | sed "s/^make\[.\]: //;/Entering directory/s/[\`']//g;" \ >compile-warnings-%{suse_version}-%{_arch}.log # Sort the combined allowed warnings: grep -v -e 'In function' -e 'Entering directory' \ compile-warnings-allowed.log | sort -u > compile-warnings-%{suse_version}-%{_arch}-reference.sort # Sort the warnings which occured now: grep -v -e 'In function' -e 'Entering directory' \ compile-warnings-%{suse_version}-%{_arch}.log | sed 's/:[0-9]*//' | sort -u \ >compile-warnings-%{suse_version}-%{_arch}-thisbuild.sort # diff them: diff compile-warnings-%{suse_version}-%{_arch}-{reference,thisbuild}.sort | tee compile-warnings-%{suse_version}-%{_arch}-sorted.diff if test -s compile-warnings-%{suse_version}-%{_arch}-sorted.diff; then grep '^>' compile-warnings-%{suse_version}-%{_arch}-sorted.diff >new-warnings ||: if [ -s new-warnings ]; then diff -u %{_sourcedir}/compile-warnings-%{suse_version}-%{_arch}.log \ compile-warnings-%{suse_version}-%{_arch}.log || echo "New warnings:" cat new-warnings sed 's/> //;s/:/:[0-9]*:/' new-warnings >new-warnings.pattern : diff: %_builddir}/compile-warnings-%{suse_version}-%{_arch}-sorted.diff grep -B1 -f new-warnings.pattern compile-warnings-%{suse_version}-%{_arch}.log grep -e 'Entering directory' -f new-warnings.pattern \ compile-warnings-%{suse_version}-%{_arch}.log | grep -B1 -f new-warnings.pattern | tee warnings.where while IFS='[: ]' read file line message; do if [ "$file" = Entering ]; then dir="${message#%_builddir/%buildsubdir/}" else path="$dir/$file" echo "$path:$line: $message" >>warnings-with-code head -"$line" "$path"|tail -1 >>warnings-with-code fi done <warnings.where cat warnings-with-code exit 5 else echo "Fixed warnings:" grep '^<' compile-warnings-%{suse_version}-%{_arch}-sorted.diff fi else echo "No fixed warnings and no new warnings" fi fi %files %doc %{_mandir}/man1/alpine.* %doc %{_mandir}/man1/rpdump.* %doc %{_mandir}/man1/rpload.* %doc README %license LICENSE NOTICE %doc doc/mailcap.unx doc/mime.types doc/tech-notes/tech-notes.txt doc/tech-notes/*.html %{_bindir}/*pine %{_bindir}/alpinef %{_bindir}/rp* %{_datadir}/applications/%name.desktop %{_datadir}/pixmaps/%name.png %files -n pico %{_bindir}/pico %doc %{_mandir}/man1/pico.* %files -n pilot %{_bindir}/pilot %doc %{_mandir}/man1/pilot.* %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