mirror of
https://github.com/chromebrew/chromebrew.git
synced 2026-01-10 07:57:59 -05:00
@@ -3,46 +3,104 @@ require 'package'
|
||||
class Codelite < Package
|
||||
description 'CodeLite is an open source, free, cross platform IDE specialized in C, C++, PHP and JavaScript'
|
||||
homepage 'https://codelite.org/'
|
||||
version '13.0'
|
||||
compatibility 'aarch64,armv7l,x86_64'
|
||||
case ARCH
|
||||
when 'aarch64', 'armv7l', 'x86_64'
|
||||
source_url 'https://github.com/eranif/codelite/archive/13.0.tar.gz'
|
||||
source_sha256 'f2653fa42d6214999718236998cb223e6de00a498c0cfde795e901be693fb9ac'
|
||||
depends_on 'gtk2'
|
||||
depends_on 'hunspell'
|
||||
depends_on 'libssh'
|
||||
depends_on 'uchardet'
|
||||
depends_on 'wxwidgets'
|
||||
depends_on 'sommelier'
|
||||
end
|
||||
version '13.0-1'
|
||||
compatibility 'all'
|
||||
source_url 'https://github.com/eranif/codelite/archive/13.0.tar.gz'
|
||||
source_sha256 'f2653fa42d6214999718236998cb223e6de00a498c0cfde795e901be693fb9ac'
|
||||
|
||||
binary_url ({
|
||||
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/codelite-13.0-chromeos-armv7l.tar.xz',
|
||||
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/codelite-13.0-chromeos-armv7l.tar.xz',
|
||||
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/codelite-13.0-chromeos-x86_64.tar.xz',
|
||||
binary_url({
|
||||
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/codelite-13.0-1-chromeos-armv7l.tar.xz',
|
||||
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/codelite-13.0-1-chromeos-armv7l.tar.xz',
|
||||
i686: 'https://dl.bintray.com/chromebrew/chromebrew/codelite-13.0-1-chromeos-i686.tar.xz',
|
||||
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/codelite-13.0-1-chromeos-x86_64.tar.xz'
|
||||
})
|
||||
binary_sha256 ({
|
||||
aarch64: 'c66dfd41c532de8c20d5057790c112f42d549ce9d3874b53d36f591cd411a587',
|
||||
armv7l: 'c66dfd41c532de8c20d5057790c112f42d549ce9d3874b53d36f591cd411a587',
|
||||
x86_64: '3bcde4fa9a59939b654b1d6b7fbfe6edb7bad7759a3706f8498a85e7bc1d3dcb',
|
||||
binary_sha256({
|
||||
aarch64: '3ce2928e3a9d72d9a46c90260a6d5b4396913dcdb02a7c8342acebeb5db5c9e0',
|
||||
armv7l: '3ce2928e3a9d72d9a46c90260a6d5b4396913dcdb02a7c8342acebeb5db5c9e0',
|
||||
i686: 'c3b273b5ed85b711e8d7040ae55142b8f9d92f3a0aad6ec4c09f89b179130b51',
|
||||
x86_64: '8a3cb05597521854499fd7f69287ed82a68853a11bda85621c16456b1dc1c081'
|
||||
})
|
||||
|
||||
depends_on 'gtk3'
|
||||
depends_on 'hunspell'
|
||||
depends_on 'libssh'
|
||||
depends_on 'wxwidgets'
|
||||
depends_on 'sommelier'
|
||||
depends_on 'harfbuzz'
|
||||
|
||||
def self.patch
|
||||
system "for f in \$(grep -rn '\"/usr\"' | grep set | cut -d':' -f1 | sort | uniq); do sed -i 's,/usr,#{CREW_PREFIX},' \$f; done"
|
||||
# As per https://github.com/eranif/codelite/issues/2292
|
||||
@gtk3patch = <<~PATCH_EOF
|
||||
From 92ed90e07774dfc8556bee02c66120eed4938a40 Mon Sep 17 00:00:00 2001
|
||||
From: dghart <dghart david@4Pane.co.uk>
|
||||
Date: Wed, 19 Jun 2019 11:23:38 +0100
|
||||
Subject: [PATCH] Compilation fix for wx3.0 gtk+3 builds
|
||||
#{' '}
|
||||
---
|
||||
codelite_terminal/TextView.cpp | 12 ++++++++++++
|
||||
1 file changed, 12 insertions(+)
|
||||
#{' '}
|
||||
diff --git a/codelite_terminal/TextView.cpp b/codelite_terminal/TextView.cpp
|
||||
index 83d2e260c..5966f9972 100644
|
||||
--- a/codelite_terminal/TextView.cpp
|
||||
+++ b/codelite_terminal/TextView.cpp
|
||||
@@ -12,7 +12,11 @@ TextView::TextView(wxWindow* parent, wxWindowID winid)
|
||||
m_ctrl->SetCaretStyle(wxSTC_CARETSTYLE_BLOCK);
|
||||
m_ctrl->SetYCaretPolicy(wxSTC_CARET_STRICT | wxSTC_CARET_SLOP, 4);
|
||||
m_ctrl->SetLexer(wxSTC_LEX_CONTAINER);
|
||||
+#if wxCHECK_VERSION(3, 1, 1)
|
||||
m_ctrl->StartStyling(0);
|
||||
+#else
|
||||
+ m_ctrl->StartStyling(0, 0x1f);
|
||||
+#endif
|
||||
m_ctrl->SetWrapMode(wxSTC_WRAP_CHAR);
|
||||
#else
|
||||
m_ctrl = new TextCtrl_t(this, wxID_ANY, "", wxDefaultPosition, wxDefaultSize,
|
||||
@@ -61,7 +65,11 @@ void TextView::SetDefaultStyle(const wxTextAttr& attr)
|
||||
{
|
||||
#if USE_STC
|
||||
m_defaultAttr = attr;
|
||||
+#if wxCHECK_VERSION(3, 1, 1)
|
||||
m_ctrl->StartStyling(m_ctrl->GetLastPosition());
|
||||
+#else
|
||||
+ m_ctrl->StartStyling(m_ctrl->GetLastPosition(), 0x1f);
|
||||
+#endif
|
||||
#else
|
||||
m_ctrl->SetDefaultStyle(attr);
|
||||
#endif
|
||||
@@ -210,6 +218,10 @@ void TextView::Clear()
|
||||
#if USE_STC
|
||||
m_ctrl->ClearAll();
|
||||
m_ctrl->ClearDocumentStyle();
|
||||
+#if wxCHECK_VERSION(3, 1, 1)
|
||||
m_ctrl->StartStyling(0);
|
||||
+#else
|
||||
+ m_ctrl->StartStyling(0, 0x1f);
|
||||
+#endif
|
||||
#endif
|
||||
}
|
||||
PATCH_EOF
|
||||
IO.write('codelite_gtk3.patch', @gtk3patch)
|
||||
system 'patch -p 1 -i codelite_gtk3.patch'
|
||||
end
|
||||
|
||||
def self.build
|
||||
Dir.mkdir 'build'
|
||||
Dir.chdir 'build' do
|
||||
system 'cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release ..'
|
||||
system 'make'
|
||||
Dir.mkdir 'builddir'
|
||||
Dir.chdir 'builddir' do
|
||||
system "env CC=clang CXX=clang++ LD=ld.lld \
|
||||
CFLAGS='-pipe -flto=thin -fuse-ld=lld' \
|
||||
CXXFLAGS='-pipe -flto=thin -isystem #{CREW_PREFIX}/include/harfbuzz -fuse-ld=lld' \
|
||||
LDFLAGS='-flto=thin' \
|
||||
cmake -G Ninja \
|
||||
-DENABLE_LLDB=1 \
|
||||
#{CREW_CMAKE_OPTIONS} \
|
||||
.."
|
||||
end
|
||||
system 'ninja -C builddir'
|
||||
end
|
||||
|
||||
def self.install
|
||||
Dir.chdir 'build' do
|
||||
system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install'
|
||||
end
|
||||
system "DESTDIR=#{CREW_DEST_DIR} ninja -C builddir install"
|
||||
end
|
||||
end
|
||||
|
||||
@@ -3,22 +3,22 @@ require 'package'
|
||||
class Wxwidgets < Package
|
||||
description 'wxWidgets is a C++ library that lets developers create applications for Windows, macOS, Linux and other platforms with a single code base.'
|
||||
homepage 'https://www.wxwidgets.org/'
|
||||
version '3.0.5.1-1'
|
||||
version '3.0.5.1-2'
|
||||
compatibility 'all'
|
||||
source_url 'https://github.com/wxWidgets/wxWidgets/archive/v3.0.5.1.tar.gz'
|
||||
source_sha256 'bae4d9f289e33a05fb8553fcc580564d30efe6a882ff08e3d4e09ef01f5f6578'
|
||||
|
||||
binary_url ({
|
||||
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/wxwidgets-3.0.5.1-1-chromeos-armv7l.tar.xz',
|
||||
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/wxwidgets-3.0.5.1-1-chromeos-armv7l.tar.xz',
|
||||
i686: 'https://dl.bintray.com/chromebrew/chromebrew/wxwidgets-3.0.5.1-1-chromeos-i686.tar.xz',
|
||||
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/wxwidgets-3.0.5.1-1-chromeos-x86_64.tar.xz',
|
||||
binary_url({
|
||||
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/wxwidgets-3.0.5.1-2-chromeos-armv7l.tar.xz',
|
||||
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/wxwidgets-3.0.5.1-2-chromeos-armv7l.tar.xz',
|
||||
i686: 'https://dl.bintray.com/chromebrew/chromebrew/wxwidgets-3.0.5.1-2-chromeos-i686.tar.xz',
|
||||
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/wxwidgets-3.0.5.1-2-chromeos-x86_64.tar.xz'
|
||||
})
|
||||
binary_sha256 ({
|
||||
aarch64: '6831092ab33fdc4c10df52bdc779652f26f8d7c8a1e48097768a3892eea164f7',
|
||||
armv7l: '6831092ab33fdc4c10df52bdc779652f26f8d7c8a1e48097768a3892eea164f7',
|
||||
i686: '71f57c87fb5f1256a811e241ecc8db54a6042d4a9941128b09fff1e3192a8fa7',
|
||||
x86_64: '04c515d5f4280c78e50ac0e79577f862ef3d526473e096e6ee8f731f43055135',
|
||||
binary_sha256({
|
||||
aarch64: 'ed1d320f5031866429b4d5ef6fa32b55703f0863da4b038f85a5618949952c4a',
|
||||
armv7l: 'ed1d320f5031866429b4d5ef6fa32b55703f0863da4b038f85a5618949952c4a',
|
||||
i686: '1670e89718d59b1dad3abee8d40cdc0757e4a0df748189d1b3078d9f5b37ef38',
|
||||
x86_64: '56e179fe5b48b444525b34701c64b7e2e5fc3e5e6a9a57ee7769560785400901'
|
||||
})
|
||||
|
||||
depends_on 'gst_plugins_base'
|
||||
@@ -29,27 +29,32 @@ class Wxwidgets < Package
|
||||
depends_on 'mesa'
|
||||
depends_on 'gtk3'
|
||||
|
||||
def self.build
|
||||
def self.patch
|
||||
# Keeps an abicheck error from derailing compile on multiple versions of wxwidgets, including 3.1
|
||||
# This may be useful when moving to the next 3.1 based stable version, so keep it in.
|
||||
system "cat <<'EOF'> make-abicheck-non-fatal.patch
|
||||
diff -up wxGTK-2.8.12/src/common/appbase.cpp.abicheck wxGTK-2.8.12/src/common/appbase.cpp
|
||||
--- wxGTK-2.8.12/src/common/appbase.cpp.abicheck 2015-03-12 17:15:18.000000000 +0100
|
||||
+++ wxGTK-2.8.12/src/common/appbase.cpp 2015-03-12 17:15:57.000000000 +0100
|
||||
@@ -424,10 +424,7 @@ bool wxAppConsole::CheckBuildOptions(con
|
||||
msg.Printf(_T(\"Mismatch between the program and library build versions detected.\nThe library used %s,\nand %s used %s.\"),
|
||||
lib.c_str(), progName.c_str(), prog.c_str());
|
||||
@make_abicheck_non_fatal_patch = <<~'PATCH_EOF'
|
||||
diff -up wxGTK-2.8.12/src/common/appbase.cpp.abicheck wxGTK-2.8.12/src/common/appbase.cpp
|
||||
--- wxGTK-2.8.12/src/common/appbase.cpp.abicheck 2015-03-12 17:15:18.000000000 +0100
|
||||
+++ wxGTK-2.8.12/src/common/appbase.cpp 2015-03-12 17:15:57.000000000 +0100
|
||||
@@ -424,10 +424,7 @@ bool wxAppConsole::CheckBuildOptions(con
|
||||
msg.Printf(_T("Mismatch between the program and library build versions detected.\nThe library used %s,\nand %s used %s."),
|
||||
lib.c_str(), progName.c_str(), prog.c_str());
|
||||
|
||||
- wxLogFatalError(msg.c_str());
|
||||
-
|
||||
- // normally wxLogFatalError doesn't return
|
||||
- return false;
|
||||
+ wxLogWarning(msg.c_str());
|
||||
}
|
||||
#undef wxCMP
|
||||
PATCH_EOF
|
||||
IO.write('make-abicheck-non-fatal.patch', @make_abicheck_non_fatal_patch)
|
||||
system 'patch -p1 -i make-abicheck-non-fatal.patch || true'
|
||||
end
|
||||
|
||||
- wxLogFatalError(msg.c_str());
|
||||
-
|
||||
- // normally wxLogFatalError doesn't return
|
||||
- return false;
|
||||
+ wxLogWarning(msg.c_str());
|
||||
}
|
||||
#undef wxCMP
|
||||
EOF"
|
||||
system "patch -Np1 -i make-abicheck-non-fatal.patch || true"
|
||||
def self.build
|
||||
system "env CFLAGS='-pipe -flto=auto' CXXFLAGS='-pipe -flto=auto' \
|
||||
LDFLAGS='-flto=auto' \
|
||||
./configure #{CREW_OPTIONS} \
|
||||
--with-gtk=3 \
|
||||
--with-opengl \
|
||||
@@ -63,7 +68,7 @@ EOF"
|
||||
--with-libtiff=sys \
|
||||
--without-gnomevfs \
|
||||
--disable-precomp-headers"
|
||||
system 'make'
|
||||
system 'make'
|
||||
end
|
||||
|
||||
def self.install
|
||||
|
||||
Reference in New Issue
Block a user