public inbox for cygwin-apps@cygwin.com
 help / color / mirror / Atom feed
From: Takashi Yano <takashi.yano@nifty.ne.jp>
To: cygwin-apps@cygwin.com
Subject: Re: [ITA] pulseaudio (16.1)
Date: Tue, 7 Feb 2023 20:31:11 +0900	[thread overview]
Message-ID: <20230207203111.b3b6348c16eb31b996681f09@nifty.ne.jp> (raw)
In-Reply-To: <20230206232305.f56998b731c57ece2a95cab3@nifty.ne.jp>

[-- Attachment #1: Type: text/plain, Size: 795 bytes --]

On Mon, 6 Feb 2023 23:23:05 +0900
Takashi Yano wrote:

> On Sun, 5 Feb 2023 16:34:07 +0000
> Jon Turney wrote:
> > On 05/02/2023 08:37, Takashi Yano via Cygwin-apps wrote:
> > > I would like to take over the maintenance of pulseaudio
> > > package which is currently orphanded. I have already
> > > prepared the updated package at:
> > > 
> > > https://tyan0.yr32.net/cygwin/x86_64/release/pulseaudio/
> > 
> > > src_compile() {
> > >         cd ${S}
> > >         inherit meson
> > 
> > It's more conventional to write the inherits once at the start of the 
> > cygport.
> > 
> > Otherwise, looks good.
> 
> Thanks for the advice. Now I am working on this package.
> Please wait a while.

The cygport file is updated as attached. Thanks in advance.

-- 
Takashi Yano <takashi.yano@nifty.ne.jp>

[-- Attachment #2: pulseaudio.cygport --]
[-- Type: text/plain, Size: 5711 bytes --]

NAME="pulseaudio"
VERSION=16.1
RELEASE=1
CATEGORY="Audio"
SUMMARY="PulseAudio sound server"
DESCRIPTION="PulseAudio is a sound system for POSIX OSes, meaning that it is
a proxy for your sound applications. It allows you to do advanced operations
on your sound data as it passes between your application and your hardware.
Things like transferring the audio to a different machine, changing the sample
format or channel count and mixing several sounds into one are easily achieved
using a sound server."
HOMEPAGE="http://www.freedesktop.org/wiki/Software/PulseAudio"
LICENSE="LGPL-2.1-or-later"
SRC_URI="http://freedesktop.org/software/pulseaudio/releases/${NAME}-${VERSION}.tar.xz"
PATCH_URI="
	http://pkgs.fedoraproject.org/cgit/rpms/pulseaudio.git/plain/pulseaudio-autostart.patch
	http://pkgs.fedoraproject.org/cgit/rpms/pulseaudio.git/plain/pulseaudio-9.0-disable_flat_volumes.patch
	5.0-cygwin-compile.patch
	1.1-cygwin-mutex.patch
	1.1-cygwin-waveout.patch
	2.1-cygwin-pulsedsp.patch
	7.1-cygwin-proc.patch
	7.1-cygwin-config.patch
"

PKG_NAMES="${NAME} ${NAME}-equalizer ${NAME}-utils ${NAME}-esound-compat
	${NAME}-module-x11 ${NAME}-module-gconf ${NAME}-module-zeroconf
	libpulse0 libpulse-mainloop-glib0 libpulse-simple0
	libpulse-devel libpulse-doc vala-libpulse"
pulseaudio_CONTENTS="
	--exclude=cygpulse-*.dll
	--exclude=cygpulsecommon-*.dll
	--exclude=start-pulseaudio-*
	--exclude=*avahi-wrap*
	--exclude=*protocol-esound*
	--exclude=module-equalizer*
	--exclude=module-esound*
	--exclude=module-gconf*
	--exclude=module-x11-*
	--exclude=module-zeroconf-*
	--exclude=html
	--exclude=vala
	--exclude=xdg
	etc/ usr/bin/*.dll usr/bin/pulseaudio.exe usr/lib/pulseaudio/modules/
	usr/share/doc/ usr/share/locale/ usr/share/man/man1/pulseaudio.*
	usr/share/man/man5/"
pulseaudio_equalizer_SUMMARY="PulseAudio Equalizer"
pulseaudio_equalizer_CONTENTS="
	usr/bin/qpaeq
	usr/lib/pulseaudio/modules/module-equalizer-sink.dll
	usr/share/applications/qpaeq.desktop"
pulseaudio_module_x11_SUMMARY="X11 support modules for PulseAudio"
pulseaudio_module_x11_REQUIRES="${NAME}-utils"
pulseaudio_module_x11_CONTENTS="
	etc/xdg/autostart/
	usr/bin/start-pulseaudio-*
	usr/lib/pulseaudio/modules/module-x11-*
	usr/share/man/man1/start-pulseaudio-*"
pulseaudio_module_gconf_SUMMARY="GConf support modules for PulseAudio"
pulseaudio_module_gconf_CONTENTS="
	usr/libexec/pulse/gsettings-helper.exe
	usr/share/GConf/gsettings/pulseaudio.convert
	usr/share/glib-2.0/schemas/org.freedesktop.pulseaudio.gschema.xml"
pulseaudio_module_zeroconf_SUMMARY="ZeroConf support modules for PulseAudio"
pulseaudio_module_zeroconf_CONTENTS="
	usr/bin/cygavahi-wrap.dll
	usr/lib/pulseaudio/modules/module-zeroconf-*"
pulseaudio_esound_compat_REQUIRES=${NAME}
pulseaudio_esound_compat_SUMMARY="ESounD compatibility for PulseAudio"
pulseaudio_esound_compat_CONTENTS="
	usr/bin/*protocol-esound*
	usr/bin/esd*
	usr/lib/pulseaudio/modules/*esound*
	usr/share/man/man1/esd*"

# Add the following line to pulseaudio_utils_CONTENTS if oss is enabled.
#	usr/lib/pulseaudio/*pulsedsp*
pulseaudio_utils_CONTENTS="
	--exclude=libpulsedsp.dll.a
	usr/bin/pa*
	usr/share/man/man1/pa*
	usr/share/bash-completion/
	usr/share/zsh/
"
libpulse0_CATEGORY="Libs"
libpulse0_SUMMARY="PulseAudio client library"
libpulse0_CONTENTS="usr/bin/cygpulse-0.dll usr/bin/cygpulsecommon-*.dll"
libpulse_mainloop_glib0_CATEGORY="Libs"
libpulse_mainloop_glib0_SUMMARY="PulseAudio GLib client library"
libpulse_mainloop_glib0_CONTENTS="usr/bin/cygpulse-mainloop-glib-0.dll"
libpulse_simple0_CATEGORY="Libs"
libpulse_simple0_SUMMARY="PulseAudio simple client library"
libpulse_simple0_CONTENTS="usr/bin/cygpulse-simple-0.dll"
libpulse_devel_CATEGORY="Libs"
libpulse_devel_SUMMARY="PulseAudio client libraries (development)"
libpulse_devel_CONTENTS="usr/include/ usr/lib/cmake/ usr/lib/lib* usr/lib/pulseaudio/libpulse* usr/lib/pkgconfig/"
libpulse_doc_CATEGORY="Doc"
libpulse_doc_SUMMARY="PulseAudio client API documentation"
libpulse_doc_CONTENTS="usr/share/doc/${NAME}/html/"
vala_libpulse_CATEGORY="Libs"
vala_libpulse_SUMMARY="PulseAudio client libraries (Vala bindings)"
vala_libpulse_CONTENTS="usr/share/vala/"

inherit meson

# oss-output is disabled until cygwin 3.5
CYGMESON_ARGS="
	-Dsamplerate=enabled
	-Doss-output=disabled
	-Dvalgrind=disabled
	-Dsystemd=disabled
	-Dalsa=disabled
	-Delogind=disabled
	-Dbluez5=disabled
	-Dbluez5-gstreamer=disabled
	-Djack=disabled
	-Dlirc=disabled
	-Dudev=disabled
	-Dgstreamer=disabled
	-Dwebrtc-aec=disabled"

PATH=/usr/lib/pulseaudio:${PATH}

src_compile() {
	cd ${S}
	meson_compile
	pushd ${S}/${ARCH}-pc-cygwin/doxygen
	doxygen doxygen.conf
	popd
}

src_install() {
	cd ${S}
	meson_install

	cd ${B}
	make_desktop_entry qpaeq "PulseAudio Equalizer" "multimedia-volume-control" "AudioVideo;Audio;Mixer"

	# obsoleted by x11_device_manager.patch
	rm -f ${D}/etc/xdg/autostart/pulseaudio-kde.desktop
	rm -f ${D}/etc/xdg/Xwayland-session.d/00-pulseaudio-x11

	# replace esd
	dosym esdcompat /usr/bin/esd
	echo ".so esdcompat.1" >> ${D}/usr/share/man/man1/esd.1

	# make install removes the .la files, so auto-fixups won't happen
	mv ${D}/usr/lib/pulseaudio/cygpulseco*.dll ${D}/usr/lib/pulseaudio/modules/cyg*.dll ${D}/usr/bin/
	rm -f ${D}/usr/lib/pulseaudio/modules/*.dll.a
	rm -f ${D}/usr/lib/pulseaudio/libpulsecore*.dll.a

	make_etc_defaults /etc/pulse

	dodoc ${S}/${ARCH}-pc-cygwin/doxygen/html
}

DIFF_EXCLUDES=".version stamp-po"

BUILD_REQUIRES="meson doxygen libtdb-devel libICE-devel libSM-devel libXtst-devel check libdbus1-devel speex-devel speexdsp-devel libwrap-devel libsoxr-devel liborc0.4-devel tcp_wrappers libavahi-client-devel libavahi-common-devel libgtk3-devel libsamplerate-devel libasyncns-devel"

      reply	other threads:[~2023-02-07 11:31 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-02-05  8:37 Takashi Yano
2023-02-05 16:34 ` Jon Turney
2023-02-06 14:23   ` Takashi Yano
2023-02-07 11:31     ` Takashi Yano [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230207203111.b3b6348c16eb31b996681f09@nifty.ne.jp \
    --to=takashi.yano@nifty.ne.jp \
    --cc=cygwin-apps@cygwin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).