diff options
Diffstat (limited to 'network/basilisk-src')
-rw-r--r-- | network/basilisk-src/basilisk-src.SlackBuild | 58 | ||||
-rw-r--r-- | network/basilisk-src/basilisk-src.desktop | 2 | ||||
-rw-r--r-- | network/basilisk-src/basilisk-src.info | 8 | ||||
-rw-r--r-- | network/basilisk-src/rb168986.patch | 88 |
4 files changed, 128 insertions, 28 deletions
diff --git a/network/basilisk-src/basilisk-src.SlackBuild b/network/basilisk-src/basilisk-src.SlackBuild index e2b20b9731..e0e3d28f1d 100644 --- a/network/basilisk-src/basilisk-src.SlackBuild +++ b/network/basilisk-src/basilisk-src.SlackBuild @@ -25,7 +25,9 @@ # Modified by SlackBuilds.org PRGNAM=basilisk-src -VERSION=${VERSION:-2018.04.23} +SRCNAM=${SRCNAM:-UXP} +VERSION=${VERSION:-2018.05.15} +RELEASEVER=${RELEASEVER:-52.9.$VERSION} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} @@ -51,13 +53,13 @@ EME=${EME:---enable-eme=widevine} # "-Os" might help if you experience segfaults. OPTIMIZE=${OPTIMIZE:-"-O2 -msse2 -mfpmath=sse"} if [ "$ARCH" = "i586" ]; then - SLKCFLAGS="-O2 -march=i586 -mtune=i686 -fopenmp" + SLKCFLAGS="-O2 -march=i586 -mtune=i686" LIBDIRSUFFIX="" elif [ "$ARCH" = "i686" ]; then - SLKCFLAGS="-O2 -march=i686 -mtune=i686 -fopenmp" + SLKCFLAGS="-O2 -march=i686 -mtune=i686" LIBDIRSUFFIX="" elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2 -fPIC -fopenmp" + SLKCFLAGS="-O2 -fPIC" LIBDIRSUFFIX="64" else SLKCFLAGS="-O2" @@ -70,7 +72,7 @@ fi # requires the use of the "unofficial" branding. BRANDING=${BRANDING:---enable-official-branding} if [ "$BRANDING" = "unofficial" ]; then - BRANDING="--disable-official-branding --with-branding=browser/branding/unofficial" + BRANDING="--disable-official-branding --with-branding=browser/branding/unofficial" fi rm -rf $PKG $TMP/gold $TMP/$OBJ @@ -131,9 +133,18 @@ PATH=$TMP/autoconf-tmp/usr/bin:$PATH # Build basilisk cd $TMP -rm -rf UXP-$VERSION -tar -xvf $CWD/UXP-$VERSION.tar.gz -cd UXP-$VERSION +rm -rf $SRCNAM-$VERSION +tar -xvf $CWD/$SRCNAM-$VERSION.tar.gz +cd $SRCNAM-$VERSION + +# This patch fixes a regression in python that causes build failures when building with mach. +# This patch was integrated upstream, but is not in the current release. +patch -p1 < $CWD/rb168986.patch + +# Set the proper version number, but do not rely on "$BASILISK_VERSION" since doing so will +# set the version number to whenever a build takes place, rather then when a release was made. +echo "$RELEASEVER" > browser/config/version.txt +echo "$VERSION" > browser/config/version_display.txt chown -R root:root . find -L . \ @@ -146,24 +157,23 @@ find -L . \ # "UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 36: ordinal not in range(128)" export LANG=C -export MOZCONFIG="$TMP/UXP-$VERSION/.mozconfig" +export MOZCONFIG="$TMP/$SRCNAM-$VERSION/.mozconfig" export MOZILLA_OFFICIAL=1 export MOZ_MAKE_FLAGS=$MAKEFLAGS export CFLAGS="$SLKCFLAGS" export CXXFLAGS="$SLKCFLAGS" export BUILDING_RELEASE=1 -export BASILISK_VERSION=1 export MOZ_ADDON_SIGNING= export MOZ_REQUIRE_SIGNING= export MOZ_TELEMETRY_REPORTING= export PYTHON=/usr/bin/python2 -# + # Our building options, in a configure-like display ;) OPTIONS="\ ${BRANDING} \ --prefix=/usr \ --libdir=/usr/lib${LIBDIRSUFFIX} \ - --with-default-mozilla-five-home=/usr/lib${LIBDIRSUFFIX}/$PRGNAM-$VERSION \ + --with-default-mozilla-five-home=/usr/lib${LIBDIRSUFFIX}/basilisk-$RELEASEVER \ --x-libraries=/usr/lib${LIBDIRSUFFIX} \ --enable-default-toolkit=cairo-$GTK \ $DEBUG \ @@ -188,7 +198,7 @@ echo "ac_add_options --disable-pulseaudio" >> .mozconfig; fi if pkg-config --exists jack && [ "${BLACKLIST_JACK:-no}" != "yes" ]; then echo "ac_add_options --enable-jack" >> .mozconfig; fi -make -f client.mk build +python2 mach build ## Clean up; and package basilisk. mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/mozilla/plugins @@ -198,29 +208,29 @@ make install DESTDIR=$PKG cd $PKG # We don't need these (just symlinks anyway): -rm -rf usr/lib${LIBDIRSUFFIX}/$PRGNAM-devel-$VERSION +rm -rf usr/lib${LIBDIRSUFFIX}/basilisk-devel-$RELEASEVER # Avoid duplicate binaries; details: https://bugzilla.mozilla.org/show_bug.cgi?id=658850 # Basilisk package scripts appear to attempt this, on other 'distros'; those scripts, # however, appear to fail on Slackware. -rm -f usr/lib${LIBDIRSUFFIX}/$PRGNAM-$VERSION/$PRGNAM-bin +rm -f usr/lib${LIBDIRSUFFIX}/basilisk-$RELEASEVER/basilisk-bin # Use system provided Hunspell, if desired. if [ "${USE_SYSTEM_HUNSPELL}" = "yes" ]; then - rm -rfv usr/lib${LIBDIRSUFFIX}/$PRGNAM-$VERSION/dictionaries - cp -vsr /usr/share/hunspell usr/lib${LIBDIRSUFFIX}/$PRGNAM-$VERSION/dictionaries + rm -rfv usr/lib${LIBDIRSUFFIX}/basilisk-$RELEASEVER/dictionaries + cp -vsr /usr/share/hunspell usr/lib${LIBDIRSUFFIX}/basilisk-$RELEASEVER/dictionaries fi # Install icons: for PX in 16 32 48 ; do - mkdir -p $PKG/usr/share/icons/hicolor/${PX}x${PX}/apps - ln -s /usr/lib${LIBDIRSUFFIX}/$PRGNAM-$VERSION/browser/chrome/icons/default/default${PX}.png \ - $PKG/usr/share/icons/hicolor/${PX}x${PX}/apps/${PRGNAM}-$VERSION.png + mkdir -p $PKG/usr/share/icons/hicolor/${PX}x${PX}/apps + ln -s /usr/lib${LIBDIRSUFFIX}/basilisk-$RELEASEVER/browser/chrome/icons/default/default${PX}.png \ + $PKG/usr/share/icons/hicolor/${PX}x${PX}/apps/$PRGNAM-$VERSION.png done # ... and the 128px icon file too: mkdir -p $PKG/usr/share/icons/hicolor/128x128/apps -ln -s /usr/lib${LIBDIRSUFFIX}/$PRGNAM-$VERSION/browser/icons/mozicon128.png \ - $PKG/usr/share/icons/hicolor/128x128/apps/${PRGNAM}-$VERSION.png +ln -s /usr/lib${LIBDIRSUFFIX}/basilisk-$RELEASEVER/browser/icons/mozicon128.png \ + $PKG/usr/share/icons/hicolor/128x128/apps/$PRGNAM-$VERSION.png # Install .desktop file mkdir -p $PKG/usr/share/applications @@ -228,7 +238,9 @@ sed "s|@VERSION@|$VERSION|" $CWD/$PRGNAM.desktop \ > $PKG/usr/share/applications/$PRGNAM.desktop mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION -cp -a $TMP/UXP-$VERSION/LEGAL $TMP/UXP-$VERSION/LICENSE $TMP/UXP-$VERSION/README.md $PKG/usr/doc/$PRGNAM-$VERSION/ +cp -a \ + $TMP/$SRCNAM-$VERSION/LEGAL $TMP/$SRCNAM-$VERSION/LICENSE $TMP/$SRCNAM-$VERSION/README.md \ + $PKG/usr/doc/$PRGNAM-$VERSION/ cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild mkdir -p $PKG/install diff --git a/network/basilisk-src/basilisk-src.desktop b/network/basilisk-src/basilisk-src.desktop index 71a1d3423b..0a5f0facfa 100644 --- a/network/basilisk-src/basilisk-src.desktop +++ b/network/basilisk-src/basilisk-src.desktop @@ -7,7 +7,7 @@ Exec=basilisk %u Terminal=false X-MultipleArgs=false Type=Application -Icon=basilisk +Icon=basilisk-src-@VERSION@ Categories=Network;WebBrowser MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;x-scheme-handler/chrome;video/webm;application/x-xpinstall; StartupNotify=true diff --git a/network/basilisk-src/basilisk-src.info b/network/basilisk-src/basilisk-src.info index 6231feabad..71e4cd6534 100644 --- a/network/basilisk-src/basilisk-src.info +++ b/network/basilisk-src/basilisk-src.info @@ -1,9 +1,9 @@ PRGNAM="basilisk-src" -VERSION="2018.04.23" -HOMEPAGE="https://github.com/MoonchildProductions/moebius" -DOWNLOAD="https://github.com/MoonchildProductions/UXP/archive/v2018.04.23/UXP-2018.04.23.tar.gz \ +VERSION="2018.05.15" +HOMEPAGE="https://github.com/MoonchildProductions/UXP" +DOWNLOAD="https://github.com/MoonchildProductions/UXP/archive/v2018.05.15/UXP-2018.05.15.tar.gz \ http://ponce.cc/slackware/sources/repo/autoconf-2.13.tar.xz" -MD5SUM="1836973fd4302b0b1c448a5f9ba383b8 \ +MD5SUM="823b35096cc678633013efb4c2ab3573 \ f2994d302cf736e7e71974edfa51da3c" DOWNLOAD_x86_64="" MD5SUM_x86_64="" diff --git a/network/basilisk-src/rb168986.patch b/network/basilisk-src/rb168986.patch new file mode 100644 index 0000000000..b3b087bb5b --- /dev/null +++ b/network/basilisk-src/rb168986.patch @@ -0,0 +1,88 @@ +diff --git a/testing/mozbase/mozsystemmonitor/mozsystemmonitor/resourcemonitor.py b/testing/mozbase/mozsystemmonitor/mozsystemmonitor/resourcemonitor.py +--- a/testing/mozbase/mozsystemmonitor/mozsystemmonitor/resourcemonitor.py ++++ b/testing/mozbase/mozsystemmonitor/mozsystemmonitor/resourcemonitor.py +@@ -284,57 +284,71 @@ class SystemResourceMonitor(object): + """ + if not self._process: + self._stopped = True + return + + assert self._running + assert not self._stopped + +- self._pipe.send(('terminate',)) ++ try: ++ self._pipe.send(('terminate',)) ++ except Exception: ++ pass + self._running = False + self._stopped = True + + self.measurements = [] + +- done = False +- + # The child process will send each data sample over the pipe + # as a separate data structure. When it has finished sending + # samples, it sends a special "done" message to indicate it + # is finished. +- while self._pipe.poll(1.0): +- start_time, end_time, io_diff, cpu_diff, cpu_percent, virt_mem, \ +- swap_mem = self._pipe.recv() ++ ++ # multiprocessing.Pipe is not actually a pipe on at least Linux. that ++ # has an effect on the expected outcome of reading from it when the ++ # other end of the pipe dies, leading to possibly hanging on revc() ++ # below. So we must poll(). ++ def poll(): ++ try: ++ return self._pipe.poll(0.1) ++ except Exception: ++ # Poll might throw an exception even though there's still ++ # data to read. That happens when the underlying system call ++ # returns both POLLERR and POLLIN, but python doesn't tell us ++ # about it. So assume there is something to read, and we'll ++ # get an exception when trying to read the data. ++ return True ++ while poll(): ++ try: ++ start_time, end_time, io_diff, cpu_diff, cpu_percent, virt_mem, \ ++ swap_mem = self._pipe.recv() ++ except Exception: ++ # Let's assume we're done here ++ break + + # There should be nothing after the "done" message so + # terminate. + if start_time == 'done': +- done = True + break + + io = self._io_type(*io_diff) + virt = self._virt_type(*virt_mem) + swap = self._swap_type(*swap_mem) + cpu_times = [self._cpu_times_type(*v) for v in cpu_diff] + + self.measurements.append(SystemResourceUsage(start_time, end_time, + cpu_times, cpu_percent, io, virt, swap)) + + # We establish a timeout so we don't hang forever if the child + # process has crashed. + self._process.join(10) + if self._process.is_alive(): + self._process.terminate() + self._process.join(10) +- else: +- # We should have received a "done" message from the +- # child indicating it shut down properly. This only +- # happens if the child shuts down cleanly. +- assert done + + if len(self.measurements): + self.start_time = self.measurements[0].start + self.end_time = self.measurements[-1].end + + # Methods to record events alongside the monitored data. + + def record_event(self, name): + |