homebrew-core/Formula/qwt.rb
Larry Shaffer 4157ad9daa qwt: designer plugin fix and qwtmathml option.
Closes Homebrew/homebrew#26152.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2014-08-06 18:04:08 +01:00

76 lines
2.4 KiB
Ruby

require "formula"
class Qwt < Formula
homepage "http://qwt.sourceforge.net/"
url "https://downloads.sourceforge.net/project/qwt/qwt/6.1.0/qwt-6.1.0.tar.bz2"
sha1 "48a967038f7aa9a9c87c64bcb2eb07c5df375565"
option "with-qwtmathml", "Build the qwtmathml library"
option "without-plugin", "Skip building the Qt Designer plugin"
depends_on "qt"
# Update designer plugin linking back to qwt framework/lib after install
# See: https://sourceforge.net/p/qwt/patches/45/
patch :DATA
def install
inreplace "qwtconfig.pri" do |s|
s.gsub! /^\s*QWT_INSTALL_PREFIX\s*=(.*)$/, "QWT_INSTALL_PREFIX=#{prefix}"
s.sub! /\+(=\s*QwtDesigner)/, "-\\1" if build.without? "plugin"
end
args = ["-config", "release", "-spec"]
# On Mavericks we want to target libc++, this requires a unsupported/macx-clang-libc++ flag
if ENV.compiler == :clang and MacOS.version >= :mavericks
args << "unsupported/macx-clang-libc++"
else
args << "macx-g++"
end
if build.with? "qwtmathml"
args << "QWT_CONFIG+=QwtMathML"
prefix.install "textengines/mathml/qtmmlwidget-license"
end
system "qmake", *args
system "make"
system "make", "install"
# symlink Qt Designer plugin (note: not removed on qwt formula uninstall)
ln_sf prefix/"plugins/designer/libqwt_designer_plugin.dylib",
Formula["qt"].opt_prefix/"plugins/designer/" if build.with? "plugin"
end
def caveats
if build.with? "qwtmathml";<<-EOS.undent
The qwtmathml library contains code of the MML Widget from the Qt solutions package.
Beside the Qwt license you also have to take care of its license:
#{opt_prefix}/qtmmlwidget-license
EOS
end
end
end
__END__
diff --git a/designer/designer.pro b/designer/designer.pro
index c269e9d..c2e07ae 100644
--- a/designer/designer.pro
+++ b/designer/designer.pro
@@ -126,6 +126,16 @@ contains(QWT_CONFIG, QwtDesigner) {
target.path = $${QWT_INSTALL_PLUGINS}
INSTALLS += target
+
+ macx {
+ contains(QWT_CONFIG, QwtFramework) {
+ QWT_LIB = qwt.framework/Versions/$${QWT_VER_MAJ}/qwt
+ }
+ else {
+ QWT_LIB = libqwt.$${QWT_VER_MAJ}.dylib
+ }
+ QMAKE_POST_LINK = install_name_tool -change $${QWT_LIB} $${QWT_INSTALL_LIBS}/$${QWT_LIB} $(DESTDIR)$(TARGET)
+ }
}
else {
TEMPLATE = subdirs # do nothing