Compare commits

..

37 Commits
main ... gtk4

Author SHA1 Message Date
Rene Hexel ead863266a Update for gdk-4.10 2023-03-07 17:10:02 +10:00
Rene Hexel 07a5d51c59 Use main branch dependencies 2022-04-26 06:33:54 +10:00
Rene Hexel e64bddd156 Update for Swift 5.6 and reference swift52 branch 2022-04-26 06:32:47 +10:00
Rene Hexel 27108bf7fd Fix regressions and make this compile with gtk4 2022-04-16 11:47:17 +10:00
Rene Hexel acd6474395 Upgrade to Swift 5.6 and use plugin 2022-04-16 11:28:32 +10:00
Rene Hexel 301045cfd1 Add YAML manifest 2022-04-16 11:23:06 +10:00
Rene Hexel 7c85242bac Update for Xcode-13.2.1 2022-01-20 08:55:15 +10:00
Rene Hexel ef01ddc3e6 Support gtk-4.6 2022-01-20 07:35:30 +10:00
Rene Hexel 1a171d94f5 Use gtk4 naming convention 2022-01-09 12:14:01 +10:00
Rene Hexel b99487564d Distinguish GLib.ListRef from Carbon.ListRef 2022-01-09 07:59:57 +10:00
Rene Hexel f6aff61e0b Simplify manifest: let gir2swift do sed/awk post-processing 2021-07-24 16:11:03 +10:00
Rene Hexel 997be8823c Only upload Sources 2021-07-24 16:11:03 +10:00
Rene Hexel 32b698bf37 Update Xcode versions 2021-07-10 09:17:21 +10:00
Rene Hexel a31337c988 Note Swift 5.5 and update Troubleshooting section 2021-06-10 20:03:35 +10:00
Rene Hexel 56bfa03c14 Correct gir2swift path 2021-06-10 20:03:35 +10:00
Rene Hexel b88a5fa75e Note glib-2.68 2021-05-09 13:10:42 +10:00
Rene Hexel f6358ff6a1 revert $VER to 4.0 to match library versioning 2021-05-09 12:47:15 +10:00
Rene Hexel c8e02d8e82 Update for gtk-4.2 2021-05-09 12:32:06 +10:00
Rene Hexel e5dc13f81a Add /opt/homebrew to GIR search path prefix 2021-01-28 06:26:37 +10:00
Rene Hexel b2748cf993 Elaborate more on changes and fix some minor nitpicks 2021-01-17 10:39:34 +10:00
Rene Hexel be0061a24d Reference gtk4 sources 2021-01-17 08:35:21 +10:00
Rene Hexel 840814bcab Fix typo 2021-01-13 15:57:27 +10:00
Rene Hexel 0ccefaaf30 Set 'continue-on-error: true' for 'brew upgrade' 2021-01-12 14:17:06 +10:00
Rene Hexel b735367bea success/failure instead of succeeded/failed 2021-01-12 13:58:18 +10:00
Rene Hexel 8aa51ac16a Outdent 2021-01-12 13:55:37 +10:00
Rene Hexel cd0020c8e5 Run 'brew install' regardless of whether 'upgrade' succeeded or failed 2021-01-12 13:53:16 +10:00
Rene Hexel fe601105d9 Ignore 'brew upgrade' errors 2021-01-12 13:41:44 +10:00
Rene Hexel 9b6075b2b1 Run 'brew upgrade' to enable gtk4 installation 2021-01-12 13:12:21 +10:00
Rene Hexel d7e6f6fa71 Fix typo 2021-01-12 08:50:17 +10:00
Rene Hexel 9b5706579c Split CI scripts and add badges 2021-01-12 08:08:10 +10:00
Rene Hexel e142850e49 s/gtk+4/gtk4/ 2021-01-12 08:05:30 +10:00
Rene Hexel 5da6aab77c s/gtk3/gtk4/ 2021-01-10 13:58:08 +10:00
Rene Hexel 0c4ddc932f Note new build system 2021-01-10 13:57:01 +10:00
Rene Hexel 46dc1273a8 Add new build system 2021-01-10 13:56:59 +10:00
Rene Hexel f6271a136c Ignore .swiftpm 2021-01-10 13:48:42 +10:00
Rene Hexel 7950d45d26 Merge branch 'main' into gtk4 2021-01-06 10:54:43 +10:00
Rene Hexel 3f9ecf8e9f Add support for gtk4 2020-12-18 09:05:20 +10:00
18 changed files with 83 additions and 96 deletions

