Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
www/ladybird: SerenityOS Web Browser
Ladybird is a web browser built on the LibWeb and LibJS engines from SerenityOS with a cross-platform GUI in Qt. See this blog post for some more background: https://awesomekling.github.io/Ladybird-a-new-cross-platform-browser-project/ WWW: https://ladybird.dev
- Loading branch information
1 parent
b632464
commit eafa04a
Showing
6 changed files
with
1,245 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,85 @@ | ||
PORTNAME= ladybird | ||
PORTVERSION= g20231120 | ||
CATEGORIES= www | ||
MASTER_SITES= https://github.com/unicode-org/cldr-json/releases/download/${CLDRVERSION}/:cldr \ | ||
https://www.unicode.org/Public/${UCDVERSION}/ucd/:ucd \ | ||
https://www.unicode.org/Public/emoji/${UCDVERSION:R}/:emoji \ | ||
https://curl.se/ca/:cacert | ||
DISTFILES= cldr-${CLDRVERSION}-json-modern.zip:cldr \ | ||
UCD.zip:ucd \ | ||
emoji-test.txt:emoji \ | ||
cacert-${CACERTVERSION}.pem:cacert | ||
DIST_SUBDIR= ${PORTNAME}-${PORTVERSION} | ||
EXTRACT_ONLY= ${_DISTFILES:M*${GH_ACCOUNT}*} | ||
|
||
MAINTAINER= fuz@FreeBSD.org | ||
COMMENT= SerenityOS web browser | ||
WWW= https://ladybird.dev/ | ||
|
||
LICENSE= BSD2CLAUSE | ||
LICENSE_FILE= ${WRKSRC}/LICENSE | ||
|
||
# see Userland/Libraries/LibWeb/Loader/ResourceLoader.h | ||
ONLY_FOR_ARCHS= aarch64 amd64 i386 riscv64 | ||
ONLY_FOR_ARCHS_REASON= other architectures not recognised by build system | ||
BROKEN_FreeBSD_12= C++ template fuckery | ||
|
||
BUILD_DEPENDS= ${LOCALBASE}/share/public_suffix_list/public_suffix_list.dat:dns/public_suffix_list | ||
LIB_DEPENDS= libpulse.so:audio/pulseaudio | ||
RUN_DEPENDS= ${LOCALBASE}/share/fonts/Liberation/LiberationMono-Bold.ttf:x11-fonts/liberation-fonts-ttf | ||
|
||
USES= cmake:testing compiler:c++20-lang gl localbase:ldflags python:build qt:6 | ||
USE_GITHUB= yes | ||
GH_ACCOUNT= SerenityOS | ||
GH_PROJECT= serenity | ||
GH_TAGNAME= cc9de38ea4ccf06024913b78b6283d8e4bc26536 | ||
USE_GL= egl | ||
USE_LDCONFIG= yes | ||
USE_QT= base tools:build wayland multimedia | ||
|
||
CACERTVERSION= 2023-08-22 | ||
CLDRVERSION= 44.0.1 | ||
UCDVERSION= 15.1.0 | ||
|
||
CMAKE_ARGS= SERENITY_CACHE_DIR=${_DISTDIR} | ||
CMAKE_OFF= ENABLE_LAGOM_CCACHE \ | ||
ENABLE_COMMONMARK_SPEC_DOWNLOAD \ | ||
ENABLE_CACERT_DOWNLOAD \ | ||
ENABLE_TIME_ZONE_DATABASE_DOWNLOAD \ | ||
INCLUDE_WASM_SPEC_TESTS \ | ||
INCLUDE_FLAC_SPEC_TESTS \ | ||
ENABLE_NETWORK_DOWNLOADS | ||
CMAKE_SOURCE_PATH= ${WRKSRC}/Ladybird | ||
|
||
BINARY_ALIAS= python3=${PYTHON_CMD} | ||
DESKTOP_ENTRIES= "Ladybird" "SerenityOS web browser" "ladybird" "${PREFIX}/bin/Ladybird" "Network;WebBrowser;" false | ||
|
||
PLIST_FILES= ${PLIST_FILES_${ARCH}} | ||
PLIST_FILES_amd64= lib/liblagom-x86.so \ | ||
lib/liblagom-x86.so.0 \ | ||
lib/liblagom-x86.so.0.0.0 | ||
|
||
post-extract: | ||
${MKDIR} ${CONFIGURE_WRKSRC}/caches/PublicSuffix | ||
${LN} -s ${LOCALBASE}/share/public_suffix_list/public_suffix_list.dat \ | ||
${CONFIGURE_WRKSRC}/caches/PublicSuffix/ | ||
|
||
post-configure: | ||
${MKDIR} ${CONFIGURE_WRKSRC}/caches/CLDR ${CONFIGURE_WRKSRC}/caches/UCD | ||
${TAR} -x -C ${CONFIGURE_WRKSRC}/caches/CLDR -f ${_DISTDIR}/cldr-${CLDRVERSION}-json-modern.zip | ||
${TAR} -x -C ${CONFIGURE_WRKSRC}/caches/UCD -f ${_DISTDIR}/UCD.zip | ||
${CP} ${_DISTDIR}/emoji-test.txt ${CONFIGURE_WRKSRC}/caches/UCD | ||
${CP} ${_DISTDIR}/cacert-${CACERTVERSION}.pem ${CONFIGURE_WRKSRC}/Lagom/cacert.pem | ||
|
||
post-install: | ||
${MKDIR} ${STAGEDIR}${PREFIX}/share/icons/hicolor/256x256/apps | ||
${INSTALL_DATA} ${WRKSRC}/Ladybird/Icons/ladybird.png \ | ||
${STAGEDIR}${PREFIX}/share/icons/hicolor/256x256/apps/ | ||
.for font in Mono Sans Serif | ||
. for shape in Bold BoldItalic Italic Regular | ||
${LN} -shf ${LOCALBASE}/share/fonts/Liberation/Liberation${font}-${shape}.ttf \ | ||
${STAGEDIR}${PREFIX}/share/res/fonts/ | ||
. endfor | ||
.endfor | ||
|
||
.include <bsd.port.mk> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
TIMESTAMP = 1700523273 | ||
SHA256 (ladybird-g20231120/cldr-44.0.1-json-modern.zip) = 6daf783158fb3b09aa026a048e1f5ed5773148387b1edadfad33f303371f332a | ||
SIZE (ladybird-g20231120/cldr-44.0.1-json-modern.zip) = 47935704 | ||
SHA256 (ladybird-g20231120/UCD.zip) = cb1c663d053926500cd501229736045752713a066bd75802098598b7a7056177 | ||
SIZE (ladybird-g20231120/UCD.zip) = 8248819 | ||
SHA256 (ladybird-g20231120/emoji-test.txt) = d876ee249aa28eaa76cfa6dfaa702847a8d13b062aa488d465d0395ee8137ed9 | ||
SIZE (ladybird-g20231120/emoji-test.txt) = 639405 | ||
SHA256 (ladybird-g20231120/cacert-2023-08-22.pem) = 23c2469e2a568362a62eecf1b49ed90a15621e6fa30e29947ded3436422de9b9 | ||
SIZE (ladybird-g20231120/cacert-2023-08-22.pem) = 221470 | ||
SHA256 (ladybird-g20231120/SerenityOS-serenity-g20231120-cc9de38ea4ccf06024913b78b6283d8e4bc26536_GH0.tar.gz) = 389e98bd4ae264bcde4268e026d0072ea7cd9d48e5582fa73fe91dce92752834 | ||
SIZE (ladybird-g20231120/SerenityOS-serenity-g20231120-cc9de38ea4ccf06024913b78b6283d8e4bc26536_GH0.tar.gz) = 65705758 |
17 changes: 17 additions & 0 deletions
17
www/ladybird/files/patch-Userland_Libraries_LibJS_CMakeLists.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
--- Userland/Libraries/LibJS/CMakeLists.txt.orig 2023-11-20 19:50:53 UTC | ||
+++ Userland/Libraries/LibJS/CMakeLists.txt | ||
@@ -270,13 +270,8 @@ set(SOURCES | ||
|
||
serenity_lib(LibJS js) | ||
target_link_libraries(LibJS PRIVATE LibCore LibCrypto LibFileSystem LibRegex LibSyntax LibLocale LibUnicode LibTimeZone LibJIT) | ||
-if("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "x86_64") | ||
+if("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "amd64") | ||
target_link_libraries(LibJS PRIVATE LibX86) | ||
-endif() | ||
- | ||
-# TODO: This is probably also needed on RISC-V. | ||
-if("${CMAKE_SYSTEM_PROCESSOR}" MATCHES "i.86.*") | ||
- target_link_libraries(LibJS PRIVATE atomic) | ||
endif() | ||
|
||
target_compile_options(LibJS PRIVATE -fno-omit-frame-pointer) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
Ladybird is a web browser built on the LibWeb and LibJS engines from | ||
SerenityOS with a cross-platform GUI in Qt. | ||
|
||
See this blog post for some more background: | ||
https://awesomekling.github.io/Ladybird-a-new-cross-platform-browser-project/ |
Oops, something went wrong.