diff --git a/kde-base/kstars/additional-files/kstars.rdef.in b/kde-base/kstars/additional-files/kstars.rdef.in new file mode 100644 index 000000000..179269f9b --- /dev/null +++ b/kde-base/kstars/additional-files/kstars.rdef.in @@ -0,0 +1,95 @@ + +resource app_flags B_MULTIPLE_LAUNCH; + +resource app_version { + major = @MAJOR@, + middle = @MIDDLE@, + minor = @MINOR@, + + variety = B_APPV_FINAL, + internal = 0, + + short_info = "KStars", + long_info = "@LONG_INFO@" +}; + +resource app_signature "@APP_SIGNATURE@"; + +resource vector_icon { + $"6E6369660A054B0500055C05680567040068020006023BFC07BCFD233E49CA3D" + $"0CEF486FF34A5EB000000001FFF6BB49020102023D31133CAB78BCF44D3D8825" + $"48019C466C6200FFFFFFFEFF05D3F99E03D1E0E50459F31D0009BB4FB37FBB4F" + $"B37FBC88B319BF27B3E6BE2DB2D7C110B56FC2CDBA14C29CB791C286BD58BE92" + $"C297C0A3C029BD8BC3C8BAACC510BC2DC49CB881C548B4AEC319B654C480B349" + $"C1C8B37ABE3FB342C002B382BE04B39BBD94B38CBDD924B95DBB62B379B751B5" + $"3FBB62B3790208BDBBB532BEA8B510BB88B575B87EB8A8B9D7B6F4B867B8C5B8" + $"3AB900B850B8E3B82AB916B809B942B819B92CB7C9B99BB751BA4CB78BB9F4B5" + $"FDBC9AB5A3C20CB4E4BF5EB61EC3C1B95EC235B847C2CEBD1D40BF87B6B5BFD1" + $"BB44BF8CB58A0009BB4FB37FBB4FB37FBC88B319BF27B3E6BE2DB2D7C110B56F" + $"C2CDBA14C29CB791C286BD58BE92C297C0A3C029BD8BC3C8BAACC510BC2DC49C" + $"B881C548B4AEC319B654C480B349C1C8B37ABE3FB342C002B382BE04B39BBD94" + $"B38CBDD924B95DBB62B379B751B53FBB62B3790208BDBBB532BEA8B510BB88B5" + $"75B87EB8A8B9D7B6F4B867B8C5B83AB900B850B8E3B82AB916B809B942B819B9" + $"2CB7C9B99BB751BA4CB78BB9F4B5FDBC9AB5A3C20CB4E4BF5EB61EC3C1B95EC2" + $"35B847C2CEBD1D40BF87B6B5BFD1BB44BF8CB58A0005C8F7BDF7C8F7BDF7CA60" + $"BDB1CBF8C062CBA3BF1DCC1DC1C1C93CC300CA86C303C877C247C72FC0A4C78C" + $"C1B9C6E6BF60C922BDDEC85FBE9EC922BDDE0202C91FBED1CA4ABEC1C8FEBFCE" + $"CB32C103CA21C18DCB59BFE80005C8F7BDF7C8F7BDF7CA60BDB1CBF8C062CBA3" + $"BF1DCC1DC1C1C93CC300CA86C303C877C247C72FC0A4C78CC1B9C6E6BF60C922" + $"BDDEC85FBE9EC922BDDE0202C91FBED1CA4ABEC1C8FEBFCECB32C103CA21C18D" + $"CB59BFE80204C8DEC4CBCA04C6D1C9D6C51ACB07C715CAE2C601CB07C88BC8C3" + $"CA81C9FDC9D1C787CB0AC569C917C5FECA37C7B0C9FE0204C8DEC4CBCA04C6D1" + $"C9D6C51ACB07C715CAE2C601CB07C88BC8C3CA81C9FDC9D1C787CB0AC569C917" + $"C5FECA37C7B0C9FE0204C10CC632BFB4C632C264C632C372C8A1C372C744C372" + $"C9FEC10CCB10C264CB10BFB4CB10BEA6C8A1BEA6C9FEBEA6C7440204C10CC632" + $"BFB4C632C264C632C372C8A1C372C744C372C9FEC10CCB10C264CB10BFB4CB10" + $"BEA6C8A1BEA6C9FEBEA6C7440604BEC2A5CAE4C535D09AC535D09AC546D117C4" + $"25D103C480D169C425D103C1A7CB410604BEC2A5CAE4C535D09AC535D09AC546" + $"D117C425D103C480D169C425D103C1A7CB410605FE02C11FCB48BFF0D2A8BFF0" + $"D2A8BFCB70BF82D2D6BF8ED2D8BF74D2D4BF36D295BF47D2C4BF36D295C015CB" + $"100605FE02C11FCB48BFF0D2A8BFF0D2A8BFCB70BF82D2D6BF8ED2D8BF74D2D4" + $"BF36D295BF47D2C4BF36D295C015CB100604BEBFBECAE4BBF8CE9EBBF8CE9EBB" + $"8FCEB9BB6ACE41BB4ECE7FBB6ACE41BEDFCA180604BEBFBECAE4BBF8CE9EBBF8" + $"CE9EBB8FCEB9BB6ACE41BB4ECE7FBB6ACE41BEDFCA180204C2C4CC52BD7CCC52" + $"C80CCC52CC33CFDACC33CDDFCC33D1D4C2C4D362C80CD362BD7CD362B956CFDA" + $"B956D1D4B956CDDF0204C2C4CC52BD7CCC52C80CCC52CC33CFDACC33CDDFCC33" + $"D1D4C2C4D362C80CD362BD7CD362B956CFDAB956D1D4B956CDDF0006BDBBB532" + $"BDBBB532BEA8B510BF87B6B5BFABB5A0BFD1BB44B95EC235BD1D40B847C2CEB5" + $"A3C20CB61EC3C1B4E4BF5EB751BA4CB5FDBC9AB8D3B806BDBBB532BAD7B58ABD" + $"BBB5320206BD39B584BDD6B570BB0FB5D3B878B8FDB9F9B7C5B6DABB97B5E2C1" + $"CEB518BEA3B63FC2F3B869C263B789C2DABA84C189BD48BDE6BC22BFD0BEB5BB" + $"9CBF30B620BFC4B8DBBF02B548000CBE92C297BE92C297C0A3C029C2CDBA14C2" + $"86BD58C428BC64C6C1C116C56CBEC3C6E8C0F3C72FC0A4C70AC0CBC78CC1B9C9" + $"3CC300C877C247C875C37AC8DEC4CBC7FDC412CA04C6D1C569C917C7B0C9FEC4" + $"DDC8E1C3C6C879C450C8B2C3C6C879C392C862C392C862C35CC660BF3FC6C5C0" + $"BCC574BDB4C643BAACC510BC2EC5ADBC2DC49CBE92C297BD8BC3C8BE92C29700" + $"0CBE92C297BE92C297C0A3C029C2CDBA14C286BD58C428BC64C6C1C116C56CBE" + $"C3C6E8C0F3C72FC0A4C70AC0CBC78CC1B9C93CC300C877C247C875C37AC8DEC4" + $"CBC7FDC412CA04C6D1C569C917C7B0C9FEC4DDC8E1C3C6C879C450C8B2C3C6C8" + $"79C392C862C392C862C35CC660BF3FC6C5C0BCC574BDB4C643BAACC510BC2EC5" + $"ADBC2DC49CBE92C297BD8BC3C8BE92C2970003C91FBED7C91FBED7CA4ABEC7CB" + $"32C103CB59BFE8CA21C18DC91FBF09C8FEC006C91FBF090202C981BF42CA5ABF" + $"3EC95CC00CCAF1C0C0CA2BC0D8CAF6BFEB0007BD39B584BD39B584BDD6B570BF" + $"30B620BF02B548BFC4B8DBBD48BDE6BEB5BB9CBC22BFD0B869C263BA84C189B7" + $"89C2DAB5E2C1CEB63FC2F3B518BEA3B878B8FDB6DABB97B9F9B7C5BD39B584BB" + $"0FB5D3BD39B5840202C97BBF2FC931BFDBCA54BF2CCAF1C0C0CAF6BFEBCA32C1" + $"220203C1DDC0D1C13DC0E0C377C23DC6ABC5EFC5F7C3AEC48AC502C140C1FCC2" + $"E1C38BC0E9C16F160A00020001023F7F8C0000000000003F13C54403293FAA36" + $"0A01020203123F7F8C0000000000003F13C54403293FAA3601178200040A0202" + $"0405023F7F8C0000000000003F13C54403293FAA360A01020607123F7F8C0000" + $"000000003F13C54403293FAA3601178200040A030108023F7F8C000000000000" + $"3F13C54403293FAA360A010109123F7F8C0000000000003F13C54403293FAA36" + $"01178200040A09010D123F7F8C0000000000003F13C54403293FAA3601178200" + $"040A01010C023F7F8C0000000000003F13C54403293FAA360A09010F123F7F8C" + $"0000000000003F13C54403293FAA3601178200040A01010E023F7F8C00000000" + $"00003F13C54403293FAA360A050112023F7F8C0000000000003F13C54403293F" + $"AA360A090111123F7F8C0000000000003F13C54403293FAA3601178200040A01" + $"0110023F7F8C0000000000003F13C54403293FAA360A06021415023F7F8C0000" + $"000000003F13C54403293FAA360A060116023F7F8C0000000000003F13C54403" + $"293FAA360A010117123F7F8C0000000000003F13C54403293FAA360117820004" + $"0A06021819023F7F8C0000000000003F13C54403293FAA360A07011A023F7F8C" + $"0000000000003F13C54403293FAA360A07011B023F7F8C0000000000003F13C5" + $"4403293FAA360A01010B123F7F8C0000000000003F13C54403293FAA34011782" + $"20040A06010A023F7F8C0000000000003F13C54403293FAA360A07011C023F7F" + $"8C0000000000003F13C54403293FAA36" +}; diff --git a/kde-base/kstars/kstars-2.8.8.recipe b/kde-base/kstars/kstars-2.8.8.recipe new file mode 100644 index 000000000..18c73c7d0 --- /dev/null +++ b/kde-base/kstars/kstars-2.8.8.recipe @@ -0,0 +1,178 @@ +SUMMARY="Desktop Planetarium by KDE" +DESCRIPTION="KStars is free, open source, cross-platform Astronomy Software. +It provides an accurate graphical simulation of the night sky, \ +from any location on Earth, at any date and time. \ +The display includes up to 100 million stars, 13,000 deep-sky objects,all 8 planets, \ +the Sun and Moon, and thousands of comets, asteroids, supernovae, and satellites. \ +For students and teachers, it supports adjustable simulation speeds in order to view \ +phenomena that happen over long timescales, the KStars Astrocalculator to predict \ +conjunctions, and many common astronomical calculations." +HOMEPAGE="https://edu.kde.org/kstars" +COPYRIGHT="2010-2017 KDE Organisation" +LICENSE="GNU LGPL v2" +REVISION="1" +SOURCE_URI="https://github.com/KDE/kstars/archive/v$portVersion.tar.gz" +CHECKSUM_SHA256="fdd515b0e1c8ab5620049f6cf0d1058d4fa79a5b7c2fd67f7949cec8781d5e6f" +PATCHES="kstars-$portVersion.patchset" +ADDITIONAL_FILES="kstars.rdef.in" + +ARCHITECTURES="?x86_gcc2 x86 x86_64" +SECONDARY_ARCHITECTURES="x86" + +PROVIDES=" + kstars$secondaryArchSuffix = $portVersion + app:KStars$secondaryArchSuffix = $portVersion + " +REQUIRES=" + haiku$secondaryArchSuffix + lib:libKF5Attica$secondaryArchSuffix + lib:libKF5Auth$secondaryArchSuffix + lib:libKF5Archive$secondaryArchSuffix + lib:libKF5Bookmarks$secondaryArchSuffix + lib:libKF5Codecs$secondaryArchSuffix + lib:libKF5Completion$secondaryArchSuffix + lib:libKF5ConfigCore$secondaryArchSuffix + lib:libKF5ConfigGui$secondaryArchSuffix + lib:libKF5ConfigWidgets$secondaryArchSuffix + lib:libKF5CoreAddons$secondaryArchSuffix + lib:libKF5Crash$secondaryArchSuffix + lib:libKF5DBusAddons$secondaryArchSuffix + lib:libKF5DocTools$secondaryArchSuffix + lib:libKF5Emoticons$secondaryArchSuffix + lib:libKF5GuiAddons$secondaryArchSuffix + lib:libKF5I18n$secondaryArchSuffix + lib:libKF5IconThemes$secondaryArchSuffix + lib:libKF5ItemViews$secondaryArchSuffix + lib:libKF5ItemModels$secondaryArchSuffix + lib:libKF5JobWidgets$secondaryArchSuffix + lib:libKF5KDELibs4Support$secondaryArchSuffix + lib:libKF5KIOCore$secondaryArchSuffix + lib:libKF5KIOFileWidgets$secondaryArchSuffix + lib:libKF5KIOWidgets$secondaryArchSuffix + lib:libKF5NewStuff$secondaryArchSuffix + lib:libKF5Notifications$secondaryArchSuffix + lib:libKF5NotifyConfig$secondaryArchSuffix + lib:libKF5Parts$secondaryArchSuffix + lib:libKF5Plotting$secondaryArchSuffix + lib:libKF5Service$secondaryArchSuffix + lib:libKF5Solid$secondaryArchSuffix + lib:libKF5SonnetUi$secondaryArchSuffix + lib:libKF5TextWidgets$secondaryArchSuffix + lib:libKF5UnitConversion$secondaryArchSuffix + lib:libKF5WidgetsAddons$secondaryArchSuffix + lib:libKF5WindowSystem$secondaryArchSuffix + lib:libKF5XmlGui$secondaryArchSuffix + lib:libkdeinit5_klauncher$secondaryArchSuffix + lib:libkdeinit5_kded5$secondaryArchSuffix + lib:libQt5Core$secondaryArchSuffix + lib:libQt5DBus$secondaryArchSuffix + lib:libQt5PrintSupport$secondaryArchSuffix + lib:libQt5Widgets$secondaryArchSuffix + lib:libQt5Gui$secondaryArchSuffix + lib:libQt5Xml$secondaryArchSuffix + lib:libQt5Network$secondaryArchSuffix + lib:libz$secondaryArchSuffix + " + +BUILD_REQUIRES=" + extra_cmake_modules >= 5.39 + haiku${secondaryArchSuffix}_devel + devel:eigen$secondaryArchSuffix + devel:libKF5Auth$secondaryArchSuffix + devel:libKF5Archive$secondaryArchSuffix + devel:libKF5Attica$secondaryArchSuffix + devel:libKF5Bookmarks$secondaryArchSuffix + devel:libKF5Codecs$secondaryArchSuffix + devel:libKF5CoreAddons$secondaryArchSuffix + devel:libKF5Completion$secondaryArchSuffix + devel:libKF5ConfigCore$secondaryArchSuffix + devel:libKF5ConfigGui$secondaryArchSuffix + devel:libKF5ConfigWidgets$secondaryArchSuffix + devel:libKF5Crash$secondaryArchSuffix + devel:libKF5DBusAddons$secondaryArchSuffix + devel:libKF5DesignerPlugin$secondaryArchSuffix + devel:libKF5DocTools$secondaryArchSuffix + devel:libKF5Emoticons$secondaryArchSuffix + devel:libKF5GuiAddons$secondaryArchSuffix + devel:libKF5I18n$secondaryArchSuffix + devel:libKF5IconThemes$secondaryArchSuffix + devel:libKF5ItemViews$secondaryArchSuffix + devel:libKF5ItemModels$secondaryArchSuffix + devel:libKF5JobWidgets$secondaryArchSuffix + devel:libKF5KDELibs4Support$secondaryArchSuffix + devel:libKF5KIOCore$secondaryArchSuffix + devel:libKF5KIOFileWidgets$secondaryArchSuffix + devel:libKF5KIOWidgets$secondaryArchSuffix + devel:libKF5NewStuff$secondaryArchSuffix + devel:libKF5Notifications$secondaryArchSuffix + devel:libKF5NotifyConfig$secondaryArchSuffix + devel:libKF5Parts$secondaryArchSuffix + devel:libKF5Plotting$secondaryArchSuffix + devel:libKF5Service$secondaryArchSuffix + devel:libKF5Solid$secondaryArchSuffix + devel:libKF5SonnetUi$secondaryArchSuffix + devel:libKF5TextWidgets$secondaryArchSuffix + devel:libKF5UnitConversion$secondaryArchSuffix + devel:libKF5WidgetsAddons$secondaryArchSuffix + devel:libKF5WindowSystem$secondaryArchSuffix + devel:libKF5XmlGui$secondaryArchSuffix + devel:libkdeinit5_klauncher$secondaryArchSuffix + devel:libkdeinit5_kded5$secondaryArchSuffix + devel:libQt5Core$secondaryArchSuffix >= 5.7 + devel:libz$secondaryArchSuffix + " +BUILD_PREREQUIRES=" + cmd:cmake + cmd:g++$secondaryArchSuffix + cmd:make + cmd:python2 + " + +BUILD() +{ + mkdir -p build + cd build + + cmake .. \ + -DCMAKE_INSTALL_PREFIX=$appsDir/KStars \ + -DCMAKE_INSTALL_DATAROOTDIR=$dataDir \ + -DSHARE_INSTALL_PREFIX=$dataDir \ + -DECM_DIR=/system/data/cmake/Modules/ECM/cmake + make $jobArgs +} + +INSTALL() +{ + cd build + make install + + mv $appsDir/KStars/bin/kstars $appsDir/KStars/KStars + rm -rf $appsDir/KStars/bin \ + $appsDir/KStars/lib \ + $dataDir/applications \ + $dataDir/icons \ + $dataDir/config.kcfg \ + $dataDir/knotifications5 \ + $dataDir/sounds + + local APP_SIGNATURE="application/x-vnd.kde-kstars" + local MAJOR="`echo "$portVersion" | cut -d. -f1`" + local MIDDLE="`echo "$portVersion" | cut -d. -f2`" + local MINOR="`echo "$portVersion" | cut -d. -f3`" + local LONG_INFO="$SUMMARY" + sed \ + -e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \ + -e "s|@MAJOR@|$MAJOR|" \ + -e "s|@MIDDLE@|$MIDDLE|" \ + -e "s|@MINOR@|$MINOR|" \ + -e "s|@LONG_INFO@|$LONG_INFO|" \ + $portDir/additional-files/kstars.rdef.in > kstars.rdef + + addResourcesToBinaries kstars.rdef $appsDir/KStars/KStars + addAppDeskbarSymlink $appsDir/KStars/KStars +} + +TEST() +{ + make test +} diff --git a/kde-base/kstars/patches/kstars-2.8.8.patchset b/kde-base/kstars/patches/kstars-2.8.8.patchset new file mode 100644 index 000000000..47afdba8d --- /dev/null +++ b/kde-base/kstars/patches/kstars-2.8.8.patchset @@ -0,0 +1,82 @@ +From 3922d6f415fbfa9154d36bef777fc78e29c11a08 Mon Sep 17 00:00:00 2001 +From: Gerasim Troeglazov <3dEyes@gmail.com> +Date: Mon, 20 Nov 2017 22:44:37 +1000 +Subject: Fix build for Haiku + + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 641c144..5a5a12b 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -231,6 +231,14 @@ if (UNIX) + endif(UNIX) + + # Add security (hardening flags) ++IF (HAIKU) ++ SET(SEC_COMP_FLAGS "-D_FORTIFY_SOURCE=2 -Wcast-align -fPIE -Wa,--noexecstack") ++ SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${SEC_COMP_FLAGS}") ++ SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${SEC_COMP_FLAGS}") ++ SET(SEC_LINK_FLAGS "-Wl,-z,nodump -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now -pie") ++ SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${SEC_LINK_FLAGS}") ++ SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${SEC_LINK_FLAGS}") ++ELSE () + IF (UNIX OR APPLE OR ANDROID) + SET(SEC_COMP_FLAGS "-D_FORTIFY_SOURCE=2 -fstack-protector-all -Wcast-align -fPIE") + IF (NOT ANDROID AND NOT CMAKE_CXX_COMPILER_ID STREQUAL "Clang" AND NOT APPLE) +@@ -248,6 +256,7 @@ IF (UNIX OR APPLE OR ANDROID) + SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${SEC_LINK_FLAGS}") + SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${SEC_LINK_FLAGS}") + ENDIF () ++ENDIF () + + # Clang Format support + IF (UNIX OR APPLE) +@@ -358,7 +367,9 @@ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/kstars/version.h.cmake + # let our config.h be found first in any case + include_directories (BEFORE ${CMAKE_CURRENT_BINARY_DIR}) + ++IF (NOT HAIKU) + add_subdirectory(doc) ++ENDIF() + add_subdirectory(kstars) + add_subdirectory(datahandlers) + +@@ -371,7 +382,9 @@ IF (NOT ANDROID) + ki18n_install("${CMAKE_CURRENT_BINARY_DIR}/po") + ENDIF () + ++IF (NOT HAIKU) + install(FILES org.kde.kstars.appdata.xml DESTINATION ${KDE_INSTALL_METAINFODIR}) ++ENDIF() + + feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES) + +diff --git a/kstars/htmesh/SkipListElement.h b/kstars/htmesh/SkipListElement.h +index f8187e4..a14cd7d 100644 +--- a/kstars/htmesh/SkipListElement.h ++++ b/kstars/htmesh/SkipListElement.h +@@ -20,7 +20,7 @@ + #define KEY_MAX _I64_MAX + #else + #if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__DragonFly__) || \ +- (defined(__SUNPRO_CC) && defined(__sun)) || defined(__APPLE__) ++ (defined(__SUNPRO_CC) && defined(__sun)) || defined(__APPLE__) || defined(__HAIKU__) + #define KEY_MAX LLONG_MAX + #else + #define KEY_MAX LONG_LONG_MAX +diff --git a/kstars/htmesh/SpatialGeneral.h b/kstars/htmesh/SpatialGeneral.h +index 450119e..4c822d0 100644 +--- a/kstars/htmesh/SpatialGeneral.h ++++ b/kstars/htmesh/SpatialGeneral.h +@@ -101,7 +101,7 @@ const float64 gEpsilon = 1.0E-15; + // standard explicit template instantiation, define. + // + +-#if defined(__APPLE__) ++#if defined(__APPLE__) || defined(__HAIKU__) + #define LINKAGE + #endif + +-- +2.15.0 +