View File

@ -17,3 +17,13 @@ s/gdk_selection_property_get(requestor.window_ptr, data, _ptr, propFormat)/gdk_s
s/\(@available(., deprecated) @inlinable\) \(public init() {\)/\1 override \2/ s/\(@available(., deprecated) @inlinable\) \(public init() {\)/\1 override \2/
s/gdk_gl_context_set_use_es(gl_context_ptr, gint(newValue))/gdk_gl_context_set_use_es(gl_context_ptr, newValue ? 1 : 0)/ s/gdk_gl_context_set_use_es(gl_context_ptr, gint(newValue))/gdk_gl_context_set_use_es(gl_context_ptr, newValue ? 1 : 0)/
s/_ptr.pointee.state = newValue.value/_ptr.pointee.state = newValue.rawValue/ s/_ptr.pointee.state = newValue.value/_ptr.pointee.state = newValue.rawValue/
s/\(gdk_crossing_event.*\)crossing_\(event_ptr\)/\1\2/
s/\(gdk_button_event.*\)button_\(event_ptr\)/\1\2/
s/\(gdk_dnd_event.*\)dnd_\(event_ptr\)/\1\2/
s/\(gdk_focus_event.*\)focus_\(event_ptr\)/\1\2/
s/\(gdk_grab_broken_event.*\)grab_broken_\(event_ptr\)/\1\2/
s/\(gdk_key_event.*\)key_\(event_ptr\)/\1\2/
s/\(gdk_pad_event.*\)pad_\(event_ptr\)/\1\2/
s/\(gdk_scroll_event.*\)scroll_\(event_ptr\)/\1\2/
s/\(gdk_touch.*_event.*\)touch.*_\(event_ptr\)/\1\2/

View File

@ -12,10 +12,10 @@ let package = Package(
.package(url: "https://github.com/apple/swift-docc-plugin", from: "1.0.0"), .package(url: "https://github.com/apple/swift-docc-plugin", from: "1.0.0"),
], ],
targets: [ targets: [
.systemLibrary(name: "CGdk", pkgConfig: "gdk-3.0", .systemLibrary(name: "CGdk", pkgConfig: "gtk4",
providers: [ providers: [
.brew(["gtk+3", "glib", "glib-networking", "gobject-introspection"]), .brew(["gtk4", "glib", "glib-networking", "gobject-introspection"]),
.apt(["libgtk-3-dev", "libglib2.0-dev", "glib-networking", "gobject-introspection", "libgirepository1.0-dev"]) .apt(["libgtk-4-dev", "libglib2.0-dev", "glib-networking", "gobject-introspection", "libgirepository1.0-dev"])
]), ]),
.target( .target(
name: "Gdk", name: "Gdk",

View File

@ -23,18 +23,18 @@ Version 15 of gir2swift provides a Package Manager Plugin. This requires Swift
To build, download Swift from https://swift.org/download/ -- if you are using macOS, make sure you have the command line tools installed as well). Test that your compiler works using `swift --version`, which should give you something like To build, download Swift from https://swift.org/download/ -- if you are using macOS, make sure you have the command line tools installed as well). Test that your compiler works using `swift --version`, which should give you something like
$ swift --version $ swift --version
swift-driver version: 1.45.2 Apple Swift version 5.6 (swiftlang-5.6.0.323.62 clang-1316.0.20.8) swift-driver version: 1.62.15 Apple Swift version 5.7.2 (swiftlang-5.7.2.135.5 clang-1400.0.29.51)
Target: x86_64-apple-darwin20.3.0 Target: x86_64-apple-macosx12.0
on macOS, or on Linux you should get something like: on macOS, or on Linux you should get something like:
$ swift --version $ swift --version
Swift version 5.6.1 (swift-5.6.1-RELEASE) Swift version 5.7.3 (swift-5.7.3-RELEASE)
Target: x86_64-unknown-linux-gnu Target: x86_64-unknown-linux-gnu
### Gtk 3.22 or higher ### Gtk 3.22 or higher
The Swift wrappers have been tested with glib-2.56, 2.58, 2.60, 2.62, 2.64, 2.66, 2.68, 2.70 and 2.72, and gdk/gtk 3.22 and 3.24 as well as 4.0, 4.2, 4.4, and 4.6 on the gtk4 branch. They should work with higher versions, but YMMV. Also make sure you have `gobject-introspection` and its `.gir` files installed. The Swift wrappers have been tested with glib-2.56, 2.58, 2.60, 2.62, 2.64, 2.66, 2.68, 2.70 and 2.72, and gdk/gtk 3.22 and 3.24 as well as 4.0, 4.2, 4.4, 4.6, 4.8, and 4.10 on the gtk4 branch. They should work with higher versions, but YMMV. Also make sure you have `gobject-introspection` and its `.gir` files installed.
#### Linux #### Linux
@ -56,7 +56,7 @@ On Fedora, you can use the gtk that comes with the distribution. Just install w
On macOS, you can install gdk and gtk using HomeBrew (for setup instructions, see http://brew.sh). Once you have a running HomeBrew installation, you can use it to install a native version of gtk: On macOS, you can install gdk and gtk using HomeBrew (for setup instructions, see http://brew.sh). Once you have a running HomeBrew installation, you can use it to install a native version of gtk:
brew update brew update
brew install gtk+3 glib glib-networking gobject-introspection pkg-config brew install gtk4 glib glib-networking gobject-introspection pkg-config
## Usage ## Usage
@ -70,7 +70,7 @@ import PackageDescription
let package = Package(name: "MyPackage", let package = Package(name: "MyPackage",
dependencies: [ dependencies: [
.package(url: "https://github.com/rhx/gir2swift.git", branch: "main"), .package(url: "https://github.com/rhx/gir2swift.git", branch: "main"),
.package(url: "https://github.com/rhx/SwiftGdk.git", branch: "gtk3"), .package(url: "https://github.com/rhx/SwiftGdk.git", branch: "gtk4"),
], ],
targets: [ targets: [
.target(name: "MyPackage", .target(name: "MyPackage",
@ -82,7 +82,7 @@ let package = Package(name: "MyPackage",
) )
``` ```
For gtk4 replace `.branch("gtk3")` with `.branch("gtk4")`. For gtk3 replace `.branch("gtk4")` with `.branch("gtk3")`.
## Building ## Building
@ -104,7 +104,6 @@ On macOS, you can build the project using Xcode instead. To do this, you need t
After that, use the (usual) Build and Test buttons to build/test this package. After that, use the (usual) Build and Test buttons to build/test this package.
## Documentation ## Documentation
You can generate documentation using the [DocC plugin](https://apple.github.io/swift-docc-plugin/documentation/swiftdoccplugin/). To preview documentation matching your local installation, simply run You can generate documentation using the [DocC plugin](https://apple.github.io/swift-docc-plugin/documentation/swiftdoccplugin/). To preview documentation matching your local installation, simply run
swift package --disable-sandbox preview-documentation swift package --disable-sandbox preview-documentation

View File

View File

@ -1,23 +1,41 @@
struct _GdkAppLaunchContext {}; struct _GdkAppLaunchContext {};
struct _GdkAtom {}; struct _GdkAtom {};
struct _GdkAxisUse {}; struct _GdkAxisUse {};
struct _GdkButtonEvent {};
struct _GdkByteOrder {}; struct _GdkByteOrder {};
struct _GdkCairoContext {};
struct _GdkClipboard {};
struct _GdkContentDeserializer {};
struct _GdkContentFormats {};
struct _GdkContentFormatsBuilder {};
struct _GdkContentSerializer {};
struct _GdkCrossingEvent {};
struct _GdkCrossingMode {}; struct _GdkCrossingMode {};
struct _GdkCursor {}; struct _GdkCursor {};
struct _GdkCursorType {}; struct _GdkCursorType {};
struct _GdkDNDEvent {};
struct _GdkDeleteEvent {};
struct _GdkDevice {}; struct _GdkDevice {};
struct _GdkDeviceManager {}; struct _GdkDeviceManager {};
struct _GdkDeviceType {}; struct _GdkDeviceType {};
struct _GdkDisplay {}; struct _GdkDisplay {};
struct _GdkDisplayManager {}; struct _GdkDisplayManager {};
struct _GdkDrag {};
struct _GdkDragAction {}; struct _GdkDragAction {};
struct _GdkDragContext {}; struct _GdkDragContext {};
struct _GdkDragProtocol {}; struct _GdkDragProtocol {};
struct _GdkDragSurface {};
struct _GdkDragSurfaceInterface {};
struct _GdkDrawContext {};
struct _GdkDrop {};
struct _GdkEvent {};
struct _GdkEventFunc {}; struct _GdkEventFunc {};
struct _GdkEventMask {}; struct _GdkEventMask {};
struct _GdkEventSequence {}; struct _GdkEventSequence {};
struct _GdkFileList {};
struct _GdkFilterFunc {}; struct _GdkFilterFunc {};
struct _GdkFilterReturn {}; struct _GdkFilterReturn {};
struct _GdkFocusEvent {};
struct _GdkFrameClock {}; struct _GdkFrameClock {};
struct _GdkFrameClockClass {}; struct _GdkFrameClockClass {};
struct _GdkFrameClockPhase {}; struct _GdkFrameClockPhase {};
@ -26,28 +44,56 @@ struct _GdkFrameTimings {};
struct _GdkFullscreenMode {}; struct _GdkFullscreenMode {};
struct _GdkGLContext {}; struct _GdkGLContext {};
struct _GdkGLError {}; struct _GdkGLError {};
struct _GdkGLTexture {};
struct _GdkGLTextureClass {};
struct _GdkGrabBrokenEvent {};
struct _GdkGrabOwnership {}; struct _GdkGrabOwnership {};
struct _GdkGrabStatus {}; struct _GdkGrabStatus {};
struct _GdkGravity {}; struct _GdkGravity {};
struct _GdkInputMode {}; struct _GdkInputMode {};
struct _GdkInputSource {}; struct _GdkInputSource {};
struct _GdkKeyEvent {};
struct _GdkKeymap {}; struct _GdkKeymap {};
struct _GdkMemoryTexture {};
struct _GdkMemoryTextureClass {};
struct _GdkModifierIntent {}; struct _GdkModifierIntent {};
struct _GdkModifierType {}; struct _GdkModifierType {};
struct _GdkMotionEvent {};
struct _GdkNotifyType {}; struct _GdkNotifyType {};
struct _GdkOwnerChange {}; struct _GdkOwnerChange {};
struct _GdkPadEvent {};
struct _GdkPaintable {};
struct _GdkPixbuf {}; struct _GdkPixbuf {};
struct _GdkPopup {};
struct _GdkPopupInterface {};
struct _GdkPopupLayout {};
struct _GdkPropMode {}; struct _GdkPropMode {};
struct _GdkPropertyState {}; struct _GdkPropertyState {};
struct _GdkProximityEvent {};
struct _GdkRectangle {}; struct _GdkRectangle {};
struct _GdkScreen {}; struct _GdkScreen {};
struct _GdkScrollDirection {}; struct _GdkScrollDirection {};
struct _GdkScrollEvent {};
struct _GdkSettingAction {}; struct _GdkSettingAction {};
struct _GdkSnapshot {};
struct _GdkSnapshotClass {};
struct _GdkStatus {}; struct _GdkStatus {};
struct _GdkSurface {};
struct _GdkSurfaceClass {};
struct _GdkTexture {};
struct _GdkTextureClass {};
struct _GdkTextureDownloader {};
struct _GdkToplevel {};
struct _GdkToplevelInterface {};
struct _GdkToplevelLayout {};
struct _GdkToplevelSize {};
struct _GdkTouchEvent {};
struct _GdkTouchpadEvent {};
struct _GdkTouchpadGesturePhase {}; struct _GdkTouchpadGesturePhase {};
struct _GdkVisibilityState {}; struct _GdkVisibilityState {};
struct _GdkVisual {}; struct _GdkVisual {};
struct _GdkVisualType {}; struct _GdkVisualType {};
struct _GdkVulkanContext {};
struct _GdkWMDecoration {}; struct _GdkWMDecoration {};
struct _GdkWMFunction {}; struct _GdkWMFunction {};
struct _GdkWindow {}; struct _GdkWindow {};
@ -82,4 +128,9 @@ struct _GdkMonitorInterface {};
#include <unistd.h> #include <unistd.h>
#include <termios.h> #include <termios.h>
#include <gdk/gdk.h> #include <gdk/gdk.h>
#include <gdk/gdkprivate.h>
#undef GDK_ACTION_ALL
#define GDK_ACTION_ALL 7
#undef GDK_MODIFIER_MASK
#define GDK_MODIFIER_MASK 0x1C001F0F

View File

@ -1,7 +1,7 @@
module CGdk [system] { module CGdk [system] {
header "gdk_bridging.h" header "gdk_bridging.h"
link "gdk-3" link "gtk-4"
link "pangocairo-1.0" link "pangocairo-1.0"
link "pangoft2-1.0" link "pangoft2-1.0"
link "fontconfig" link "fontconfig"

View File

@ -1,53 +0,0 @@
//
// Gdk.swift
// SwiftGdk
//
// Created by Rene Hexel on 3/6/16.
// Copyright © 2016, 2018, 2021 Rene Hexel. All rights reserved.
//
import CGdk
import GLib
/// A callback function or closure that runs on a different thread
public typealias ThreadCallback = () -> Bool
/// A closure holder for a thread callback
@usableFromInline typealias ThreadCallbackHolder = ClosureHolder<Void, Bool>
/// Adds a closure holder containing a closure or function
/// to be called whenever there are no higher priority events pending.
/// If the function returns false it is automatically removed
/// from the list of event sources and will not be called again.
/// - Parameters:
/// - p: The priority to run, such as `PRIORITY_HIGH_IDLE`
/// - data: the callback holder
/// - handler: The handler wrapping the closure holder
/// - Returns: The ID (greater than 0) of the event source.
@usableFromInline func _threadsAddIdle(priority p: Int32 = PRIORITY_DEFAULT_IDLE, data: ThreadCallbackHolder, handler: @convention(c) @escaping (gpointer) -> gboolean) -> Int {
let opaqueHolder = Unmanaged.passRetained(data).toOpaque()
let callback = unsafeBitCast(handler, to: GSourceFunc.self)
let rv = threadsAddIdleFull(priority: Int(p), function: callback, data: opaqueHolder, notify: {
if let swift = $0 {
let holder = Unmanaged<ThreadCallbackHolder>.fromOpaque(swift)
holder.release()
}
})
return rv
}
/// Adds a closure or function to be called whenever there
/// are no higher priority events pending.
/// If the function returns false it is automatically removed
/// from the list of event sources and will not be called again.
/// - Parameters:
/// - p: The priority to run, such as `PRIORITY_HIGH_IDLE`
/// - callback: The callback function or closure to call
/// - Returns: The ID (greater than 0) of the event source.
@inlinable public func threadsAddIdle(priority p: Int32 = PRIORITY_DEFAULT_IDLE, callback: @escaping ThreadCallback) -> Int {
let rv = _threadsAddIdle(data: ThreadCallbackHolder(callback)) {
let holder = Unmanaged<ThreadCallbackHolder>.fromOpaque($0).takeUnretainedValue()
let rv: gboolean = holder.call(()) ? 1 : 0
return rv
}
return rv
}

View File

@ -1,31 +1,10 @@
import XCTest import XCTest
import GLib
@testable import Gdk @testable import Gdk
class GdkTests: XCTestCase { class GdkTests: XCTestCase {
func testEvent() { // FIXME: implement gdk-4 tests
let event = Event(type: .keyPress) func testEmpty() {
XCTAssertEqual(event.type, event.event_ptr.pointee.type)
XCTAssertEqual(event.type, EventType.keyPress)
} }
func testEventType() {
let doubleButton = EventType.doubleButtonPress
XCTAssertEqual(doubleButton, EventType._2buttonPress)
}
func testThreadsAddIdle() {
let mainLoop = MainLoopRef(context: mainContextDefault(), isRunning: false)
var done = false
let id = threadsAddIdle(priority: PRIORITY_HIGH_IDLE) {
done = true
mainLoop.quit()
return false
}
XCTAssertEqual(done, false)
XCTAssertNotEqual(id, 0)
mainLoop.run()
XCTAssertEqual(done, true)
}
} }

View File

@ -3,9 +3,10 @@
# Configuration for the module to compile, the Swift toolchain, and # Configuration for the module to compile, the Swift toolchain, and
# the compiler and linker flags to use. # the compiler and linker flags to use.
# #
VER=3.0 major=4
VER=$major.0
GLIB_VER=2.0 GLIB_VER=2.0
JAZZY_VER=3.24.33 JAZZY_VER=$major.6.2
Mod=Gdk Mod=Gdk
Module=${Mod}-$VER Module=${Mod}-$VER
module=`echo "${Module}" | tr '[:upper:]' '[:lower:]'` module=`echo "${Module}" | tr '[:upper:]' '[:lower:]'`
@ -19,8 +20,8 @@ if [ -z "$BUILD_DIR" ]; then
fi fi
export PATH="${GIR2SWIFT_PATH}:${BUILD_DIR}/checkouts/gir2swift/.build/release:${BUILD_DIR}/checkouts/gir2swift/.build/debug:${PATH}:$PWD/.build/checkouts/gir2swift/.build/release:$PWD/.build/checkouts/gir2swift/.build/debug:${PATH}:/usr/local/opt/ruby/bin:`echo /usr/local/lib/ruby/gems/*/bin | tr ' ' '\n' | tail -n1`:${PATH}:`echo /var/lib/gems/*/gems/jazzy-*/bin/ | tr ' ' '\n' | tail -n1`:/usr/local/bin" export PATH="${GIR2SWIFT_PATH}:${BUILD_DIR}/checkouts/gir2swift/.build/release:${BUILD_DIR}/checkouts/gir2swift/.build/debug:${PATH}:$PWD/.build/checkouts/gir2swift/.build/release:$PWD/.build/checkouts/gir2swift/.build/debug:${PATH}:/usr/local/opt/ruby/bin:`echo /usr/local/lib/ruby/gems/*/bin | tr ' ' '\n' | tail -n1`:${PATH}:`echo /var/lib/gems/*/gems/jazzy-*/bin/ | tr ' ' '\n' | tail -n1`:/usr/local/bin"
export PKG_CONFIG_PATH=/usr/local/opt/libffi/lib/pkgconfig:${PKG_CONFIG_PATH} export PKG_CONFIG_PATH=/usr/local/opt/libffi/lib/pkgconfig:${PKG_CONFIG_PATH}
LINKFLAGS=`pkg-config --libs $module pangocairo pangoft2 pango gobject-$GLIB_VER gio-unix-$GLIB_VER glib-$GLIB_VER | tr ' ' '\n' | sed -e 's/^/-Xlinker /' -e 's/-Wl,//' | tr '\n' ' ' | sed -e 's/^/-Xlinker /' -e 's/-Wl,//g' -e 's/,/ -Xlinker /g' -e 's/ -pthread/ -lpthread/g' -e 's/-Xcc[ ]*-Xlinker/-Xlinker/g' -e 's/-Xlinker[ ]*-Xcc/-Xcc/g' -e 's/-Xlinker[ ]*--export-dynamic//g' -e 's/-Xlinker[ ]*-Xlinker/-Xlinker/g' -e 's/-Xcc *$//' -e 's/-Xlinker *$//'` LINKFLAGS=`pkg-config --libs gtk$major pangocairo pangoft2 pango gobject-$GLIB_VER gio-unix-$GLIB_VER glib-$GLIB_VER | tr ' ' '\n' | sed -e 's/^/-Xlinker /' -e 's/-Wl,//' | tr '\n' ' ' | sed -e 's/^/-Xlinker /' -e 's/-Wl,//g' -e 's/,/ -Xlinker /g' -e 's/ -pthread/ -lpthread/g' -e 's/-Xcc[ ]*-Xlinker/-Xlinker/g' -e 's/-Xlinker[ ]*-Xcc/-Xcc/g' -e 's/-Xlinker[ ]*--export-dynamic//g' -e 's/-Xlinker[ ]*-Xlinker/-Xlinker/g' -e 's/-Xcc *$//' -e 's/-Xlinker *$//'`
CCFLAGS=`pkg-config --cflags $module pangocairo pangoft2 pango gobject-$GLIB_VER gio-unix-$GLIB_VER glib-$GLIB_VER | tr ' ' '\n' | sed 's/^/-Xcc /' | tr '\n' ' ' | sed -e 's/^/-Xlinker /' -e 's/-Wl,//g' -e 's/,/ -Xlinker /g' -e 's/ -pthread/ -lpthread/g' -e 's/-Xcc[ ]*-Xlinker/-Xlinker/g' -e 's/-Xlinker[ ]*-Xcc/-Xcc/g' -e 's/-Xlinker[ ]*--export-dynamic//g' -e 's/-Xlinker[ ]*-Xlinker/-Xlinker/g' -e 's/-Xcc *$//' -e 's/-Xlinker *$//'` CCFLAGS=`pkg-config --cflags gtk$major pangocairo pangoft2 pango gobject-$GLIB_VER gio-unix-$GLIB_VER glib-$GLIB_VER | tr ' ' '\n' | sed 's/^/-Xcc /' | tr '\n' ' ' | sed -e 's/^/-Xlinker /' -e 's/-Wl,//g' -e 's/,/ -Xlinker /g' -e 's/ -pthread/ -lpthread/g' -e 's/-Xcc[ ]*-Xlinker/-Xlinker/g' -e 's/-Xlinker[ ]*-Xcc/-Xcc/g' -e 's/-Xlinker[ ]*--export-dynamic//g' -e 's/-Xlinker[ ]*-Xlinker/-Xlinker/g' -e 's/-Xcc *$//' -e 's/-Xlinker *$//'`
TAC="tail -r" TAC="tail -r"
if which tac >/dev/null 2>&1 ; then if which tac >/dev/null 2>&1 ; then
TAC=tac TAC=tac

View File

@ -5,7 +5,7 @@
# #
. ./config.sh . ./config.sh
if [ -z "$@" ]; then if [ -z "$@" ]; then
JAZZY_ARGS="--theme fullwidth --author Ren&eacute;&nbsp;Hexel --author_url https://experts.griffith.edu.au/9237-rene-hexel --github_url https://github.com/rhx/Swift$Mod --github-file-prefix https://github.com/rhx/Swift$Mod/tree/generated --root-url http://rhx.github.io/Swift$Mod/ --output docs" JAZZY_ARGS="--theme fullwidth --author Ren&eacute;&nbsp;Hexel --author_url https://experts.griffith.edu.au/9237-rene-hexel --github_url https://github.com/rhx/Swift$Mod --github-file-prefix https://github.com/rhx/Swift$Mod/tree/gtk4-generated --root-url http://rhx.github.io/Swift$Mod/ --output docs"
fi fi
[ -e "$BUILD_DIR/build.db" ] || ./build.sh [ -e "$BUILD_DIR/build.db" ] || ./build.sh
rm -rf .docs.old rm -rf .docs.old

View File

@ -1,5 +1,5 @@
version: 1 version: 1
gir-name: Gdk-3.0 gir-name: Gdk-4.0
pkg-config: gdk-3.0 pkg-config: gtk4
output-directory: Sources/Gdk output-directory: Sources/Gdk
alpha-names: true alpha-names: true