Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|
|
|
|
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|
|
|
|
This is based on the PKGBUILD available on aur here:
https://aur.archlinux.org/asterisk.git
Before this package was built with -march=native, so if you build
it on a machine with a processor that supports avx (Advanced Vector
Extensions), libpjsip.so.2 ended up with vpxor instructions that
were also executed on machines with a processor that did not have
such extension, which resulted in an illegal instruction at asterisk
startup.
Though for some reason, with this patch, building asterisk on a
machine with avx still results in res_pjsip_send_to_voicemail.so
having one vpxor instruction.
Hopefully even with that, asterisk can still start.
Changes from the aur PKGBUILD:
- Parabola's change to always depend on pjproject was kept
- Native builds were disabled by using the ChangeLog documentation:
"Those who need different -march= values, please, go for
./configure
make menuselect.makeopts or make menuselect
./menuselect/menuselect --disable BUILD_NATIVE"
Without that the build machine processor
- Parabola's minimum system requirements states that:
"Parabola GNU/Linux-libre should run on any i686 compatible machine
[...]"
- Wikipedia states that i686 has MMX and SSE[2]
The package build was tested on x86_64, i686 and armv7h.
On x86_64 I verified that most asterisk ELF files did not
have vpxor instructions anymore with:
$ pacman -Q -l asterisk | \
awk '{print $2}' | xargs file | grep ELF | \
sed 's#:.*##' | xargs objdump -D | grep vpxor
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|
|
This is based on the PKGBUILD available on aur here:
https://aur.archlinux.org/pjproject.git
Before this package was built with -march=native, so if you build
it on a machine with a processor that supports avx (Advanced Vector
Extensions), libpjsip.so.2 ended up with vpxor instructions that
were also executed on machines with a processor that did not have
such extension, which resulted in an illegal instruction at asterisk
startup.
libwebrtc is disabled in order not to require sse2 on i686:
- Parabola's minimum system requirements states that:
"Parabola GNU/Linux-libre should run on any i686 compatible machine
[...]"
- Wikipedia states that i686 has MMX and SSE[2]
- The Asterisk Changelog has the following:
"pjproject_bundled: Add --disable-libwebrtc to configure
Without the disable, pjproject tries to build it's internal
webrtc implementation which requires sse2. This fails on
platforms without sse2."
- In package(), a trailing '*' was added to
pjsip-apps/bin/pjsua-*gnu in order to catch binaries like
pjsip-apps/bin/pjsua-armv7l-unknown-linux-gnueabihf on ARM.
The package build was tested on x86_64, i686 and armv7h.
On x86_64 I verified that libpjsip.so.2 did not have vpxor
instructions anymore with objdump -D libpjsip.so.2 | grep vpxor
References:
-----------
[1]https://wiki.parabola.nu/Beginners%27_Guide
[2]https://en.wikipedia.org/wiki/P6_(microarchitecture)
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|
|
The pakcages have been tested and work on x86_64.
I successfully received commercial FM radio stations
with it with the following settings:
I/O devices configuration:
--------------------------
Device: other
Device String: xtrx
Input Rate: 5000000
Decimation: None
Sample rate: 5Msps
Banwith: 1.000000 MHz
LNO LB: 0.000000 Mhz
Input control:
--------------
LNA gain: 22 db
TIA gain: 9 db
PGA gain: 12 db
LB gain: 0 db
Swap I/Q []
DC Remove []
No limits []
IQ balance []
Freq. correction: 0.0 ppm
Antenna: RXL
Reset frequency controller digits []
Note that the chosen Antenna is specific to my setup.
TODO:
- Make the package install in /usr/ instead of /usr/local
- Validate the packages on i686 and armv7h
- Package the kernel module
- Package the other libraries required for the USB3 support.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|
|
|