Ravenports generated: 11 Sep 2023 23:59
[ravenports.git] / bucket_6A / lagrange
1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
2
3 NAMEBASE=               lagrange
4 VERSION=                1.16.7
5 KEYWORDS=               www
6 VARIANTS=               standard
7 SDESC[standard]=        Web Browser-like beautiful Gemini Client
8 HOMEPAGE=               https://github.com/skyjake/lagrange
9 CONTACT=                Michael_Reim[kraileth@elderlinux.org]
10
11 DOWNLOAD_GROUPS=        main
12 SITES[main]=            https://github.com/skyjake/lagrange/releases/download/v1.16.7/
13 DISTFILE[1]=            lagrange-1.16.7.tar.gz:main
14 DF_INDEX=               1
15 SPKGS[standard]=        complete
16                         primary
17                         man
18
19 OPTIONS_AVAILABLE=      none
20 OPTIONS_STANDARD=       none
21
22 BUILD_DEPENDS=          zip:single:standard
23                         mpg123:dev:standard
24                         WebP:dev:standard
25                         harfbuzz:dev:standard
26 BUILDRUN_DEPENDS=       fribidi:single:standard
27                         harfbuzz:primary:standard
28                         libunistring:primary:standard
29                         mpg123:primary:standard
30                         WebP:primary:standard
31
32 USES=                   cmake ncurses pcre pkgconfig zlib ssl:openssl11 curl
33                         desktop-utils:primary
34 SDL_COMPONENTS=         sdl2
35 XORG_COMPONENTS=        x11
36
37 LICENSE=                BSD2CLAUSE:primary
38 LICENSE_FILE=           BSD2CLAUSE:{{WRKSRC}}/LICENSE.md
39 LICENSE_SCHEME=         solo
40
41 FPC_EQUIVALENT=         www/lagrange
42
43 CMAKE_ARGS=             -DENABLE_FRIBIDI:BOOL=ON
44                         -DENABLE_FRIBIDI_BUILD:BOOL=OFF
45                         -DENABLE_HARFBUZZ:BOOL=ON
46                         -DENABLE_HARFBUZZ_MINIMAL:BOOL=OFF
47                         -DENABLE_MPG123:BOOL=ON
48                         -DENABLE_WEBP:BOOL=ON
49
50 post-install:
51         ${INSTALL_PROGRAM} ${WRKSRC}/build-tui/clagrange ${STAGEDIR}${PREFIX}/bin/
52         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/clagrange
53         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/lagrange
54
55 post-build:
56         (cd ${WRKSRC} && ./build-tui.sh)
57
58 pre-configure:
59         ${REINPLACE_CMD} -i'' -e "s|__PREFIX__|${PREFIX}|g" \
60                 -e "s|__STAGEDIR__|${STAGEDIR}|" ${WRKSRC}/build-tui.sh
61         # unclear why SDL_HINT_WINDOWS_DPI_AWARENESS is not defined; it's in SDL_hints.h
62         # it's for windows only anywhy, just cut it out
63         ${REINPLACE_CMD} -e '/SDL_HINT_WINDOWS_DPI_AWARENESS/d' ${WRKSRC}/src/main.c
64
65 [FILE:776:descriptions/desc.primary]
66 Lagrange is a desktop GUI client for browsing Geminispace. It offers 
67 modern conveniences familiar from web browsers, such as smooth scrolling, 
68 inline image viewing, multiple tabs, visual themes, Unicode fonts, 
69 bookmarks, history, and page outlines.
70
71 Some features:
72 * Ability to optionally view images inside the gemtext document
73 * Beautiful typography using Unicode fonts
74 * Autogenerated page style and Unicode icon for each Gemini domain
75 * Smart URL field suggestions: Search bookmarks, history, identities
76 * Sidebar for page outline, managing bookmarks and identities as well as 
77   viewing history
78 * Multiple tabs
79 * Identity management: Create and use TLS client certificates
80 * Audio playback: MP3, Ogg Vorbis, WAV
81 * And more! Open about:help in the app, or see help.gmi
82
83
84 [FILE:101:distinfo]
85 751f595b7e913ea8246fa4031f63c15dcef1cb114e057b2062fc601875ebe745     10009880 lagrange-1.16.7.tar.gz
86
87
88 [FILE:206:manifests/plist.primary]
89 bin/
90  clagrange
91  lagrange
92 share/applications/fi.skyjake.Lagrange.desktop
93 share/icons/hicolor/256x256/apps/fi.skyjake.Lagrange.png
94 share/lagrange/resources.lgr
95 share/metainfo/fi.skyjake.Lagrange.appdata.xml
96
97
98 [FILE:29:manifests/plist.man]
99 share/man/man1/lagrange.1.gz
100
101
102 [FILE:1854:patches/patch-build-tui.sh]
103 --- build-tui.sh.orig   2023-08-11 11:45:46 UTC
104 +++ build-tui.sh
105 @@ -14,25 +14,15 @@
106  #
107  # You can customize the install directory prefix here and build type here:
108  
109 -INSTALL_PREFIX="/usr/local"
110 +INSTALL_PREFIX="__PREFIX__"
111  CMAKE_BUILD_TYPE="Release"
112 +export PKG_CONFIG_PATH=/__PREFIX__/openssl11/lib/pkgconfig
113 +export LDFLAGS="-L/__PREFIX__/openssl11/lib -Wl,-rpath,/__PREFIX__/openssl11/lib"
114  
115  echo "\nThis script will build and optionally install clagrange with"
116  echo "statically linked the_Foundation and SEALCurses. First, let's configure"
117  echo "the build.\n"
118  
119 -echo "Build type? [${CMAKE_BUILD_TYPE}]"
120 -read INPUT
121 -if [ "${INPUT}." != "." ]; then
122 -    CMAKE_BUILD_TYPE=${INPUT}
123 -fi
124 -
125 -echo "Install prefix? [${INSTALL_PREFIX}]"
126 -read INPUT
127 -if [ "${INPUT}." != "." ]; then
128 -    INSTALL_PREFIX=${INPUT}
129 -fi
130 -
131  if [ ! -d lib/sealcurses ]; then
132      echo "'lib/sealcurses' not found. Clone with Git? [Yn]"
133      read INPUT
134 @@ -87,7 +77,7 @@ cmake --install .
135  
136  cd ..
137  export PKG_CONFIG_PATH="${BUILD_DIR}/lib/pkgconfig":${PKG_CONFIG_PATH}
138 -LDFLAGS="`pkg-config --static --libs the_Foundation`"
139 +LDFLAGS="`pkg-config --static --libs the_Foundation` ${LDFLAGS}"
140  cmake .. \
141      -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} \
142      -DCMAKE_EXE_LINKER_FLAGS="${LDFLAGS}" \
143 @@ -99,19 +89,11 @@ cmake .. \
144      -DENABLE_HARFBUZZ=NO \
145      -DENABLE_POPUP_MENUS=NO \
146      -DENABLE_IDLE_SLEEP=NO \
147 +    -DCMAKE_SKIP_RPATH:BOOL=TRUE \
148      -Dthe_Foundation_DIR="${BUILD_DIR}/lib/cmake/the_Foundation" \
149      $*
150  cmake --build . || exit 1
151  
152  echo "-----"
153  echo "clagrange and resources.lgr can be found in 'build-tui'."
154 -echo "Do you want to install them to ${INSTALL_PREFIX}? (s=sudo) [syN]"
155 -read CONFIRMED
156 -if [ "${CONFIRMED}" = "s" ]; then
157 -    sudo cmake --install .
158 -    exit
159 -fi
160 -if [ "${CONFIRMED}" = "y" ]; then
161 -     cmake --install .
162 -    exit
163 -fi
164 +exit
165
166
167 [FILE:454:patches/patch-cmake_Depends.cmake]
168 --- cmake/Depends.cmake.orig    2023-08-11 11:45:46 UTC
169 +++ cmake/Depends.cmake
170 @@ -42,6 +42,7 @@ else ()
171      set (TFDN_ENABLE_WEBREQUEST OFF CACHE BOOL "")
172      add_subdirectory (lib/the_Foundation)
173      add_library (the_Foundation::the_Foundation ALIAS the_Foundation)
174 +    find_package (OpenSSL)
175      if (NOT OPENSSL_FOUND)
176          message (FATAL_ERROR "Lagrange requires OpenSSL for TLS. Please check if pkg-config can find 'openssl'.")
177      endif ()
178
179
180 [FILE:362:patches/patch-lib_sealcurses_CMakeLists.txt]
181 --- lib/sealcurses/CMakeLists.txt.orig  2023-08-11 11:46:01 UTC
182 +++ lib/sealcurses/CMakeLists.txt
183 @@ -10,7 +10,7 @@ find_package (PkgConfig REQUIRED)
184  set (CMAKE_C_STANDARD 11)
185  
186  # Find Curses.
187 -pkg_check_modules (CURSES ${NCURSES_PACKAGE}>=6)
188 +pkg_check_modules (CURSES ncurses)
189  if (NOT CURSES_FOUND)
190      find_library (CURSES ncurses>=6)
191      if (NOT CURSES)
192
193
194 [FILE:1138:patches/patch-lib_the__Foundation_Depends.cmake]
195 --- lib/the_Foundation/Depends.cmake.orig       2023-08-11 11:45:59 UTC
196 +++ lib/the_Foundation/Depends.cmake
197 @@ -14,24 +14,7 @@ if (NOT IOS AND NOT ANDROID)
198      if (TFDN_ENABLE_TLSREQUEST)
199          set (OPENSSL_FOUND NO)
200          set (iHaveOpenSSL NO)
201 -        if (FREEBSD)
202 -            # Try the system-provided libraries first.
203 -            find_library (LIBSSL ssl)
204 -            find_library (LIBCRYPTO crypto)
205 -            if (LIBSSL AND LIBCRYPTO)
206 -               message (STATUS "Using system-provided libssl: ${LIBSSL}")
207 -                add_library (libssl INTERFACE)
208 -                target_link_libraries (libssl INTERFACE ${LIBSSL} ${LIBCRYPTO})
209 -                set (OPENSSL_FOUND YES)
210 -            else ()
211 -                pkg_check_modules (OPENSSL eopenssl11)
212 -                if (OPENSSL_FOUND)
213 -                    set (EOPENSSL_FOUND YES)
214 -                endif ()
215 -            endif ()
216 -        else ()
217 -             pkg_check_modules (OPENSSL openssl)
218 -        endif ()
219 +        pkg_check_modules (OPENSSL openssl)
220      endif ()
221      # Unicode text strings
222      set (UNISTRING_DIR "" CACHE PATH "Location of libunistring")
223