From patchwork Thu Mar 23 10:16:04 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Danny Milosavljevic X-Patchwork-Id: 48629 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id B4A5416FFB; Fri, 24 Mar 2023 22:01:59 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-1.8 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id C7F2416D87 for ; Fri, 24 Mar 2023 22:01:56 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pfpTC-00040N-Av; Fri, 24 Mar 2023 18:01:10 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pfpT8-0003xP-Ce for guix-patches@gnu.org; Fri, 24 Mar 2023 18:01:06 -0400 Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pfpT8-0000eY-2f for guix-patches@gnu.org; Fri, 24 Mar 2023 18:01:06 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1pfnPK-0003eI-DN for guix-patches@gnu.org; Fri, 24 Mar 2023 15:49:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#62424] [PATCH] gnu: Add lazarus. Resent-From: dannym@scratchpost.org Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 24 Mar 2023 19:49:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 62424 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 62424@debbugs.gnu.org Cc: Danny Milosavljevic X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.167968728813834 (code B ref -1); Fri, 24 Mar 2023 19:49:02 +0000 Received: (at submit) by debbugs.gnu.org; 24 Mar 2023 19:48:08 +0000 Received: from localhost ([127.0.0.1]:41416 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pfnOR-0003aw-2X for submit@debbugs.gnu.org; Fri, 24 Mar 2023 15:48:08 -0400 Received: from lists.gnu.org ([209.51.188.17]:35162) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pfnOO-0003aZ-Fl for submit@debbugs.gnu.org; Fri, 24 Mar 2023 15:48:05 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pfnON-0006d6-Vv for guix-patches@gnu.org; Fri, 24 Mar 2023 15:48:04 -0400 Received: from dd30410.kasserver.com ([85.13.145.193]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pfnOK-0006FK-EU for guix-patches@gnu.org; Fri, 24 Mar 2023 15:48:03 -0400 Received: from a300.lan (84-115-230-178.cable.dynamic.surfer.at [84.115.230.178]) by dd30410.kasserver.com (Postfix) with ESMTPSA id 5EF2311205EF; Fri, 24 Mar 2023 20:47:44 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=scratchpost.org; s=kas202303142049; t=1679687264; bh=VIOAssheFXjvo/EeA85EZdKH4HmiOXnXGfafRHqB+AY=; h=From:To:Cc:Subject:Date:From; b=FBZUvofNbNq9BG+E8M+u+3ofGxDdrCo53S0C9sCzzD/IdtUD9+rRyUy7hyaUPUIdL J7RfVf1a8VogbJWlL6KST/lwCBuSuDbf2Ds3bhybzLv9hF8JIfN1HLA05SIU+kwu3n LKUSJxlLMiPiYi+pg164jJ334CvZQeelQoEhDyvjaIMmEDPFdodwJzoW8iHM/QYIed 4IeA1xAyFyobFNBpCUJEIWTPd1oiOj3VxiWhb6RdL4emO1NQCqGXWC3+HVn/nN9YFO yybimwNsxCPbgT/mzV2TQ0chWBg18aka+53I68847U0i+ZTDxA4+iOUaA8G7F8ro0Q 8W/+1MSsY6Kag== From: dannym@scratchpost.org Date: Thu, 23 Mar 2023 11:16:04 +0100 Message-Id: <20230323101604.17976-1-dannym@scratchpost.org> X-Mailer: git-send-email 2.39.2 MIME-Version: 1.0 X-Spamd-Bar: + Received-SPF: none client-ip=85.13.145.193; envelope-from=dannym@scratchpost.org; helo=dd30410.kasserver.com X-Spam_score_int: -14 X-Spam_score: -1.5 X-Spam_bar: - X-Spam_report: (-1.5 / 5.0 requ) BAYES_00=-1.9, DATE_IN_PAST_24_48=1.34, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_NONE=0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches From: Danny Milosavljevic * gnu/packages/pascal.scm (lazarus): Add variable. --- gnu/packages/pascal.scm | 324 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 324 insertions(+) diff --git a/gnu/packages/pascal.scm b/gnu/packages/pascal.scm index f563f077dc..4432327bee 100644 --- a/gnu/packages/pascal.scm +++ b/gnu/packages/pascal.scm @@ -24,6 +24,7 @@ (define-module (gnu packages pascal) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix gexp) #:use-module (guix utils) #:use-module (guix build-system gnu) @@ -32,9 +33,13 @@ (define-module (gnu packages pascal) #:use-module (gnu packages bootstrap) #:use-module (gnu packages compression) #:use-module (gnu packages gcc) + #:use-module (gnu packages glib) + #:use-module (gnu packages gtk) #:use-module (gnu packages ncurses) #:use-module (gnu packages perl) + #:use-module (gnu packages pkg-config) #:use-module (gnu packages xml) + #:use-module (gnu packages xorg) #:use-module (ice-9 match)) (define %fpc-version "3.2.2") @@ -270,3 +275,322 @@ (define-public p2c Pascal programs.") (home-page "http://users.fred.net/tds/lab/p2c/") (license license:gpl2+))) + +(define-public lazarus + (package + (name "lazarus") + (version "2.2.6") + (source (origin + (method git-fetch) + (uri (git-reference + (url + "https://gitlab.com/freepascal.org/lazarus/lazarus.git") + (commit (string-append "lazarus_" + (string-join + (string-split version #\.) + "_"))))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0hpk6fxmy1h1q0df41jg1vnp8g8vynrg5v5ad43lv229nizfs3wj")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; No tests exist + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'build + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; RUNPATH -k-rpath= + ;; -Xr rlink-path + (let* ((libdirs + (map (lambda (x) + (assoc-ref inputs x)) + '("glib" "gdk-pixbuf" "gtk+" "libx11" + "libx11" "pango" "cairo" "atk"))) + (libs (append + (map (lambda (name) + (string-append "-Fl" name "/lib")) + libdirs) + (map (lambda (name) + (string-append "-k-rpath=" name "/lib")) + libdirs)))) + (setenv "LAZARUS_LIBPATHS" + (string-append ;"-XD " + (string-join libs " "))) + (setenv "MAKEFLAGS" + (string-append "LHELP_OPT=" + (string-join libs "\\ ")))) + (setenv "INSTALL_PREFIX" (assoc-ref outputs "out")) + (invoke "make" "bigide")))))) + (native-inputs + (list fpc pkg-config)) + (inputs + (list glib gdk-pixbuf gtk+-2 libx11 pango cairo atk)) + (synopsis "Integrated development environment for Pascal") + (description "This package provides an integrated development environment +for Pascal.") + (home-page "https://www.lazarus-ide.org/") + ; asl2.0: lcl/interfaces/customdrawn/android/*, lcl/lcltaskdialog.pas + ; + ; CC-BY-SA-3: + ; components/onlinepackagemanager/images/*, lcl/lcltaskdialog.pas + ; + ; CC-BY-SA-4: images/icons/lazarus.svg, lcl/lcltaskdialog.pas + ; + ; Expat: components/aggpas/expat-pas/*, + ; examples/database/sqldbtutorial3/dbconfig.pas, + ; examples/database/tsqlscript/dbconfig.pas, + ; lcl/interfaces/customdrawn/android/egl.pas, lcl/themes.pas, + ; components/opengl/example/uglyfont.pas + ; + ; Freetype: + ; components/lazutils/lazfreetype.pas, components/lazutils/tt*.pas + ; + ; LGPL-2+: + ; components/chmhelp/lhelp/chmdataprovider.pas + ; components/chmhelp/lhelp/chmspecialparser.pas + ; components/customdrawn/customdrawnextras.pas + ; components/datetimectrls/* + ; components/dbexport/fpdataexporter.pp + ; components/dbexport/frmbaseconfigexport.pp + ; components/dbexport/frmexportprogress.pp + ; components/dbexport/frmselectexportformat.pp + ; components/dbexport/regdbexport.pp + ; components/fpdebug/fpimgreaderwinpetypes.pas + ; components/fpvectorial/htmlvectorialreader.pas + ; components/ideintf/actionseditor.pas + ; components/ideintf/actionseditorstd.pas + ; components/ideintf/baseideintf.pas + ; components/ideintf/dbpropedits.pas + ; components/ideintf/fieldseditor.pas + ; components/ideintf/idedialogs.pas + ; components/ideintf/ideexterntoolintf.pas + ; components/ideintf/ideutils.pas + ; components/ideintf/keyvalpropeditdlg.pas + ; components/ideintf/macrodefintf.pas + ; components/ideintf/macrointf.pas + ; components/ideintf/maskpropedit.pas + ; components/ideintf/newfield.pas + ; components/ideintf/toolbarintf.pas + ; components/ideintf/treeviewpropedit.pas + ; components/lazcontrols/checkboxthemed.pas + ; components/lazcontrols/dividerbevel.pas + ; components/lazcontrols/extendednotebook.pas + ; components/lazcontrols/listfilteredit.pas + ; components/lazcontrols/listviewfilteredit.pas + ; components/lazcontrols/lvlgraphctrl.pas + ; components/lazcontrols/treefilteredit.pas + ; components/lazreport/source/* + ; components/lazutils/asiancodepagefunctions.inc + ; components/lazutils/fpcadds.pas + ; components/lazutils/laz2_dom.pas + ; components/lazutils/laz2_xmlcfg.pas + ; components/lazutils/laz2_xmlread.pas + ; components/lazutils/laz2_xmlutils.pas + ; components/lazutils/laz2_xmlwrite.pas + ; components/lazutils/laz2_xpath.pas + ; components/lazutils/laz_xmlcfg.pas + ; components/lazutils/laz_xmlstreaming.pas + ; components/lazutils/lookupstringlist.pas + ; components/multithreadprocs/mtpcpu.pas + ; components/multithreadprocs/mtprocs.pas + ; components/multithreadprocs/mtputils.pas + ; components/opengl/glcocoanscontext.pas + ; components/paradox/regparadox.pp + ; components/printers/printer4lazstrconst.pas + ; components/sparta/dockedformeditor/source/* + ; components/sparta/generics/source/* + ; components/wiki/myfphttpclient.pp + ; examples/lpicustomdata/lpicustomdata.lpr + ; ide/findinfilesdlg.pas + ; ide/findreplacedialog.pp + ; ide/inputfiledialog.pas + ; ide/lazadvancedipc.pp + ; ide/patheditordlg.pas + ; ide/transfermacros.pp + ; ide/wordcompletion.pp + ; lcl/colorbox.pas + ; lcl/customdrawncontrols.pas + ; lcl/dbextctrls.pp + ; lcl/dbgrids.pas + ; lcl/forms/calcform.pas + ; lcl/forms/timepopup.pas + ; lcl/grids.pas + ; lcl/include/comboex.inc + ; lcl/include/controlconsts.inc + ; lcl/include/customflowpanel.inc + ; lcl/include/dbdateedit.inc + ; lcl/include/tiffimage.inc + ; lcl/interfacebase.pp + ; lcl/interfaces/cocoa/cocoacaret.pas + ; lcl/interfaces/cocoa/cocoawschecklst.pas + ; lcl/interfaces/cocoa/cocoawsspin.pas + ; lcl/interfaces/cocoa/cocoa_extra.pas + ; lcl/interfaces/customdrawn/customdrawn_winextra.pas + ; lcl/interfaces/gtk3/gtk3wsextdlgs.pp + ; lcl/interfaces/qt/qt45.pas + ; lcl/interfaces/qt/qtcaret.pas + ; lcl/interfaces/win32/win32extra.pas + ; lcl/interfaces/wince/winext.pas + ; lcl/lclunicodedata.pas + ; test/testresult-db/importtestresults.pp + ; test/testresult-db/teststr.pp + ; test/testresult-db/tresults.pp + ; tools/lazdatadesktop/ddfiles.pp + ; components/aarre/src/aarrepkglist.pas + ; components/activex/activexcontainer.pas + ; components/activex/lazactivexreg.pas + ; components/anchordocking/anchordocking.pas + ; components/anchordocking/anchordockoptionsdlg.pas + ; components/anchordocking/anchordockstorage.pas + ; components/anchordocking/anchordockstr.pas + ; components/anchordocking/design/registeranchordocking.pas + ; components/anchordocking/restoredebugger/mainunit.pas + ; components/cairocanvas/cairoprinter.pas + ; components/codetools/examples/sourcecloser.lpr + ; components/compilers/c/lazcstrconsts.pas + ; components/compilers/c/lazcutil.pas + ; components/datadict/ldd_consts.pas + ; components/dbexport/sdb_consts.pas + ; components/externhelp/externhelpfrm.pas + ; components/fpcunit/guitestrunner.pas + ; components/fpcunit/ide/fpcunitlazideintf.pas + ; components/fpcunit/ide/strtestcaseopts.pas + ; components/fppkg/src/fppkg_const.pas + ; components/fppkg/src/fppkg_details.pas + ; components/fppkg/src/fppkg_mainfrm.pas + ; components/fppkg/src/fppkg_optionsfrm.pas + ; components/fppkg/src/lazfppkgmanagerintf.pas + ; components/fpweb/fpideexteditorinsertfilenameunit.pas + ; components/fpweb/fpwebfieldsettagunit.pas + ; components/fpweb/fpwebhrefeditunit.pas + ; components/fpweb/fpwebhtmltaglegendunit.pas + ; components/fpweb/fpwebnewhtmlfileunit.pas + ; components/fpweb/fpwebnewhtmlformunit.pas + ; components/fpweb/fpwebnewhtmlimgunit.pas + ; components/fpweb/fpwebnewhtmlinputunit.pas + ; components/fpweb/fpwebnewhtmllistunit.pas + ; components/fpweb/fpwebnewhtmltableunit.pas + ; components/fpweb/fpwebnewhtmltagpreunit.pas + ; components/fpweb/fpwebnewhtmltagtdunit.pas + ; components/fpweb/fpwebnewhtmltagtrunit.pas + ; components/fpweb/fpwebselectoptionsunit.pas + ; components/fpweb/fpwebselecttagunit.pas + ; components/fpweb/lazweb.pp + ; components/fpweb/weblazideintf.pp + ; components/images/lazbmp.pas + ; components/images/lazjpg.pas + ; components/images/lazpng.pas + ; components/images/lazpnm.pas + ; components/images/laztga.pas + ; components/images/lazxpm.pas + ; components/lazreport/samples/editor/maincalleditor.pas + ; components/lazreport/source/addons/DialogControls/lrdbdialogcontrols.pas + ; components/lazreport/source/addons/DialogControls/lrdialogcontrols.pas + ; components/lazreport/source/addons/DialogControls/lrformstorage.pas + ; components/lazreport/source/addons/DialogControls/lrformstorageeditor.pas + ; components/lazreport/source/addons/lrFclPDFExport/lr_e_fclpdf.pas + ; components/lazreport/source/addons/lrFclPDFExport/lr_pdfexport.lpk + ; components/lazreport/source/addons/lrFclPDFExport/lrpdfexport.pas + ; components/lazreport/source/addons/lrOfficeImport/lrofficeimport.pas + ; components/lazreport/source/addons/lrOfficeImport/lrspreadsheetimportunit.pas + ; components/lazreport/source/fr3tolrf.pas + ; components/lazreport/source/lr_crossarray.pas + ; components/lazreport/source/lr_crosstab.pas + ; components/lazreport/source/lr_crosstabeditor.pas + ; components/lazreport/source/lr_fpc.pas + ; components/lazreport/source/lr_hyphen.pas + ; components/messagecomposer/messagecomposer.pas + ; components/mrumenu/mrumanager.pp + ; components/mrumenu/reglazmru.pp + ; components/multithreadprocs/examples/parallelloop1.lpr + ; components/plotfunction/exprplotpanel.pp + ; components/plotfunction/plotpanel.pp + ; components/synedit/design/synpropertyeditobjectlist.pas + ; components/vlc/lclvlc.pp + ; examples/androidlcl/sqlitejniandroid.pas + ; examples/cleandir/dircleaner.pp + ; examples/cleandir/frmlog.pp + ; examples/cleandir/frmmain.pp + ; examples/cleandir/svccleandirs.pp + ; examples/cleandir/svcmap.pp + ; examples/designnonlcl/mywidgetdesigner.pas + ; examples/designnonlcl/mywidgetset.pas + ; examples/exploremenu/frmexploremenu.pas + ; examples/gridexamples/columneditors/main.pas + ; examples/gridexamples/columneditors/stringgrideditor.lpr + ; ide/editortoolbarstatic.pas + ; ide/toolbarconfig.pas + ; lcl/comboex.pas + ; lcl/defaulttranslator.pas + ; lcl/interfaces/gtk3/gtk3bindings/lazpangocairo1.pas + ; lcl/lcltranslator.pas + ; tools/iconvtable.pas + ; tools/iconvtable_dbcs.pas + ; tools/lazdatadesktop/lazdatadeskstr.pas + ; tools/lplupdate.lpr + ; tools/updatemakefiles.lpr + ; lcl/lcltaskdialog.pas + + ; MPL-1.1: + ; components/synedit/synedithighlighter.pp + ; components/synedit/synedithighlighterfoldbase.pas + ; components/synedit/synhighlighterposition.pas + ; components/synunihighlighter/synuni.lpk + ; components/turbopower_ipro/ipanim.pas + ; components/turbopower_ipro/ipconst.pas + ; components/turbopower_ipro/ipdefct.inc + ; components/turbopower_ipro/ipdefine.inc + ; components/turbopower_ipro/ipfilebroker.pas + ; components/turbopower_ipro/iphtml.pas + ; components/turbopower_ipro/iphtmlpv.pas + ; components/turbopower_ipro/ipmsg.pas + ; components/turbopower_ipro/ipstrms.pas + ; components/turbopower_ipro/iputils.pas + ; lcl/interfaces/gtk3/gtk3bindings/lazcairo1.pas + + ; own_dwywwi_license: components/opengl/example/uglyfont.pas + ; I don't abandon the copyright, but you can use this code and the header + ; (uglyfont.cpp and uglyfont.h) for your product regardless of the purpose, + ; i.e., free or commercial, open source or proprietary. + ; + ; However, I do not take any responsibility for the consequence of using + ; this code and header. Please use on your own risks. + + ; pascalscript-zlib-like: + ; components/PascalScript/* + + ; public-domain: + ; components/fpdebug/macho.pas + ; lcl/images/btncalculator.png + ; lcl/images/btncalendar.png + ; lcl/images/btnfiltercancel.png + ; lcl/images/btnseldir.png + ; lcl/images/btnselfile.png + ; lcl/images/btntime.png + ; lcl/images/buttons/* + ; lcl/images/dbnavigator/* + ; lcl/images/dialogs/* + ; lcl/images/dock/lcl_dock_to_bottom.png + ; lcl/images/dock/lcl_dock_to_left.png + ; lcl/images/dock/lcl_dock_to_page.png + ; lcl/images/dock/lcl_dock_to_right.png + ; lcl/images/dock/lcl_dock_to_top.png + ; lcl/images/sortasc.png + ; lcl/images/sortdesc.png + ; lcl/images/wince/wincedialog_cancel.png + ; lcl/images/cursors/* + + ; seems-common: + ; components/aggpas/src/* + ; components/aggpas/image_transforms.txt + ; Permission to copy, use, modify, sell and distribute this software + ; is granted provided this copyright notice appears in all copies. + ; This software is provided "as is" without express or implied + ; warranty, and with no claim as to its suitability for any purpose. + + ; unlicense: examples/database/sqlite_encryption_pragma/unit1.pas + + ;; All the above. + (license (list license:gpl2+ license:lgpl2.0+))))