Makefile for automated installation of software packages
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

packages.mk 166KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679
  1. #
  2. # packages makefile.
  3. # Copyright © 2012 Peter Colberg.
  4. # Distributed under the MIT license. (See accompanying file LICENSE.)
  5. #
  6. PREFIX = $(HOME)/usr
  7. HOST_SYS = $(shell uname -s)
  8. ifeq (Linux,$(HOST_SYS))
  9. CONCURRENCY_LEVEL = $(shell grep -c "^processor" /proc/cpuinfo)
  10. endif
  11. ifdef CONCURRENCY_LEVEL
  12. PARALLEL_BUILD_FLAGS = -j$(CONCURRENCY_LEVEL)
  13. endif
  14. BASE64 = base64 -di
  15. CMAKE = cmake
  16. CP = cp -r
  17. GIT = git
  18. GUNZIP = gzip -d
  19. MKDIR = mkdir -p
  20. PATCH = patch
  21. PERL = perl
  22. RM = rm -rf
  23. SED = sed --follow-symlinks
  24. SHA256SUM = sha256sum --check
  25. TAR = tar
  26. TOUCH = touch
  27. UNZIP = unzip
  28. WGET = wget
  29. #
  30. # CMake
  31. #
  32. CMAKE_VERSION = 3.9.2
  33. CMAKE_TARBALL = cmake-$(CMAKE_VERSION).tar.gz
  34. CMAKE_TARBALL_URL = https://cmake.org/files/v3.9/$(CMAKE_TARBALL)
  35. CMAKE_TARBALL_SHA256 = 954a5801a456ee48e76f01107c9a4961677dd0f3e115275bbd18410dc22ba3c1
  36. CMAKE_SOURCE_DIR = cmake-$(CMAKE_VERSION)
  37. CMAKE_BUILD_DIR = $(CMAKE_SOURCE_DIR)/build
  38. CMAKE_CONFIGURE_FLAGS = --sphinx-man
  39. CMAKE_INSTALL_DIR = $(PREFIX)/cmake-$(CMAKE_VERSION)
  40. .fetch-cmake-$(CMAKE_VERSION):
  41. @$(RM) $(CMAKE_TARBALL)
  42. $(WGET) -O $(CMAKE_TARBALL) $(CMAKE_TARBALL_URL)
  43. @echo '$(CMAKE_TARBALL_SHA256) $(CMAKE_TARBALL)' | $(SHA256SUM)
  44. @$(TOUCH) $@
  45. fetch-cmake: .fetch-cmake-$(CMAKE_VERSION)
  46. .extract-cmake-$(CMAKE_VERSION): .fetch-cmake-$(CMAKE_VERSION)
  47. $(RM) $(CMAKE_BUILD_DIR)
  48. $(TAR) -xzf $(CMAKE_TARBALL)
  49. @$(TOUCH) $@
  50. extract-cmake: .extract-cmake-$(CMAKE_VERSION)
  51. .configure-cmake-$(CMAKE_VERSION): .extract-cmake-$(CMAKE_VERSION)
  52. $(MKDIR) $(CMAKE_BUILD_DIR)
  53. cd $(CMAKE_BUILD_DIR) && ../bootstrap --prefix=$(CMAKE_INSTALL_DIR) $(CMAKE_CONFIGURE_FLAGS)
  54. @$(TOUCH) $@
  55. configure-cmake: .configure-cmake-$(CMAKE_VERSION)
  56. .build-cmake-$(CMAKE_VERSION): .configure-cmake-$(CMAKE_VERSION)
  57. cd $(CMAKE_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  58. @$(TOUCH) $@
  59. build-cmake: .build-cmake-$(CMAKE_VERSION)
  60. install-cmake: .build-cmake-$(CMAKE_VERSION)
  61. cd $(CMAKE_BUILD_DIR) && $(MAKE) install
  62. clean-cmake:
  63. @$(RM) .build-cmake-$(CMAKE_VERSION)
  64. @$(RM) .configure-cmake-$(CMAKE_VERSION)
  65. @$(RM) .extract-cmake-$(CMAKE_VERSION)
  66. $(RM) $(CMAKE_SOURCE_DIR)
  67. distclean-cmake: clean-cmake
  68. @$(RM) .fetch-cmake-$(CMAKE_VERSION)
  69. $(RM) $(CMAKE_TARBALL)
  70. env-cmake:
  71. @echo 'export PATH="$(CMAKE_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  72. @echo 'export MANPATH="$(CMAKE_INSTALL_DIR)/man$${MANPATH+:$$MANPATH}"'
  73. #
  74. # Lua
  75. #
  76. ifdef USE_LUA51
  77. LUA_VERSION = 5.1.5
  78. LUA_TARBALL_SHA256 = 2640fc56a795f29d28ef15e13c34a47e223960b0240e8cb0a82d9b0738695333
  79. else
  80. LUA_VERSION = 5.2.3
  81. LUA_TARBALL_SHA256 = 13c2fb97961381f7d06d5b5cea55b743c163800896fd5c5e2356201d3619002d
  82. endif
  83. LUA_TARBALL = lua-$(LUA_VERSION).tar.gz
  84. LUA_TARBALL_URL = http://www.lua.org/ftp/$(LUA_TARBALL)
  85. LUA_BUILD_DIR = lua-$(LUA_VERSION)
  86. LUA_INSTALL_DIR = $(PREFIX)/lua-$(LUA_VERSION)
  87. LUA_CFLAGS = -fPIC -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DLUA_USE_STRTODHEX -DLUA_USE_AFORMAT -DLUA_USE_LONGLONG
  88. LUA_LIBS = -Wl,-E -ldl -lm
  89. ifdef USE_READLINE
  90. LUA_CFLAGS += -DLUA_USE_READLINE
  91. LUA_LIBS += -lreadline -lncurses
  92. endif
  93. .fetch-lua-$(LUA_VERSION):
  94. @$(RM) $(LUA_TARBALL)
  95. $(WGET) -O $(LUA_TARBALL) $(LUA_TARBALL_URL)
  96. @echo '$(LUA_TARBALL_SHA256) $(LUA_TARBALL)' | $(SHA256SUM)
  97. @$(TOUCH) $@
  98. fetch-lua: .fetch-lua-$(LUA_VERSION)
  99. .extract-lua-$(LUA_VERSION): .fetch-lua-$(LUA_VERSION)
  100. $(RM) $(LUA_BUILD_DIR)
  101. $(TAR) -xzf $(LUA_TARBALL)
  102. @$(TOUCH) $@
  103. extract-lua: .extract-lua-$(LUA_VERSION)
  104. .build-lua-$(LUA_VERSION): .extract-lua-$(LUA_VERSION)
  105. cd $(LUA_BUILD_DIR) && $(MAKE) linux CFLAGS="$(LUA_CFLAGS)" LIBS="$(LUA_LIBS)"
  106. @$(TOUCH) $@
  107. build-lua: .build-lua-$(LUA_VERSION)
  108. install-lua: .build-lua-$(LUA_VERSION)
  109. cd $(LUA_BUILD_DIR) && $(MAKE) install INSTALL_TOP=$(LUA_INSTALL_DIR)
  110. clean-lua:
  111. @$(RM) .build-lua-$(LUA_VERSION)
  112. @$(RM) .extract-lua-$(LUA_VERSION)
  113. $(RM) $(LUA_BUILD_DIR)
  114. distclean-lua: clean-lua
  115. @$(RM) .fetch-lua-$(LUA_VERSION)
  116. $(RM) $(LUA_TARBALL)
  117. env-lua:
  118. @echo 'export PATH="$(LUA_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  119. @echo 'export MANPATH="$(LUA_INSTALL_DIR)/man$${MANPATH+:$$MANPATH}"'
  120. @echo 'export CMAKE_PREFIX_PATH="$(LUA_INSTALL_DIR)$${CMAKE_PREFIX_PATH+:$$CMAKE_PREFIX_PATH}"'
  121. #
  122. # LuaJIT
  123. #
  124. LUAJIT_VERSION = 2.0.5
  125. LUAJIT_TARBALL = LuaJIT-$(LUAJIT_VERSION).tar.gz
  126. LUAJIT_TARBALL_URL = http://luajit.org/download/$(LUAJIT_TARBALL)
  127. LUAJIT_TARBALL_SHA256 = 874b1f8297c697821f561f9b73b57ffd419ed8f4278c82e05b48806d30c1e979
  128. LUAJIT_BUILD_DIR = LuaJIT-$(LUAJIT_VERSION)
  129. LUAJIT_INSTALL_DIR = $(PREFIX)/luajit-$(LUAJIT_VERSION)
  130. LUAJIT_CFLAGS = -fPIC -DLUAJIT_ENABLE_LUA52COMPAT -DLUAJIT_CPU_SSE2
  131. ifdef USE_VALGRIND
  132. LUAJIT_CFLAGS += -DLUAJIT_USE_VALGRIND
  133. endif
  134. .fetch-luajit-$(LUAJIT_VERSION):
  135. @$(RM) $(LUAJIT_TARBALL)
  136. $(WGET) -O $(LUAJIT_TARBALL) $(LUAJIT_TARBALL_URL)
  137. @echo '$(LUAJIT_TARBALL_SHA256) $(LUAJIT_TARBALL)' | $(SHA256SUM)
  138. @$(TOUCH) $@
  139. fetch-luajit: .fetch-luajit-$(LUAJIT_VERSION)
  140. .extract-luajit-$(LUAJIT_VERSION): .fetch-luajit-$(LUAJIT_VERSION)
  141. $(RM) $(LUAJIT_BUILD_DIR)
  142. $(TAR) -xzf $(LUAJIT_TARBALL)
  143. @$(TOUCH) $@
  144. extract-luajit: .extract-luajit-$(LUAJIT_VERSION)
  145. .build-luajit-$(LUAJIT_VERSION): .extract-luajit-$(LUAJIT_VERSION)
  146. cd $(LUAJIT_BUILD_DIR) && $(MAKE) amalg "CFLAGS=$(LUAJIT_CFLAGS)" "PREFIX=$(LUAJIT_INSTALL_DIR)" $(PARALLEL_BUILD_FLAGS)
  147. @$(TOUCH) $@
  148. build-luajit: .build-luajit-$(LUAJIT_VERSION)
  149. install-luajit: .build-luajit-$(LUAJIT_VERSION)
  150. cd $(LUAJIT_BUILD_DIR) && $(MAKE) install "PREFIX=$(LUAJIT_INSTALL_DIR)"
  151. clean-luajit:
  152. @$(RM) .build-luajit-$(LUAJIT_VERSION)
  153. @$(RM) .extract-luajit-$(LUAJIT_VERSION)
  154. $(RM) $(LUAJIT_BUILD_DIR)
  155. distclean-luajit: clean-luajit
  156. @$(RM) .fetch-luajit-$(LUAJIT_VERSION)
  157. $(RM) $(LUAJIT_TARBALL)
  158. env-luajit:
  159. @echo 'export PATH="$(LUAJIT_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  160. @echo 'export MANPATH="$(LUAJIT_INSTALL_DIR)/man$${MANPATH+:$$MANPATH}"'
  161. @echo 'export PKG_CONFIG_PATH="$(LUAJIT_INSTALL_DIR)/lib/pkgconfig$${PKG_CONFIG_PATH+:$$PKG_CONFIG_PATH}"'
  162. @echo 'export CPATH="$(LUAJIT_INSTALL_DIR)/include$${CPATH+:$$CPATH}"'
  163. @echo 'export LIBRARY_PATH="$(LUAJIT_INSTALL_DIR)/lib$${LIBRARY_PATH+:$$LIBRARY_PATH}"'
  164. @echo 'export LD_LIBRARY_PATH="$(LUAJIT_INSTALL_DIR)/lib$${LD_LIBRARY_PATH+:$$LD_LIBRARY_PATH}"'
  165. #
  166. # GNU readline wrapper
  167. #
  168. RLWRAP_VERSION = 0.43
  169. RLWRAP_TARBALL = rlwrap-$(RLWRAP_VERSION).tar.gz
  170. RLWRAP_TARBALL_URL = https://github.com/hanslub42/rlwrap/releases/download/v$(RLWRAP_VERSION)/$(RLWRAP_TARBALL)
  171. RLWRAP_TARBALL_SHA256 = 8e86d0b7882d9b8a73d229897a90edc207b1ae7fa0899dca8ee01c31a93feb2f
  172. RLWRAP_BUILD_DIR = rlwrap-$(RLWRAP_VERSION)
  173. RLWRAP_INSTALL_DIR = $(PREFIX)/rlwrap-$(RLWRAP_VERSION)
  174. .fetch-rlwrap-$(RLWRAP_VERSION):
  175. @$(RM) $(RLWRAP_TARBALL)
  176. $(WGET) -O $(RLWRAP_TARBALL) $(RLWRAP_TARBALL_URL)
  177. @echo '$(RLWRAP_TARBALL_SHA256) $(RLWRAP_TARBALL)' | $(SHA256SUM)
  178. @$(TOUCH) $@
  179. fetch-rlwrap: .fetch-rlwrap-$(RLWRAP_VERSION)
  180. .extract-rlwrap-$(RLWRAP_VERSION): .fetch-rlwrap-$(RLWRAP_VERSION)
  181. $(RM) $(RLWRAP_BUILD_DIR)
  182. $(TAR) -xzf $(RLWRAP_TARBALL)
  183. @$(TOUCH) $@
  184. extract-rlwrap: .extract-rlwrap-$(RLWRAP_VERSION)
  185. .configure-rlwrap-$(RLWRAP_VERSION): .extract-rlwrap-$(RLWRAP_VERSION)
  186. cd $(RLWRAP_BUILD_DIR) && ./configure -prefix=$(RLWRAP_INSTALL_DIR)
  187. @$(TOUCH) $@
  188. configure-rlwrap: .configure-rlwrap-$(RLWRAP_VERSION)
  189. .build-rlwrap-$(RLWRAP_VERSION): .configure-rlwrap-$(RLWRAP_VERSION)
  190. cd $(RLWRAP_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  191. @$(TOUCH) $@
  192. build-rlwrap: .build-rlwrap-$(RLWRAP_VERSION)
  193. install-rlwrap: .build-rlwrap-$(RLWRAP_VERSION)
  194. cd $(RLWRAP_BUILD_DIR) && $(MAKE) install
  195. clean-rlwrap:
  196. @$(RM) .build-rlwrap-$(RLWRAP_VERSION)
  197. @$(RM) .configure-rlwrap-$(RLWRAP_VERSION)
  198. @$(RM) .extract-rlwrap-$(RLWRAP_VERSION)
  199. $(RM) $(RLWRAP_BUILD_DIR)
  200. distclean-rlwrap: clean-rlwrap
  201. @$(RM) .fetch-rlwrap-$(RLWRAP_VERSION)
  202. $(RM) $(RLWRAP_TARBALL)
  203. env-rlwrap:
  204. @echo 'export PATH="$(RLWRAP_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  205. @echo 'export MANPATH="$(RLWRAP_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  206. #
  207. # Boost C++ libraries with Boost.Log
  208. #
  209. BOOST_VERSION = 1.53.0
  210. BOOST_RELEASE = 1_53_0
  211. BOOST_TARBALL = boost_$(BOOST_RELEASE).tar.bz2
  212. BOOST_TARBALL_URL = http://sourceforge.net/projects/boost/files/boost/$(BOOST_VERSION)/$(BOOST_TARBALL)
  213. BOOST_TARBALL_SHA256 = f88a041b01882b0c9c5c05b39603ec8383fb881f772f6f9e6e6fd0e0cddb9196
  214. BOOST_PATCH = boost_$(BOOST_RELEASE).patch
  215. BOOST_PATCH_SHA256 = efe1e6c253c5e8204594438e9601fd46494897c060aad0e4c5df29e2c9f63781
  216. BOOST_BUILD_DIR = boost_$(BOOST_RELEASE)
  217. BOOST_INSTALL_DIR = $(PREFIX)/boost_$(BOOST_RELEASE)
  218. BOOST_BUILD_FLAGS = threading=multi variant=release --layout=tagged toolset=gcc cxxflags="-fPIC -std=c++11" dll-path=$(BOOST_INSTALL_DIR)/lib
  219. ifndef USE_BZIP2
  220. BOOST_BUILD_FLAGS += -sNO_BZIP2=1
  221. endif
  222. ifndef USE_PYTHON
  223. BOOST_BUILD_FLAGS += --without-python
  224. endif
  225. define BOOST_PATCH_FILE
  226. H4sIAJH1GFIAA9VYYXPaOBD9zq/Ymczk4IAQkkyTmjQTmtDOXdPQIU47N5cbj7AFUWssasnkuBz/
  227. /VaSbYwxSUjozZ0/ICzJb7VvtU9r1+t16HMuZCOIRjRkbiPq+0Q0ZEiYFDu343GpWq0+NuX0FOr7
  228. zdreHlRNc3paghI0GkACHkxHPBIQkBEVY+JSkBzIhDMP2ucXwISIqChlhu9LdQBJR2OfSHrsoikB
  229. 9gnYZhFOvAhHL8IR30MJZZcHQoK9DbKCj1eLHheSSOYCC3wW0DXAQF2RYMEws0QhvZYZQRfv6E++
  230. DwMWeECZvKWhGrYsDcZDoL6gigY9MqGhYDyACSPKe8uAhFRGYQDGvKxo6Nk6LJC+2BgJBVjP5kBh
  231. rUWBNp4yYLCjQLBhQD2Q0zEVQELE8u/IFLcUD+oBHaJPE7pA18n8IRbIx9zMzi1g7yTh64WYWT/l
  232. Bj30OcblqctRk5/k43NRC73EzZzqjKT441FJmN8Y+rxPfEe57dFBTm0emag059VhrYmao5p9rTlI
  233. 5i31x7jNEteEkptxSCcUg9Y97+G+49iPO1CgQi2nSAl3bhi5Ms4VR3tK8Nl7UAGAJIdsmBA/oi1Q
  234. PGZ69fxtM1iumMF70yzPgwm8gftZaz4eMzeJuxR3aAJNF6y0bucXeWyfWFayrrqiw9ngheQqVZ8p
  235. luc6EEnHBCkf44HPcXHB0BlzTAJc42hMQiZ4UBTnhyerWO8dHNUOoWoaFWukDXLnhntL3W8OE47r
  236. c0EdmURjsR85jwImHWXYstL1o2Tn2MzDpeSWqv+SpbKSwpk5SzcbSsPp4a7mVDePcSpGxPcLPNX9
  237. 63sawxVx+mMt/UBO5xmAuxdJlDRsfKPTOx56uU1fPK5i8rpZax5BVTVG0+IjFhUsnKJMa+eYVjDg
  238. AyAwiAJX3yUSgTUV4FELAi0A73+lrtxJYb5QVEM+YR6eMag2AxrSIK7JkO/RCHGMDexEeErcW4iX
  239. mGIYTDzRvVRZNetKN9VC+lOsFvCY31lQzBjl2CbDk1j+EkstFKt6DG7f4vJRA2g4UDsQbzyKVlx0
  240. zFuJtw1DKhO5XWkvmQVGlOs50dVzHJcIebyAfVJO1llpLSn5A16t0Pa505BKfFbhIZF4RCzVC/Cz
  241. XZaVs6ZVH3rUi1w8+/qc+TQ0sCH9HrFQVRkcKUUbqswIVIXCcD/57C+aIAuNcYeFHI9kcmBiOYDH
  242. 5w7AuXkW65RkPkgy1LWLfkbvvSEWLEEpOSnQRrb+J0MnvavpNXgp5sKC8F7nRHNvX+lUs5lov7nw
  243. aHzhdRPH4KU4c6h4W1iWznPLShPdspK4LfhvWepvukE1Wzfp1nyzNtB8Q8x33nNQdKbo02BLle/4
  244. RwfioKkDsf8qE4h5ZF/E3P3zuc/C4PVfIP9mA+zPnZqZQAQeGxQeMuqxlSdMOqgieHikzpWqaVQE
  245. t4AN4G23e2U7X7q9D+1e9/ryvGw6Pl59PqvBMTT3d3craiom6kC9JpjhT+1e+2PH7vScS2yd7ttf
  246. O2d2GT2qaSorD0TpaWmyGJlFmCdH6XkpkUmBLTAZsEH3/28pszoQBuZZwViGWT86q52a6cDpjIHC
  247. nMGiAishPCUFD1fmztIk/dr5WqugaUwOrdgY764vz+xfupfOeedd+/rCdjqf2xfJTZmEuFUWBKCS
  248. rH6195mgQU48lqxfOu3ee+dD5zfM7HNlrpLEKls4/F1gjUR/YnGNryLoGIl8LLfJMKmvEvLXeRDW
  249. ISnteN+xlQcZokTK0EqUs/aVXcZZKlJHB3sqUqZZL1KJ7TCxjJWKIVCbrz2+gMyexCfF75k8ia9H
  250. jgXxpJBmQzlPoQ1bMAFf8OmP7G0BHQbnU6+T7rzM7DYSovhY/GSgfhzJuZ//8lw0qj8676pCpGoa
  251. 89E5/kaUfUk0hT2+n6giVl/ZHl18Z155lUkfvGg0mqqXSQ/VaEDwAGihpFSX5pmSvHi2+QT+88Yu
  252. RCtAzOvfOFRfUHw+dPTrbm50GfEf965Q9wMYAAA=
  253. endef
  254. export BOOST_PATCH_FILE
  255. .fetch-boost-$(BOOST_VERSION):
  256. @$(RM) $(BOOST_TARBALL)
  257. @$(RM) $(BOOST_PATCH)
  258. $(WGET) -O $(BOOST_TARBALL) $(BOOST_TARBALL_URL)
  259. echo "$$BOOST_PATCH_FILE" | $(BASE64) | $(GUNZIP) > $(BOOST_PATCH)
  260. @echo '$(BOOST_TARBALL_SHA256) $(BOOST_TARBALL)' | $(SHA256SUM)
  261. @echo '$(BOOST_PATCH_SHA256) $(BOOST_PATCH)' | $(SHA256SUM)
  262. @$(TOUCH) $@
  263. fetch-boost: .fetch-boost-$(BOOST_VERSION)
  264. .extract-boost-$(BOOST_VERSION): .fetch-boost-$(BOOST_VERSION)
  265. $(TAR) -xjf $(BOOST_TARBALL)
  266. cd $(BOOST_BUILD_DIR) && $(PATCH) -p0 < ../$(BOOST_PATCH)
  267. @$(TOUCH) $@
  268. extract-boost: .extract-boost-$(BOOST_VERSION)
  269. .configure-boost-$(BOOST_VERSION): .extract-boost-$(BOOST_VERSION)
  270. cd $(BOOST_BUILD_DIR) && ./bootstrap.sh
  271. @$(TOUCH) $@
  272. configure-boost: .configure-boost-$(BOOST_VERSION)
  273. .build-boost-$(BOOST_VERSION): .configure-boost-$(BOOST_VERSION)
  274. cd $(BOOST_BUILD_DIR) && ./bjam $(BOOST_BUILD_FLAGS) $(PARALLEL_BUILD_FLAGS)
  275. @$(TOUCH) $@
  276. build-boost: .build-boost-$(BOOST_VERSION)
  277. install-boost: .build-boost-$(BOOST_VERSION)
  278. cd $(BOOST_BUILD_DIR) && ./bjam $(BOOST_BUILD_FLAGS) install --prefix=$(BOOST_INSTALL_DIR)
  279. clean-boost:
  280. $(RM) $(BOOST_BUILD_DIR)
  281. @$(RM) .build-boost-$(BOOST_VERSION)
  282. @$(RM) .configure-boost-$(BOOST_VERSION)
  283. @$(RM) .extract-boost-$(BOOST_VERSION)
  284. distclean-boost: clean-boost
  285. @$(RM) .fetch-boost-$(BOOST_VERSION)
  286. $(RM) $(BOOST_TARBALL)
  287. $(RM) $(BOOST_PATCH)
  288. env-boost:
  289. @echo 'export PATH="$(BOOST_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  290. @echo 'export LD_LIBRARY_PATH="$(BOOST_INSTALL_DIR)/lib$${LD_LIBRARY_PATH+:$$LD_LIBRARY_PATH}"'
  291. @echo 'export PYTHONPATH="$(BOOST_INSTALL_DIR)/lib$${PYTHONPATH+:$$PYTHONPATH}"'
  292. @echo 'export CMAKE_PREFIX_PATH="$(BOOST_INSTALL_DIR)$${CMAKE_PREFIX_PATH+:$$CMAKE_PREFIX_PATH}"'
  293. #
  294. # HDF5 library
  295. #
  296. HDF5_VERSION = 1.8.16
  297. HDF5_TARBALL = hdf5-$(HDF5_VERSION).tar.bz2
  298. HDF5_TARBALL_URL = https://www.hdfgroup.org/ftp/HDF5/releases/hdf5-1.8/hdf5-$(HDF5_VERSION)/src/$(HDF5_TARBALL)
  299. HDF5_TARBALL_SHA256 = 13aaae5ba10b70749ee1718816a4b4bfead897c2fcb72c24176e759aec4598c6
  300. HDF5_PATCH = hdf5-$(HDF5_VERSION).patch
  301. HDF5_PATCH_SHA256 = e0a0b0e16794235df2695bc0fcfa5ded73cfa303f47ac1e98868ce2095eeddef
  302. HDF5_BUILD_DIR = hdf5-$(HDF5_VERSION)
  303. HDF5_INSTALL_DIR = $(PREFIX)/hdf5-$(HDF5_VERSION)
  304. HDF5_CONFIGURE_ENV = CFLAGS=-fPIC FCFLAGS=-fPIC
  305. HDF5_CONFIGURE_FLAGS = --enable-shared --enable-fortran
  306. ifdef USE_DEBUG
  307. HDF5_CONFIGURE_FLAGS += --enable-debug
  308. endif
  309. ifdef USE_MPI
  310. HDF5_CONFIGURE_ENV += CC=mpicc FC=mpif90
  311. HDF5_CONFIGURE_FLAGS += --enable-parallel
  312. endif
  313. define HDF5_PATCH_FILE
  314. H4sIALQkBlYCA+VWbW/bRgz+rl/BoUAjRZIjx1bs1E2XLXWWYGlS5AVttgWCLZ+iW2WdIZ0RpEP+
  315. +0hKZ9lOvK3Dvs2AfRLJ4z18jqTp+z6URdxShbzfOQln83Em41Zqua5L8mXR4SH4/Ta4+D08tPxX
  316. MgHbjqKfzm+Oogi2oR0EDrhQSz6cnl9cRpED7w6gG+xZ7rfZw+vX8N1EJDIXE9x0en49PIuOLj58
  317. PD0bXjqWj7C1UllZAU/D30fT6rcVM3ZWrskpgN2Otwcu/vYoCLDgVXUIXF/eDKHdvB//cHY1hABx
  318. 14Kji4+30Y83x9HV6S9oGXT7YW+PPKSl/CoiDQ+F1CKajSZgy1x7Ru4MGpNYTWdzNJqXoojGmYq/
  319. RKQBu7ElkJ0ugeyEXp9BxumogG2Z49YokZmAAzi/OTsbGM18vCa23FKPtIwr/Xie/LoC/m5guRbs
  320. bFuAt3CkptNRPvEzilHNtFR5+QauUwEEEuJRDuVMxDJ5hDJVhQZVQKbyez8fTcWEXcxGBT5rUZQt
  321. 3tioQeWiZB9jQWZajrLskRxmmZi04FMqco6422njjbhdjpxjVrPHqFRTJEVV0RGpIPNETjygRzXX
  322. /Gy4xZDRf74mQCsPQVafstZkciq1Y8Eflg8NR+1gt4vUoF0aRkQg+UAFi+jEQpT8bNxopZHzoLqz
  323. bq/ttQMModehlWIAtBD5BG3seouzAIWJn6qH6TxO2WVSYKgvmcp8xZIAUx3VEngHYXvXsdx16cp9
  324. OxUBHC0wKjyngubT/oFREApUGTC10n1h14r/hcmz/WtmbPREi8hKYVAxe/2et4/k9fdxqbijz8l7
  325. tBNfwDaXbaskIW608uBqOPw5uhpeO4Nn5nWaGGsCtGpvIn6Zy+ea53zWbOaUPiUGffK+EFXp89GY
  326. N3j+PC/lPXYwh13XPP3TLatncpBPJlLDX8VeGPSoesJgf9HWzJ1hoh3UJy5oMmH5jeY/oMMkib92
  327. HifFkpAB7+1Shwv3unWLAywuPS9ysB9SUQiK9on6mGm++O9gf/ZuHVPJtv3ZeWvfOt/j+gZXZ6mj
  328. wSdqxPBVFAqbDyLC9pGBxsbEfYTxbPExW6TFKD2g2vdA6LgF40ctyhZ5qqBSXfcRay/02hW7i0bP
  329. LUmR16brVPgtQ4i5Tm4gsia6aTl3NUlm94zWRX6SSXCHmbL1W7BVZ89UTEuhbU4WEnvP88RaLga7
  330. xmdqgfGtFQPb89F41sb/qMXNNNZ4rSxdIE5UYUtuiiDhbR0OSNd1TIoRMCYQDDIOpW2qY4MHSuO1
  331. rHP/0iFlzMoGz2AG6TRRV2lXxYadlk2cAWAuccbk4gF4l0oWGdSC7R1Kzw0zyDzfNIUYTT2H9L5p
  332. DvE3zSG73X8zo9ickE3avjSlsNmSwdJo0v3/jCadkEeTTtipRxNMlSLS9YhSTyc2HONgSkxwK69e
  333. FD+baSGqK8+8YzeNuJ2aQQTg76jhjOU6rsqOxoWqrCNTho2FViuv1PYG1p9SF9Bl7wsAAA==
  334. endef
  335. export HDF5_PATCH_FILE
  336. .fetch-hdf5-$(HDF5_VERSION):
  337. @$(RM) $(HDF5_TARBALL)
  338. $(WGET) -O $(HDF5_TARBALL) $(HDF5_TARBALL_URL)
  339. echo "$$HDF5_PATCH_FILE" | $(BASE64) | $(GUNZIP) > $(HDF5_PATCH)
  340. @echo '$(HDF5_TARBALL_SHA256) $(HDF5_TARBALL)' | $(SHA256SUM)
  341. @echo '$(HDF5_PATCH_SHA256) $(HDF5_PATCH)' | $(SHA256SUM)
  342. @$(TOUCH) $@
  343. fetch-hdf5: .fetch-hdf5-$(HDF5_VERSION)
  344. .extract-hdf5-$(HDF5_VERSION): .fetch-hdf5-$(HDF5_VERSION)
  345. $(RM) $(HDF5_BUILD_DIR)
  346. $(TAR) -xjf $(HDF5_TARBALL)
  347. cd $(HDF5_BUILD_DIR) && $(PATCH) -p0 < ../$(HDF5_PATCH)
  348. @$(TOUCH) $@
  349. extract-hdf5: .extract-hdf5-$(HDF5_VERSION)
  350. .configure-hdf5-$(HDF5_VERSION): .extract-hdf5-$(HDF5_VERSION)
  351. cd $(HDF5_BUILD_DIR) && $(HDF5_CONFIGURE_ENV) ./configure $(HDF5_CONFIGURE_FLAGS) --prefix=$(HDF5_INSTALL_DIR)
  352. @$(TOUCH) $@
  353. configure-hdf5: .configure-hdf5-$(HDF5_VERSION)
  354. .build-hdf5-$(HDF5_VERSION): .configure-hdf5-$(HDF5_VERSION)
  355. cd $(HDF5_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  356. @$(TOUCH) $@
  357. build-hdf5: .build-hdf5-$(HDF5_VERSION)
  358. install-hdf5: .build-hdf5-$(HDF5_VERSION)
  359. cd $(HDF5_BUILD_DIR) && $(MAKE) install
  360. clean-hdf5:
  361. @$(RM) .build-hdf5-$(HDF5_VERSION)
  362. @$(RM) .configure-hdf5-$(HDF5_VERSION)
  363. @$(RM) .extract-hdf5-$(HDF5_VERSION)
  364. $(RM) $(HDF5_BUILD_DIR)
  365. distclean-hdf5: clean-hdf5
  366. @$(RM) .fetch-hdf5-$(HDF5_VERSION)
  367. $(RM) $(HDF5_TARBALL)
  368. env-hdf5:
  369. @echo 'export PATH="$(HDF5_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  370. @echo 'export CPATH="$(HDF5_INSTALL_DIR)/include$${CPATH+:$$CPATH}"'
  371. @echo 'export LIBRARY_PATH="$(HDF5_INSTALL_DIR)/lib$${LIBRARY_PATH+:$$LIBRARY_PATH}"'
  372. @echo 'export LD_LIBRARY_PATH="$(HDF5_INSTALL_DIR)/lib$${LD_LIBRARY_PATH+:$$LD_LIBRARY_PATH}"'
  373. #
  374. # Git version control
  375. #
  376. GIT_VERSION = 2.14.1
  377. GIT_TARBALL = git-$(GIT_VERSION).tar.gz
  378. GIT_TARBALL_URL = https://www.kernel.org/pub/software/scm/git/$(GIT_TARBALL)
  379. GIT_TARBALL_SHA256 = 01925349b9683940e53a621ee48dd9d9ac3f9e59c079806b58321c2cf85a4464
  380. GIT_MANPAGES_TARBALL = git-manpages-$(GIT_VERSION).tar.gz
  381. GIT_MANPAGES_TARBALL_URL = https://www.kernel.org/pub/software/scm/git/$(GIT_MANPAGES_TARBALL)
  382. GIT_MANPAGES_TARBALL_SHA256 = 8c5810ce65d44cd333327d3a115c5b462712a2f81225d142e07bd889ad8dc0e0
  383. GIT_BUILD_DIR = git-$(GIT_VERSION)
  384. GIT_CONFIGURE_FLAGS = --without-python
  385. GIT_INSTALL_DIR = $(PREFIX)/git-$(GIT_VERSION)
  386. .fetch-git-$(GIT_VERSION):
  387. @$(RM) $(GIT_TARBALL)
  388. @$(RM) $(GIT_MANPAGES_TARBALL)
  389. $(WGET) -O $(GIT_TARBALL) $(GIT_TARBALL_URL)
  390. $(WGET) -O $(GIT_MANPAGES_TARBALL) $(GIT_MANPAGES_TARBALL_URL)
  391. @echo '$(GIT_TARBALL_SHA256) $(GIT_TARBALL)' | $(SHA256SUM)
  392. @echo '$(GIT_MANPAGES_TARBALL_SHA256) $(GIT_MANPAGES_TARBALL)' | $(SHA256SUM)
  393. @$(TOUCH) $@
  394. fetch-git: .fetch-git-$(GIT_VERSION)
  395. .extract-git-$(GIT_VERSION): .fetch-git-$(GIT_VERSION)
  396. $(RM) $(GIT_BUILD_DIR)
  397. $(TAR) -xzf $(GIT_TARBALL)
  398. @$(TOUCH) $@
  399. extract-git: .extract-git-$(GIT_VERSION)
  400. .configure-git-$(GIT_VERSION): .extract-git-$(GIT_VERSION)
  401. cd $(GIT_BUILD_DIR) && ./configure $(GIT_CONFIGURE_FLAGS) --prefix=$(GIT_INSTALL_DIR)
  402. @$(TOUCH) $@
  403. configure-git: .configure-git-$(GIT_VERSION)
  404. .build-git-$(GIT_VERSION): .configure-git-$(GIT_VERSION)
  405. cd $(GIT_BUILD_DIR) && $(MAKE) PREFIX=$(GIT_INSTALL_DIR) $(PARALLEL_BUILD_FLAGS)
  406. @$(TOUCH) $@
  407. build-git: .build-git-$(GIT_VERSION)
  408. install-git: .build-git-$(GIT_VERSION)
  409. cd $(GIT_BUILD_DIR) && $(MAKE) PREFIX=$(GIT_INSTALL_DIR) install
  410. install -d $(GIT_INSTALL_DIR)/share/man
  411. cd $(GIT_INSTALL_DIR)/share/man && $(TAR) -xzf $(CURDIR)/$(GIT_MANPAGES_TARBALL)
  412. clean-git:
  413. @$(RM) .build-git-$(GIT_VERSION)
  414. @$(RM) .configure-git-$(GIT_VERSION)
  415. @$(RM) .extract-git-$(GIT_VERSION)
  416. $(RM) $(GIT_BUILD_DIR)
  417. distclean-git: clean-git
  418. @$(RM) .fetch-git-$(GIT_VERSION)
  419. $(RM) $(GIT_TARBALL)
  420. $(RM) $(GIT_MANPAGES_TARBALL)
  421. env-git:
  422. @echo 'export PATH="$(GIT_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  423. @echo 'export MANPATH="$(GIT_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  424. #
  425. # htop
  426. #
  427. HTOP_VERSION = 1.0.3
  428. HTOP_TARBALL = htop-$(HTOP_VERSION).tar.gz
  429. HTOP_TARBALL_URL = http://hisham.hm/htop/releases/$(HTOP_VERSION)/$(HTOP_TARBALL)
  430. HTOP_TARBALL_SHA256 = 055c57927f75847fdc222b5258b079a9542811a9dcf5421c615c7e17f55d1829
  431. HTOP_BUILD_DIR = htop-$(HTOP_VERSION)
  432. HTOP_INSTALL_DIR = $(PREFIX)/htop-$(HTOP_VERSION)
  433. .fetch-htop-$(HTOP_VERSION):
  434. @$(RM) $(HTOP_TARBALL)
  435. $(WGET) -O $(HTOP_TARBALL) $(HTOP_TARBALL_URL)
  436. @echo '$(HTOP_TARBALL_SHA256) $(HTOP_TARBALL)' | $(SHA256SUM)
  437. @$(TOUCH) $@
  438. fetch-htop: .fetch-htop-$(HTOP_VERSION)
  439. .extract-htop-$(HTOP_VERSION): .fetch-htop-$(HTOP_VERSION)
  440. $(RM) $(HTOP_BUILD_DIR)
  441. $(TAR) -xzf $(HTOP_TARBALL)
  442. @$(TOUCH) $@
  443. extract-htop: .extract-htop-$(HTOP_VERSION)
  444. .configure-htop-$(HTOP_VERSION): .extract-htop-$(HTOP_VERSION)
  445. cd $(HTOP_BUILD_DIR) && ./configure --prefix=$(HTOP_INSTALL_DIR)
  446. @$(TOUCH) $@
  447. configure-htop: .configure-htop-$(HTOP_VERSION)
  448. .build-htop-$(HTOP_VERSION): .configure-htop-$(HTOP_VERSION)
  449. cd $(HTOP_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  450. @$(TOUCH) $@
  451. build-htop: .build-htop-$(HTOP_VERSION)
  452. install-htop: .build-htop-$(HTOP_VERSION)
  453. cd $(HTOP_BUILD_DIR) && $(MAKE) install
  454. clean-htop:
  455. @$(RM) .build-htop-$(HTOP_VERSION)
  456. @$(RM) .configure-htop-$(HTOP_VERSION)
  457. @$(RM) .extract-htop-$(HTOP_VERSION)
  458. $(RM) $(HTOP_BUILD_DIR)
  459. distclean-htop: clean-htop
  460. @$(RM) .fetch-htop-$(HTOP_VERSION)
  461. $(RM) $(HTOP_TARBALL)
  462. env-htop:
  463. @echo 'export PATH="$(HTOP_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  464. @echo 'export MANPATH="$(HTOP_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  465. #
  466. # Python
  467. #
  468. PYTHON_VERSION = 2.7.13
  469. PYTHON_TARBALL = Python-$(PYTHON_VERSION).tgz
  470. PYTHON_TARBALL_URL = https://www.python.org/ftp/python/$(PYTHON_VERSION)/$(PYTHON_TARBALL)
  471. PYTHON_TARBALL_SHA256 = a4f05a0720ce0fd92626f0278b6b433eee9a6173ddf2bced7957dfb599a5ece1
  472. PYTHON_BUILD_DIR = Python-$(PYTHON_VERSION)
  473. PYTHON_CONFIGURE_FLAGS = --enable-shared --with-ensurepip=install
  474. PYTHON_INSTALL_DIR = $(PREFIX)/python-$(PYTHON_VERSION)
  475. .fetch-python-$(PYTHON_VERSION):
  476. @$(RM) $(PYTHON_TARBALL)
  477. $(WGET) -O $(PYTHON_TARBALL) $(PYTHON_TARBALL_URL)
  478. @echo '$(PYTHON_TARBALL_SHA256) $(PYTHON_TARBALL)' | $(SHA256SUM)
  479. @$(TOUCH) $@
  480. fetch-python: .fetch-python-$(PYTHON_VERSION)
  481. .extract-python-$(PYTHON_VERSION): .fetch-python-$(PYTHON_VERSION)
  482. $(RM) $(PYTHON_BUILD_DIR)
  483. $(TAR) -xzf $(PYTHON_TARBALL)
  484. @$(TOUCH) $@
  485. extract-python: .extract-python-$(PYTHON_VERSION)
  486. .configure-python-$(PYTHON_VERSION): .extract-python-$(PYTHON_VERSION)
  487. cd $(PYTHON_BUILD_DIR) && ./configure --prefix=$(PYTHON_INSTALL_DIR) $(PYTHON_CONFIGURE_FLAGS)
  488. @$(TOUCH) $@
  489. configure-python: .configure-python-$(PYTHON_VERSION)
  490. .build-python-$(PYTHON_VERSION): .configure-python-$(PYTHON_VERSION)
  491. cd $(PYTHON_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  492. @$(TOUCH) $@
  493. build-python: .build-python-$(PYTHON_VERSION)
  494. install-python: .build-python-$(PYTHON_VERSION)
  495. cd $(PYTHON_BUILD_DIR) && $(MAKE) install
  496. clean-python:
  497. @$(RM) .build-python-$(PYTHON_VERSION)
  498. @$(RM) .configure-python-$(PYTHON_VERSION)
  499. @$(RM) .extract-python-$(PYTHON_VERSION)
  500. $(RM) $(PYTHON_BUILD_DIR)
  501. distclean-python: clean-python
  502. @$(RM) .fetch-python-$(PYTHON_VERSION)
  503. $(RM) $(PYTHON_TARBALL)
  504. env-python:
  505. @echo 'export PATH="$(PYTHON_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  506. @echo 'export CPATH="$(PYTHON_INSTALL_DIR)/include$${CPATH+:$$CPATH}"'
  507. @echo 'export LIBRARY_PATH="$(PYTHON_INSTALL_DIR)/lib$${LIBRARY_PATH+:$$LIBRARY_PATH}"'
  508. @echo 'export LD_LIBRARY_PATH="$(PYTHON_INSTALL_DIR)/lib$${LD_LIBRARY_PATH+:$$LD_LIBRARY_PATH}"'
  509. @echo 'export MANPATH="$(PYTHON_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  510. @echo 'export CMAKE_PREFIX_PATH="$(PYTHON_INSTALL_DIR)$${CMAKE_PREFIX_PATH+:$$CMAKE_PREFIX_PATH}"'
  511. #
  512. # Python 3
  513. #
  514. PYTHON3_VERSION = 3.6.2
  515. PYTHON3_TARBALL = Python-$(PYTHON3_VERSION).tgz
  516. PYTHON3_TARBALL_URL = https://www.python.org/ftp/python/$(PYTHON3_VERSION)/$(PYTHON3_TARBALL)
  517. PYTHON3_TARBALL_SHA256 = 7919489310a5f17f7acbab64d731e46dca0702874840dadce8bd4b2b3b8e7a82
  518. PYTHON3_BUILD_DIR = Python-$(PYTHON3_VERSION)
  519. PYTHON3_CONFIGURE_FLAGS = --enable-shared --with-ensurepip=install
  520. PYTHON3_INSTALL_DIR = $(PREFIX)/python-$(PYTHON3_VERSION)
  521. .fetch-python3-$(PYTHON3_VERSION):
  522. @$(RM) $(PYTHON3_TARBALL)
  523. $(WGET) -O $(PYTHON3_TARBALL) $(PYTHON3_TARBALL_URL)
  524. @echo '$(PYTHON3_TARBALL_SHA256) $(PYTHON3_TARBALL)' | $(SHA256SUM)
  525. @$(TOUCH) $@
  526. fetch-python3: .fetch-python3-$(PYTHON3_VERSION)
  527. .extract-python3-$(PYTHON3_VERSION): .fetch-python3-$(PYTHON3_VERSION)
  528. $(RM) $(PYTHON3_BUILD_DIR)
  529. $(TAR) -xzf $(PYTHON3_TARBALL)
  530. @$(TOUCH) $@
  531. extract-python3: .extract-python3-$(PYTHON3_VERSION)
  532. .configure-python3-$(PYTHON3_VERSION): .extract-python3-$(PYTHON3_VERSION)
  533. cd $(PYTHON3_BUILD_DIR) && ./configure --prefix=$(PYTHON3_INSTALL_DIR) $(PYTHON3_CONFIGURE_FLAGS)
  534. @$(TOUCH) $@
  535. configure-python3: .configure-python3-$(PYTHON3_VERSION)
  536. .build-python3-$(PYTHON3_VERSION): .configure-python3-$(PYTHON3_VERSION)
  537. cd $(PYTHON3_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  538. @$(TOUCH) $@
  539. build-python3: .build-python3-$(PYTHON3_VERSION)
  540. install-python3: .build-python3-$(PYTHON3_VERSION)
  541. cd $(PYTHON3_BUILD_DIR) && $(MAKE) install
  542. clean-python3:
  543. @$(RM) .build-python3-$(PYTHON3_VERSION)
  544. @$(RM) .configure-python3-$(PYTHON3_VERSION)
  545. @$(RM) .extract-python3-$(PYTHON3_VERSION)
  546. $(RM) $(PYTHON3_BUILD_DIR)
  547. distclean-python3: clean-python3
  548. @$(RM) .fetch-python3-$(PYTHON3_VERSION)
  549. $(RM) $(PYTHON3_TARBALL)
  550. env-python3:
  551. @echo 'export PATH="$(PYTHON3_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  552. @echo 'export CPATH="$(PYTHON3_INSTALL_DIR)/include$${CPATH+:$$CPATH}"'
  553. @echo 'export LIBRARY_PATH="$(PYTHON3_INSTALL_DIR)/lib$${LIBRARY_PATH+:$$LIBRARY_PATH}"'
  554. @echo 'export LD_LIBRARY_PATH="$(PYTHON3_INSTALL_DIR)/lib$${LD_LIBRARY_PATH+:$$LD_LIBRARY_PATH}"'
  555. @echo 'export MANPATH="$(PYTHON3_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  556. @echo 'export CMAKE_PREFIX_PATH="$(PYTHON3_INSTALL_DIR)$${CMAKE_PREFIX_PATH+:$$CMAKE_PREFIX_PATH}"'
  557. #
  558. # Graphviz
  559. #
  560. GRAPHVIZ_VERSION = 2.28.0
  561. GRAPHVIZ_TARBALL = graphviz-$(GRAPHVIZ_VERSION).tar.gz
  562. GRAPHVIZ_TARBALL_URL = http://www.graphviz.org/pub/graphviz/stable/SOURCES/$(GRAPHVIZ_TARBALL)
  563. GRAPHVIZ_TARBALL_SHA256 = d3aa7973c578cae4cc26d9d6498c57ed06680cab9a4e940d0357a3c6527afc76
  564. GRAPHVIZ_BUILD_DIR = graphviz-$(GRAPHVIZ_VERSION)
  565. GRAPHVIZ_CONFIGURE_FLAGS = --with-qt=no --enable-swig=no --enable-python=no
  566. GRAPHVIZ_INSTALL_DIR = $(PREFIX)/graphviz-$(GRAPHVIZ_VERSION)
  567. .fetch-graphviz-$(GRAPHVIZ_VERSION):
  568. @$(RM) $(GRAPHVIZ_TARBALL)
  569. $(WGET) -O $(GRAPHVIZ_TARBALL) $(GRAPHVIZ_TARBALL_URL)
  570. @echo '$(GRAPHVIZ_TARBALL_SHA256) $(GRAPHVIZ_TARBALL)' | $(SHA256SUM)
  571. @$(TOUCH) $@
  572. fetch-graphviz: .fetch-graphviz-$(GRAPHVIZ_VERSION)
  573. .extract-graphviz-$(GRAPHVIZ_VERSION): .fetch-graphviz-$(GRAPHVIZ_VERSION)
  574. $(RM) $(GRAPHVIZ_BUILD_DIR)
  575. $(TAR) -xzf $(GRAPHVIZ_TARBALL)
  576. @$(TOUCH) $@
  577. extract-graphviz: .extract-graphviz-$(GRAPHVIZ_VERSION)
  578. .configure-graphviz-$(GRAPHVIZ_VERSION): .extract-graphviz-$(GRAPHVIZ_VERSION)
  579. cd $(GRAPHVIZ_BUILD_DIR) && ./configure $(GRAPHVIZ_CONFIGURE_FLAGS) --prefix=$(GRAPHVIZ_INSTALL_DIR)
  580. @$(TOUCH) $@
  581. configure-graphviz: .configure-graphviz-$(GRAPHVIZ_VERSION)
  582. .build-graphviz-$(GRAPHVIZ_VERSION): .configure-graphviz-$(GRAPHVIZ_VERSION)
  583. cd $(GRAPHVIZ_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  584. @$(TOUCH) $@
  585. build-graphviz: .build-graphviz-$(GRAPHVIZ_VERSION)
  586. install-graphviz: .build-graphviz-$(GRAPHVIZ_VERSION)
  587. cd $(GRAPHVIZ_BUILD_DIR) && $(MAKE) install
  588. clean-graphviz:
  589. @$(RM) .build-graphviz-$(GRAPHVIZ_VERSION)
  590. @$(RM) .configure-graphviz-$(GRAPHVIZ_VERSION)
  591. @$(RM) .extract-graphviz-$(GRAPHVIZ_VERSION)
  592. $(RM) $(GRAPHVIZ_BUILD_DIR)
  593. distclean-graphviz: clean-graphviz
  594. @$(RM) .fetch-graphviz-$(GRAPHVIZ_VERSION)
  595. $(RM) $(GRAPHVIZ_TARBALL)
  596. env-graphviz:
  597. @echo 'export PATH="$(GRAPHVIZ_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  598. @echo 'export MANPATH="$(GRAPHVIZ_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  599. #
  600. # LLVM compiler infrastructure
  601. #
  602. LLVM_VERSION = 5.0.0
  603. LLVM_TARBALL = llvm-$(LLVM_VERSION).src.tar.xz
  604. LLVM_TARBALL_URL = https://releases.llvm.org/$(LLVM_VERSION)/$(LLVM_TARBALL)
  605. LLVM_TARBALL_SHA256 = e35dcbae6084adcf4abb32514127c5eabd7d63b733852ccdb31e06f1373136da
  606. LLVM_SOURCE_DIR = llvm-$(LLVM_VERSION).src
  607. LLVM_BUILD_DIR = $(LLVM_SOURCE_DIR)/build
  608. LLVM_CONFIGURE_FLAGS = -DCMAKE_BUILD_TYPE=Release -DLLVM_TARGETS_TO_BUILD=X86 -DLLVM_ENABLE_RTTI=ON -DLLVM_BUILD_LLVM_DYLIB=ON -DLLVM_LINK_LLVM_DYLIB=ON
  609. LLVM_INSTALL_DIR = $(PREFIX)/llvm-$(LLVM_VERSION)
  610. .fetch-llvm-$(LLVM_VERSION):
  611. @$(RM) $(LLVM_TARBALL)
  612. $(WGET) -O $(LLVM_TARBALL) $(LLVM_TARBALL_URL)
  613. @echo '$(LLVM_TARBALL_SHA256) $(LLVM_TARBALL)' | $(SHA256SUM)
  614. @$(TOUCH) $@
  615. fetch-llvm: .fetch-llvm-$(LLVM_VERSION)
  616. .extract-llvm-$(LLVM_VERSION): .fetch-llvm-$(LLVM_VERSION)
  617. $(RM) $(LLVM_SOURCE_DIR)
  618. $(TAR) -xf $(LLVM_TARBALL)
  619. @$(TOUCH) $@
  620. extract-llvm: .extract-llvm-$(LLVM_VERSION)
  621. .configure-llvm-$(LLVM_VERSION): .extract-llvm-$(LLVM_VERSION)
  622. $(MKDIR) $(LLVM_BUILD_DIR)
  623. cd $(LLVM_BUILD_DIR) && $(CMAKE) -DCMAKE_INSTALL_PREFIX=$(LLVM_INSTALL_DIR) $(LLVM_CONFIGURE_FLAGS) ..
  624. @$(TOUCH) $@
  625. configure-llvm: .configure-llvm-$(LLVM_VERSION)
  626. .build-llvm-$(LLVM_VERSION): .configure-llvm-$(LLVM_VERSION)
  627. cd $(LLVM_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  628. @$(TOUCH) $@
  629. build-llvm: .build-llvm-$(LLVM_VERSION)
  630. install-llvm: .build-llvm-$(LLVM_VERSION)
  631. cd $(LLVM_BUILD_DIR) && $(MAKE) install
  632. clean-llvm:
  633. @$(RM) .build-llvm-$(LLVM_VERSION)
  634. @$(RM) .configure-llvm-$(LLVM_VERSION)
  635. @$(RM) .extract-llvm-$(LLVM_VERSION)
  636. $(RM) $(LLVM_SOURCE_DIR)
  637. distclean-llvm: clean-llvm
  638. @$(RM) .fetch-llvm-$(LLVM_VERSION)
  639. $(RM) $(LLVM_TARBALL)
  640. env-llvm:
  641. @echo 'export PATH="$(LLVM_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  642. @echo 'export CPATH="$(LLVM_INSTALL_DIR)/include$${CPATH+:$$CPATH}"'
  643. @echo 'export LIBRARY_PATH="$(LLVM_INSTALL_DIR)/lib$${LIBRARY_PATH+:$$LIBRARY_PATH}"'
  644. @echo 'export LD_LIBRARY_PATH="$(LLVM_INSTALL_DIR)/lib$${LD_LIBRARY_PATH+:$$LD_LIBRARY_PATH}"'
  645. @echo 'export CMAKE_PREFIX_PATH="$(LLVM_INSTALL_DIR)$${CMAKE_PREFIX_PATH+:$$CMAKE_PREFIX_PATH}"'
  646. #
  647. # Clang C++ compiler
  648. #
  649. CLANG_VERSION = 5.0.0
  650. CLANG_TARBALL = cfe-$(CLANG_VERSION).src.tar.xz
  651. CLANG_TARBALL_URL = https://releases.llvm.org/$(CLANG_VERSION)/$(CLANG_TARBALL)
  652. CLANG_TARBALL_SHA256 = 019f23c2192df793ac746595e94a403908749f8e0c484b403476d2611dd20970
  653. CLANG_SOURCE_DIR = cfe-$(CLANG_VERSION).src
  654. CLANG_BUILD_DIR = $(CLANG_SOURCE_DIR)/build
  655. CLANG_CONFIGURE_FLAGS = -DCMAKE_BUILD_TYPE=Release
  656. CLANG_INSTALL_DIR = $(PREFIX)/clang-$(CLANG_VERSION)
  657. ifndef USE_SYSTEM_GCC
  658. CLANG_CONFIGURE_FLAGS += -DGCC_INSTALL_PREFIX=$(GCC_INSTALL_DIR)
  659. endif
  660. .fetch-clang-$(CLANG_VERSION):
  661. @$(RM) $(CLANG_TARBALL)
  662. $(WGET) -O $(CLANG_TARBALL) $(CLANG_TARBALL_URL)
  663. @echo '$(CLANG_TARBALL_SHA256) $(CLANG_TARBALL)' | $(SHA256SUM)
  664. @$(TOUCH) $@
  665. fetch-clang: .fetch-clang-$(CLANG_VERSION)
  666. .extract-clang-$(CLANG_VERSION): .fetch-clang-$(CLANG_VERSION)
  667. $(RM) $(CLANG_SOURCE_DIR)
  668. $(TAR) -xf $(CLANG_TARBALL)
  669. @$(TOUCH) $@
  670. extract-clang: .extract-clang-$(CLANG_VERSION)
  671. .configure-clang-$(CLANG_VERSION): .extract-clang-$(CLANG_VERSION)
  672. $(MKDIR) $(CLANG_BUILD_DIR)
  673. cd $(CLANG_BUILD_DIR) && $(CMAKE) -DCMAKE_INSTALL_PREFIX=$(CLANG_INSTALL_DIR) $(CLANG_CONFIGURE_FLAGS) ..
  674. @$(TOUCH) $@
  675. configure-clang: .configure-clang-$(CLANG_VERSION)
  676. .build-clang-$(CLANG_VERSION): .configure-clang-$(CLANG_VERSION)
  677. cd $(CLANG_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  678. @$(TOUCH) $@
  679. build-clang: .build-clang-$(CLANG_VERSION)
  680. install-clang: .build-clang-$(CLANG_VERSION)
  681. cd $(CLANG_BUILD_DIR) && $(MAKE) install
  682. clean-clang:
  683. @$(RM) .build-clang-$(CLANG_VERSION)
  684. @$(RM) .configure-clang-$(CLANG_VERSION)
  685. @$(RM) .extract-clang-$(CLANG_VERSION)
  686. $(RM) $(CLANG_SOURCE_DIR)
  687. distclean-clang: clean-clang
  688. @$(RM) .fetch-clang-$(CLANG_VERSION)
  689. $(RM) $(CLANG_TARBALL)
  690. env-clang:
  691. @echo 'export PATH="$(CLANG_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  692. @echo 'export MANPATH="$(CLANG_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  693. #
  694. # GNU Parallel
  695. #
  696. GNU_PARALLEL_VERSION = 20120622
  697. GNU_PARALLEL_TARBALL = parallel-$(GNU_PARALLEL_VERSION).tar.bz2
  698. GNU_PARALLEL_TARBALL_URL = http://ftp.gnu.org/gnu/parallel/$(GNU_PARALLEL_TARBALL)
  699. GNU_PARALLEL_TARBALL_SHA256 = bfdbb4a66835eacce2bffde23f5e0f12b4e99ced5e348b5f69b7aa97d0123869
  700. GNU_PARALLEL_BUILD_DIR = parallel-$(GNU_PARALLEL_VERSION)
  701. GNU_PARALLEL_INSTALL_DIR = $(PREFIX)/parallel-$(GNU_PARALLEL_VERSION)
  702. .fetch-gnu-parallel-$(GNU_PARALLEL_VERSION):
  703. @$(RM) $(GNU_PARALLEL_TARBALL)
  704. $(WGET) -O $(GNU_PARALLEL_TARBALL) $(GNU_PARALLEL_TARBALL_URL)
  705. @echo '$(GNU_PARALLEL_TARBALL_SHA256) $(GNU_PARALLEL_TARBALL)' | $(SHA256SUM)
  706. @$(TOUCH) $@
  707. fetch-gnu-parallel: .fetch-gnu-parallel-$(GNU_PARALLEL_VERSION)
  708. .extract-gnu-parallel-$(GNU_PARALLEL_VERSION): .fetch-gnu-parallel-$(GNU_PARALLEL_VERSION)
  709. $(RM) $(GNU_PARALLEL_BUILD_DIR)
  710. $(TAR) -xjf $(GNU_PARALLEL_TARBALL)
  711. @$(TOUCH) $@
  712. extract-gnu-parallel: .extract-gnu-parallel-$(GNU_PARALLEL_VERSION)
  713. .configure-gnu-parallel-$(GNU_PARALLEL_VERSION): .extract-gnu-parallel-$(GNU_PARALLEL_VERSION)
  714. cd $(GNU_PARALLEL_BUILD_DIR) && ./configure --prefix=$(GNU_PARALLEL_INSTALL_DIR)
  715. @$(TOUCH) $@
  716. configure-gnu-parallel: .configure-gnu-parallel-$(GNU_PARALLEL_VERSION)
  717. .build-gnu-parallel-$(GNU_PARALLEL_VERSION): .configure-gnu-parallel-$(GNU_PARALLEL_VERSION)
  718. cd $(GNU_PARALLEL_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  719. @$(TOUCH) $@
  720. build-gnu-parallel: .build-gnu-parallel-$(GNU_PARALLEL_VERSION)
  721. install-gnu-parallel: .build-gnu-parallel-$(GNU_PARALLEL_VERSION)
  722. cd $(GNU_PARALLEL_BUILD_DIR) && $(MAKE) install
  723. clean-gnu-parallel:
  724. @$(RM) .build-gnu-parallel-$(GNU_PARALLEL_VERSION)
  725. @$(RM) .configure-gnu-parallel-$(GNU_PARALLEL_VERSION)
  726. @$(RM) .extract-gnu-parallel-$(GNU_PARALLEL_VERSION)
  727. $(RM) $(GNU_PARALLEL_BUILD_DIR)
  728. distclean-gnu-parallel: clean-gnu-parallel
  729. @$(RM) .fetch-gnu-parallel-$(GNU_PARALLEL_VERSION)
  730. $(RM) $(GNU_PARALLEL_TARBALL)
  731. env-gnu-parallel:
  732. @echo 'export PATH="$(GNU_PARALLEL_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  733. @echo 'export MANPATH="$(GNU_PARALLEL_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  734. #
  735. # GMP (GNU Multiple Precision Arithmetic Library)
  736. #
  737. GMP_VERSION = 6.1.2
  738. GMP_TARBALL = gmp-$(GMP_VERSION).tar.xz
  739. GMP_TARBALL_URL = https://ftp.gnu.org/gnu/gmp/$(GMP_TARBALL)
  740. GMP_TARBALL_SHA256 = 87b565e89a9a684fe4ebeeddb8399dce2599f9c9049854ca8c0dfbdea0e21912
  741. GMP_BUILD_DIR = gmp-$(GMP_VERSION)
  742. GMP_INSTALL_DIR = $(CURDIR)/.gmp-$(GMP_VERSION)
  743. .fetch-gmp-$(GMP_VERSION):
  744. @$(RM) $(GMP_TARBALL)
  745. $(WGET) -O $(GMP_TARBALL) $(GMP_TARBALL_URL)
  746. @echo '$(GMP_TARBALL_SHA256) $(GMP_TARBALL)' | $(SHA256SUM)
  747. @$(TOUCH) $@
  748. fetch-gmp: .fetch-gmp-$(GMP_VERSION)
  749. .extract-gmp-$(GMP_VERSION): .fetch-gmp-$(GMP_VERSION)
  750. $(RM) $(GMP_BUILD_DIR)
  751. $(TAR) -xf $(GMP_TARBALL)
  752. @$(TOUCH) $@
  753. extract-gmp: .extract-gmp-$(GMP_VERSION)
  754. .configure-gmp-$(GMP_VERSION): .extract-gmp-$(GMP_VERSION)
  755. cd $(GMP_BUILD_DIR) && CFLAGS=-fPIC ./configure --prefix=$(GMP_INSTALL_DIR) --enable-cxx --disable-shared
  756. @$(TOUCH) $@
  757. configure-gmp: .configure-gmp-$(GMP_VERSION)
  758. .build-gmp-$(GMP_VERSION): .configure-gmp-$(GMP_VERSION)
  759. cd $(GMP_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  760. @$(TOUCH) $@
  761. build-gmp: .build-gmp-$(GMP_VERSION)
  762. .install-gmp-$(GMP_VERSION): .build-gmp-$(GMP_VERSION)
  763. cd $(GMP_BUILD_DIR) && $(MAKE) install
  764. @$(TOUCH) $@
  765. clean-gmp:
  766. @$(RM) .build-gmp-$(GMP_VERSION)
  767. @$(RM) .configure-gmp-$(GMP_VERSION)
  768. @$(RM) .extract-gmp-$(GMP_VERSION)
  769. $(RM) $(GMP_BUILD_DIR)
  770. distclean-gmp: clean-gmp
  771. @$(RM) .fetch-gmp-$(GMP_VERSION)
  772. $(RM) $(GMP_TARBALL)
  773. #
  774. # MPFR (Multiple-precision floating-point computations with correct rounding)
  775. #
  776. MPFR_VERSION = 3.1.6
  777. MPFR_TARBALL = mpfr-$(MPFR_VERSION).tar.xz
  778. MPFR_TARBALL_URL = http://www.mpfr.org/mpfr-$(MPFR_VERSION)/$(MPFR_TARBALL)
  779. MPFR_TARBALL_SHA256 = 7a62ac1a04408614fccdc506e4844b10cf0ad2c2b1677097f8f35d3a1344a950
  780. MPFR_BUILD_DIR = mpfr-$(MPFR_VERSION)
  781. MPFR_INSTALL_DIR = $(CURDIR)/.mpfr-$(MPFR_VERSION)
  782. .fetch-mpfr-$(MPFR_VERSION):
  783. @$(RM) $(MPFR_TARBALL)
  784. $(WGET) -O $(MPFR_TARBALL) $(MPFR_TARBALL_URL)
  785. @echo '$(MPFR_TARBALL_SHA256) $(MPFR_TARBALL)' | $(SHA256SUM)
  786. @$(TOUCH) $@
  787. fetch-mpfr: .fetch-mpfr-$(MPFR_VERSION)
  788. .extract-mpfr-$(MPFR_VERSION): .fetch-mpfr-$(MPFR_VERSION)
  789. $(RM) $(MPFR_BUILD_DIR)
  790. $(TAR) -xf $(MPFR_TARBALL)
  791. @$(TOUCH) $@
  792. extract-mpfr: .extract-mpfr-$(MPFR_VERSION)
  793. .configure-mpfr-$(MPFR_VERSION): .extract-mpfr-$(MPFR_VERSION) .install-gmp-$(GMP_VERSION)
  794. cd $(MPFR_BUILD_DIR) && ./configure --prefix=$(MPFR_INSTALL_DIR) --with-gmp=$(GMP_INSTALL_DIR) --disable-shared
  795. @$(TOUCH) $@
  796. configure-mpfr: .configure-mpfr-$(MPFR_VERSION)
  797. .build-mpfr-$(MPFR_VERSION): .configure-mpfr-$(MPFR_VERSION)
  798. cd $(MPFR_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  799. @$(TOUCH) $@
  800. build-mpfr: .build-mpfr-$(MPFR_VERSION)
  801. .install-mpfr-$(MPFR_VERSION): .build-mpfr-$(MPFR_VERSION)
  802. cd $(MPFR_BUILD_DIR) && $(MAKE) install
  803. @$(TOUCH) $@
  804. clean-mpfr:
  805. @$(RM) .build-mpfr-$(MPFR_VERSION)
  806. @$(RM) .configure-mpfr-$(MPFR_VERSION)
  807. @$(RM) .extract-mpfr-$(MPFR_VERSION)
  808. $(RM) $(MPFR_BUILD_DIR)
  809. distclean-mpfr: clean-mpfr
  810. @$(RM) .fetch-mpfr-$(MPFR_VERSION)
  811. $(RM) $(MPFR_TARBALL)
  812. #
  813. # MPC (arithmetic of complex numbers with arbitrarily high precision and correct rounding)
  814. #
  815. MPC_VERSION = 1.0.3
  816. MPC_TARBALL = mpc-$(MPC_VERSION).tar.gz
  817. MPC_TARBALL_URL = http://www.multiprecision.org/mpc/download/$(MPC_TARBALL)
  818. MPC_TARBALL_SHA256 = 617decc6ea09889fb08ede330917a00b16809b8db88c29c31bfbb49cbf88ecc3
  819. MPC_BUILD_DIR = mpc-$(MPC_VERSION)
  820. MPC_INSTALL_DIR = $(CURDIR)/.mpc-$(MPC_VERSION)
  821. .fetch-mpc-$(MPC_VERSION):
  822. @$(RM) $(MPC_TARBALL)
  823. $(WGET) -O $(MPC_TARBALL) $(MPC_TARBALL_URL)
  824. @echo '$(MPC_TARBALL_SHA256) $(MPC_TARBALL)' | $(SHA256SUM)
  825. @$(TOUCH) $@
  826. fetch-mpc: .fetch-mpc-$(MPC_VERSION)
  827. .extract-mpc-$(MPC_VERSION): .fetch-mpc-$(MPC_VERSION)
  828. $(RM) $(MPC_BUILD_DIR)
  829. $(TAR) -xzf $(MPC_TARBALL)
  830. @$(TOUCH) $@
  831. extract-mpc: .extract-mpc-$(MPC_VERSION)
  832. .configure-mpc-$(MPC_VERSION): .extract-mpc-$(MPC_VERSION) .install-gmp-$(GMP_VERSION) .install-mpfr-$(MPFR_VERSION)
  833. cd $(MPC_BUILD_DIR) && ./configure --prefix=$(MPC_INSTALL_DIR) --with-gmp=$(GMP_INSTALL_DIR) --with-mpfr=$(MPFR_INSTALL_DIR) --disable-shared
  834. @$(TOUCH) $@
  835. configure-mpc: .configure-mpc-$(MPC_VERSION)
  836. .build-mpc-$(MPC_VERSION): .configure-mpc-$(MPC_VERSION)
  837. cd $(MPC_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  838. @$(TOUCH) $@
  839. build-mpc: .build-mpc-$(MPC_VERSION)
  840. .install-mpc-$(MPC_VERSION): .build-mpc-$(MPC_VERSION)
  841. cd $(MPC_BUILD_DIR) && $(MAKE) install
  842. @$(TOUCH) $@
  843. clean-mpc:
  844. @$(RM) .build-mpc-$(MPC_VERSION)
  845. @$(RM) .configure-mpc-$(MPC_VERSION)
  846. @$(RM) .extract-mpc-$(MPC_VERSION)
  847. $(RM) $(MPC_BUILD_DIR)
  848. distclean-mpc: clean-mpc
  849. @$(RM) .fetch-mpc-$(MPC_VERSION)
  850. $(RM) $(MPC_TARBALL)
  851. #
  852. # Integer Set Library
  853. #
  854. ISL_VERSION = 0.18
  855. ISL_TARBALL = isl-$(ISL_VERSION).tar.xz
  856. ISL_TARBALL_URL = http://isl.gforge.inria.fr/$(ISL_TARBALL)
  857. ISL_TARBALL_SHA256 = 0f35051cc030b87c673ac1f187de40e386a1482a0cfdf2c552dd6031b307ddc4
  858. ISL_BUILD_DIR = isl-$(ISL_VERSION)
  859. ISL_INSTALL_DIR = $(CURDIR)/.isl-$(ISL_VERSION)
  860. .fetch-isl-$(ISL_VERSION):
  861. @$(RM) $(ISL_TARBALL)
  862. $(WGET) -O $(ISL_TARBALL) $(ISL_TARBALL_URL)
  863. @echo '$(ISL_TARBALL_SHA256) $(ISL_TARBALL)' | $(SHA256SUM)
  864. @$(TOUCH) $@
  865. fetch-isl: .fetch-isl-$(ISL_VERSION)
  866. .extract-isl-$(ISL_VERSION): .fetch-isl-$(ISL_VERSION)
  867. $(RM) $(ISL_BUILD_DIR)
  868. $(TAR) -xf $(ISL_TARBALL)
  869. @$(TOUCH) $@
  870. extract-isl: .extract-isl-$(ISL_VERSION)
  871. .configure-isl-$(ISL_VERSION): .extract-isl-$(ISL_VERSION) .install-gmp-$(GMP_VERSION)
  872. cd $(ISL_BUILD_DIR) && ./configure --prefix=$(ISL_INSTALL_DIR) --with-gmp-prefix=$(GMP_INSTALL_DIR) --disable-shared
  873. @$(TOUCH) $@
  874. configure-isl: .configure-isl-$(ISL_VERSION)
  875. .build-isl-$(ISL_VERSION): .configure-isl-$(ISL_VERSION)
  876. cd $(ISL_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  877. @$(TOUCH) $@
  878. build-isl: .build-isl-$(ISL_VERSION)
  879. .install-isl-$(ISL_VERSION): .build-isl-$(ISL_VERSION)
  880. cd $(ISL_BUILD_DIR) && $(MAKE) install
  881. @$(TOUCH) $@
  882. clean-isl:
  883. @$(RM) .build-isl-$(ISL_VERSION)
  884. @$(RM) .configure-isl-$(ISL_VERSION)
  885. @$(RM) .extract-isl-$(ISL_VERSION)
  886. $(RM) $(ISL_BUILD_DIR)
  887. distclean-isl: clean-isl
  888. @$(RM) .fetch-isl-$(ISL_VERSION)
  889. $(RM) $(ISL_TARBALL)
  890. #
  891. # GCC (GNU Compiler Collection)
  892. #
  893. GCC_VERSION = 7.2.0
  894. GCC_TARBALL = gcc-$(GCC_VERSION).tar.xz
  895. GCC_TARBALL_URL = http://gd.tuwien.ac.at/gnu/gcc/releases/gcc-$(GCC_VERSION)/$(GCC_TARBALL)
  896. GCC_TARBALL_SHA256 = 1cf7adf8ff4b5aa49041c8734bbcf1ad18cc4c94d0029aae0f4e48841088479a
  897. GCC_BUILD_DIR = gcc-$(GCC_VERSION)
  898. GCC_BUILD_FLAGS = --enable-cxx-flags=-fPIC --enable-languages=c,c++,fortran,lto --disable-multilib
  899. GCC_INSTALL_DIR = $(PREFIX)/gcc-$(GCC_VERSION)
  900. .fetch-gcc-$(GCC_VERSION):
  901. @$(RM) $(GCC_TARBALL)
  902. $(WGET) -O $(GCC_TARBALL) $(GCC_TARBALL_URL)
  903. @echo '$(GCC_TARBALL_SHA256) $(GCC_TARBALL)' | $(SHA256SUM)
  904. @$(TOUCH) $@
  905. fetch-gcc: .fetch-gcc-$(GCC_VERSION) .fetch-gmp-$(GMP_VERSION) .fetch-mpfr-$(MPFR_VERSION) .fetch-mpc-$(MPC_VERSION) .fetch-isl-$(ISL_VERSION)
  906. .extract-gcc-$(GCC_VERSION): .fetch-gcc-$(GCC_VERSION)
  907. $(RM) $(GCC_BUILD_DIR)
  908. $(TAR) -xf $(GCC_TARBALL)
  909. @$(TOUCH) $@
  910. extract-gcc: .extract-gcc-$(GCC_VERSION)
  911. .configure-gcc-$(GCC_VERSION): .extract-gcc-$(GCC_VERSION) .install-gmp-$(GMP_VERSION) .install-mpfr-$(MPFR_VERSION) .install-mpc-$(MPC_VERSION) .install-isl-$(ISL_VERSION)
  912. cd $(GCC_BUILD_DIR) && ./configure --prefix=$(GCC_INSTALL_DIR) --with-gmp=$(GMP_INSTALL_DIR) --with-mpfr=$(MPFR_INSTALL_DIR) --with-mpc=$(MPC_INSTALL_DIR) --with-isl=$(ISL_INSTALL_DIR) $(GCC_BUILD_FLAGS)
  913. @$(TOUCH) $@
  914. configure-gcc: .configure-gcc-$(GCC_VERSION)
  915. .build-gcc-$(GCC_VERSION): .configure-gcc-$(GCC_VERSION)
  916. cd $(GCC_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  917. @$(TOUCH) $@
  918. build-gcc: .build-gcc-$(GCC_VERSION)
  919. install-gcc: .build-gcc-$(GCC_VERSION)
  920. cd $(GCC_BUILD_DIR) && $(MAKE) install
  921. cd $(GMP_INSTALL_DIR) && $(CP) include `$(GCC_INSTALL_DIR)/bin/gcc -print-file-name=plugin`
  922. clean-gcc:
  923. @$(RM) .build-gcc-$(GCC_VERSION)
  924. @$(RM) .configure-gcc-$(GCC_VERSION)
  925. @$(RM) .extract-gcc-$(GCC_VERSION)
  926. $(RM) $(GCC_BUILD_DIR)
  927. distclean-gcc: clean-gcc
  928. @$(RM) .fetch-gcc-$(GCC_VERSION)
  929. $(RM) $(GCC_TARBALL)
  930. env-gcc:
  931. @echo 'export PATH="$(GCC_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  932. @echo 'export MANPATH="$(GCC_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  933. @echo 'export LD_LIBRARY_PATH="$(GCC_INSTALL_DIR)/lib64$${LD_LIBRARY_PATH+:$$LD_LIBRARY_PATH}"'
  934. #
  935. # GHC (Glasgow Haskell Compiler)
  936. #
  937. GHC_VERSION = 7.8.4
  938. GHC_TARBALL = ghc-$(GHC_VERSION)-x86_64-unknown-linux-centos65.tar.xz
  939. GHC_TARBALL_URL = https://www.haskell.org/ghc/dist/$(GHC_VERSION)/$(GHC_TARBALL)
  940. GHC_TARBALL_SHA256 = 189509b31ab40b932d5154527892ba4e25b286b2c49fdf63e90fa2f499a20e4a
  941. GHC_BUILD_DIR = ghc-$(GHC_VERSION)
  942. GHC_INSTALL_DIR = $(CURDIR)/.ghc-$(GHC_VERSION)
  943. .fetch-ghc-$(GHC_VERSION):
  944. @$(RM) $(GHC_TARBALL)
  945. $(WGET) -O $(GHC_TARBALL) $(GHC_TARBALL_URL)
  946. @echo '$(GHC_TARBALL_SHA256) $(GHC_TARBALL)' | $(SHA256SUM)
  947. @$(TOUCH) $@
  948. fetch-ghc: .fetch-ghc-$(GHC_VERSION)
  949. .extract-ghc-$(GHC_VERSION): .fetch-ghc-$(GHC_VERSION)
  950. $(RM) $(GHC_BUILD_DIR)
  951. $(TAR) -xf $(GHC_TARBALL)
  952. @$(TOUCH) $@
  953. extract-ghc: .extract-ghc-$(GHC_VERSION)
  954. .configure-ghc-$(GHC_VERSION): .extract-ghc-$(GHC_VERSION)
  955. cd $(GHC_BUILD_DIR) && ./configure --prefix=$(GHC_INSTALL_DIR)
  956. @$(TOUCH) $@
  957. configure-ghc: .configure-ghc-$(GHC_VERSION)
  958. .install-ghc-$(GHC_VERSION): .configure-ghc-$(GHC_VERSION)
  959. cd $(GHC_BUILD_DIR) && $(MAKE) install
  960. @$(TOUCH) $@
  961. clean-ghc:
  962. @$(RM) .configure-ghc-$(GHC_VERSION)
  963. @$(RM) .extract-ghc-$(GHC_VERSION)
  964. $(RM) $(GHC_BUILD_DIR)
  965. distclean-ghc: clean-ghc
  966. @$(RM) .fetch-ghc-$(GHC_VERSION)
  967. $(RM) $(GHC_TARBALL)
  968. #
  969. # Haskell Cabal
  970. #
  971. HASKELL_CABAL_VERSION = 1.22.6.0
  972. HASKELL_CABAL_TARBALL = cabal-install-$(HASKELL_CABAL_VERSION).tar.gz
  973. HASKELL_CABAL_TARBALL_URL = http://hackage.haskell.org/packages/archive/cabal-install/$(HASKELL_CABAL_VERSION)/$(HASKELL_CABAL_TARBALL)
  974. HASKELL_CABAL_TARBALL_SHA256 = 9d239e385696a7faa49f068aea451882baec6a7df26fbddbd08271c9053cb0b4
  975. HASKELL_CABAL_BUILD_DIR = cabal-install-$(HASKELL_CABAL_VERSION)
  976. HASKELL_CABAL_INSTALL_DIR = $(CURDIR)/.cabal-install-$(HASKELL_CABAL_VERSION)
  977. .fetch-haskell-cabal-$(HASKELL_CABAL_VERSION):
  978. @$(RM) $(HASKELL_CABAL_TARBALL)
  979. $(WGET) -O $(HASKELL_CABAL_TARBALL) $(HASKELL_CABAL_TARBALL_URL)
  980. @echo '$(HASKELL_CABAL_TARBALL_SHA256) $(HASKELL_CABAL_TARBALL)' | $(SHA256SUM)
  981. @$(TOUCH) $@
  982. fetch-haskell-cabal: .fetch-haskell-cabal-$(HASKELL_CABAL_VERSION)
  983. .extract-haskell-cabal-$(HASKELL_CABAL_VERSION): .fetch-haskell-cabal-$(HASKELL_CABAL_VERSION)
  984. $(RM) $(HASKELL_CABAL_BUILD_DIR)
  985. $(TAR) -xzf $(HASKELL_CABAL_TARBALL)
  986. @$(TOUCH) $@
  987. extract-haskell-cabal: .extract-haskell-cabal-$(HASKELL_CABAL_VERSION)
  988. .install-haskell-cabal-$(HASKELL_CABAL_VERSION): .extract-haskell-cabal-$(HASKELL_CABAL_VERSION) .install-ghc-$(GHC_VERSION)
  989. cd $(HASKELL_CABAL_BUILD_DIR) && HOME=$(CURDIR)/$(HASKELL_CABAL_BUILD_DIR) PREFIX=$(HASKELL_CABAL_INSTALL_DIR) PATH=$(GHC_INSTALL_DIR)/bin:$(PATH) sh bootstrap.sh
  990. @$(TOUCH) $@
  991. clean-haskell-cabal:
  992. @$(RM) .extract-haskell-cabal-$(HASKELL_CABAL_VERSION)
  993. $(RM) $(HASKELL_CABAL_BUILD_DIR)
  994. distclean-haskell-cabal: clean-haskell-cabal
  995. @$(RM) .fetch-haskell-cabal-$(HASKELL_CABAL_VERSION)
  996. $(RM) $(HASKELL_CABAL_TARBALL)
  997. #
  998. # git-annex
  999. #
  1000. GIT_ANNEX_VERSION = 5.20150812
  1001. GIT_ANNEX_BUILD_DIR = git-annex-$(GIT_ANNEX_VERSION)
  1002. GIT_ANNEX_INSTALL_DIR = $(PREFIX)/git-annex-$(GIT_ANNEX_VERSION)
  1003. GIT_ANNEX_BUILD_FLAGS = --flags=-assistant --flags=-dbus --flags=-s3 --flags=-webapp --flags=-webdav --flags=-xmpp
  1004. .configure-git-annex-$(GIT_ANNEX_VERSION): .install-ghc-$(GHC_VERSION) .install-haskell-cabal-$(HASKELL_CABAL_VERSION)
  1005. HOME=$(CURDIR)/$(GIT_ANNEX_BUILD_DIR) PATH=$(GHC_INSTALL_DIR)/bin:$(HASKELL_CABAL_INSTALL_DIR)/bin:$(PATH) cabal update
  1006. @$(TOUCH) $@
  1007. configure-git-annex: .configure-git-annex-$(GIT_ANNEX_VERSION)
  1008. .build-git-annex-$(GIT_ANNEX_VERSION): .configure-git-annex-$(GIT_ANNEX_VERSION)
  1009. HOME=$(CURDIR)/$(GIT_ANNEX_BUILD_DIR) PATH=$(GHC_INSTALL_DIR)/bin:$(HASKELL_CABAL_INSTALL_DIR)/bin:$(PATH) cabal install git-annex-$(GIT_ANNEX_VERSION) $(GIT_ANNEX_BUILD_FLAGS) --only-dependencies $(PARALLEL_BUILD_FLAGS)
  1010. @$(TOUCH) $@
  1011. build-git-annex: .build-git-annex-$(GIT_ANNEX_VERSION)
  1012. install-git-annex: .build-git-annex-$(GIT_ANNEX_VERSION)
  1013. HOME=$(CURDIR)/$(GIT_ANNEX_BUILD_DIR) PATH=$(GHC_INSTALL_DIR)/bin:$(HASKELL_CABAL_INSTALL_DIR)/bin:$(PATH) cabal install git-annex-$(GIT_ANNEX_VERSION) $(GIT_ANNEX_BUILD_FLAGS) --prefix=$(GIT_ANNEX_INSTALL_DIR) $(PARALLEL_BUILD_FLAGS)
  1014. clean-git-annex:
  1015. @$(RM) .configure-git-annex-$(GIT_ANNEX_VERSION)
  1016. @$(RM) .build-git-annex-$(GIT_ANNEX_VERSION)
  1017. $(RM) $(GIT_ANNEX_BUILD_DIR)
  1018. env-git-annex:
  1019. @echo 'export PATH="$(GIT_ANNEX_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  1020. @echo 'export MANPATH="$(GIT_ANNEX_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  1021. #
  1022. # PLplot
  1023. #
  1024. PLPLOT_VERSION = 5.9.9
  1025. PLPLOT_TARBALL = plplot-$(PLPLOT_VERSION).tar.gz
  1026. PLPLOT_TARBALL_URL = 'http://sourceforge.net/projects/plplot/files/plplot/$(PLPLOT_VERSION) Source/$(PLPLOT_TARBALL)'
  1027. PLPLOT_TARBALL_SHA256 = 747e5a043681f3e20df30d159f6e8517cb1e25e502322adcd80e8ca53ec2c90d
  1028. PLPLOT_BUILD_DIR = plplot-$(PLPLOT_VERSION)
  1029. PLPLOT_INSTALL_DIR = $(PREFIX)/plplot-$(PLPLOT_VERSION)
  1030. .fetch-plplot-$(PLPLOT_VERSION):
  1031. @$(RM) $(PLPLOT_TARBALL)
  1032. $(WGET) -O $(PLPLOT_TARBALL) $(PLPLOT_TARBALL_URL)
  1033. @echo '$(PLPLOT_TARBALL_SHA256) $(PLPLOT_TARBALL)' | $(SHA256SUM)
  1034. @$(TOUCH) $@
  1035. fetch-plplot: .fetch-plplot-$(PLPLOT_VERSION)
  1036. .extract-plplot-$(PLPLOT_VERSION): .fetch-plplot-$(PLPLOT_VERSION)
  1037. $(RM) $(PLPLOT_BUILD_DIR)
  1038. $(TAR) -xzf $(PLPLOT_TARBALL)
  1039. @$(TOUCH) $@
  1040. extract-plplot: .extract-plplot-$(PLPLOT_VERSION)
  1041. .configure-plplot-$(PLPLOT_VERSION): .extract-plplot-$(PLPLOT_VERSION)
  1042. cd $(PLPLOT_BUILD_DIR) && $(CMAKE) -DCMAKE_INSTALL_PREFIX=$(PLPLOT_INSTALL_DIR) .
  1043. @$(TOUCH) $@
  1044. configure-plplot: .configure-plplot-$(PLPLOT_VERSION)
  1045. .build-plplot-$(PLPLOT_VERSION): .configure-plplot-$(PLPLOT_VERSION)
  1046. cd $(PLPLOT_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  1047. @$(TOUCH) $@
  1048. build-plplot: .build-plplot-$(PLPLOT_VERSION)
  1049. install-plplot: .build-plplot-$(PLPLOT_VERSION)
  1050. cd $(PLPLOT_BUILD_DIR) && $(MAKE) install
  1051. clean-plplot:
  1052. @$(RM) .build-plplot-$(PLPLOT_VERSION)
  1053. @$(RM) .configure-plplot-$(PLPLOT_VERSION)
  1054. @$(RM) .extract-plplot-$(PLPLOT_VERSION)
  1055. $(RM) $(PLPLOT_BUILD_DIR)
  1056. distclean-plplot: clean-plplot
  1057. @$(RM) .fetch-plplot-$(PLPLOT_VERSION)
  1058. $(RM) $(PLPLOT_TARBALL)
  1059. env-plplot:
  1060. @echo 'export PATH="$(PLPLOT_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  1061. @echo 'export MANPATH="$(PLPLOT_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  1062. @echo 'export PKG_CONFIG_PATH="$(PLPLOT_INSTALL_DIR)/lib/pkgconfig$${PKG_CONFIG_PATH+:$$PKG_CONFIG_PATH}"'
  1063. @echo 'export LD_LIBRARY_PATH="$(PLPLOT_INSTALL_DIR)/lib$${LD_LIBRARY_PATH+:$$LD_LIBRARY_PATH}"'
  1064. #
  1065. # pandoc
  1066. #
  1067. PANDOC_VERSION = 1.15.0.6
  1068. PANDOC_CITEPROC_VERSION = 0.7.3.1
  1069. PANDOC_BUILD_DIR = pandoc-$(PANDOC_VERSION)
  1070. PANDOC_INSTALL_DIR = $(PREFIX)/pandoc-$(PANDOC_VERSION)
  1071. .configure-pandoc-$(PANDOC_VERSION): .install-ghc-$(GHC_VERSION) .install-haskell-cabal-$(HASKELL_CABAL_VERSION)
  1072. HOME=$(CURDIR)/$(PANDOC_BUILD_DIR) PATH=$(GHC_INSTALL_DIR)/bin:$(HASKELL_CABAL_INSTALL_DIR)/bin:$(PATH) cabal update
  1073. HOME=$(CURDIR)/$(PANDOC_BUILD_DIR) PATH=$(GHC_INSTALL_DIR)/bin:$(HASKELL_CABAL_INSTALL_DIR)/bin:$(PATH) cabal install alex happy --prefix=$(HASKELL_CABAL_INSTALL_DIR) $(PARALLEL_BUILD_FLAGS)
  1074. @$(TOUCH) $@
  1075. configure-pandoc: .configure-pandoc-$(PANDOC_VERSION)
  1076. .build-pandoc-$(PANDOC_VERSION): .configure-pandoc-$(PANDOC_VERSION)
  1077. HOME=$(CURDIR)/$(PANDOC_BUILD_DIR) PATH=$(GHC_INSTALL_DIR)/bin:$(HASKELL_CABAL_INSTALL_DIR)/bin:$(PATH) cabal install pandoc-$(PANDOC_VERSION) pandoc-citeproc-$(PANDOC_CITEPROC_VERSION) --only-dependencies $(PARALLEL_BUILD_FLAGS)
  1078. @$(TOUCH) $@
  1079. build-pandoc: .build-pandoc-$(PANDOC_VERSION)
  1080. install-pandoc: .build-pandoc-$(PANDOC_VERSION)
  1081. HOME=$(CURDIR)/$(PANDOC_BUILD_DIR) PATH=$(GHC_INSTALL_DIR)/bin:$(HASKELL_CABAL_INSTALL_DIR)/bin:$(PATH) cabal install pandoc-$(PANDOC_VERSION) pandoc-citeproc-$(PANDOC_CITEPROC_VERSION) --prefix=$(PANDOC_INSTALL_DIR) $(PARALLEL_BUILD_FLAGS)
  1082. clean-pandoc:
  1083. @$(RM) .configure-pandoc-$(PANDOC_VERSION)
  1084. @$(RM) .build-pandoc-$(PANDOC_VERSION)
  1085. $(RM) $(PANDOC_BUILD_DIR)
  1086. env-pandoc:
  1087. @echo 'export PATH="$(PANDOC_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  1088. @echo 'export MANPATH="$(PANDOC_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  1089. #
  1090. # OpenCL ICD Loader
  1091. #
  1092. OPENCL_ICD_VERSION = 2.2.7
  1093. OPENCL_ICD_TARBALL = ocl-icd-$(OPENCL_ICD_VERSION).tgz
  1094. OPENCL_ICD_TARBALL_URL = https://forge.imag.fr/frs/download.php/667/$(OPENCL_ICD_TARBALL)
  1095. OPENCL_ICD_TARBALL_SHA256 = be78886c83b903dd5861f35d62d473e4228b3c13e25535a8665c87cb8a51390b
  1096. OPENCL_ICD_PATCH = ocl-icd-$(OPENCL_ICD_VERSION).patch
  1097. OPENCL_ICD_PATCH_SHA256 = 6024804df660abb6e49a6aa4720aae6c16a0c12bdce148a51af9f2d4cc4291a1
  1098. OPENCL_ICD_BUILD_DIR = ocl-icd-$(OPENCL_ICD_VERSION)
  1099. OPENCL_ICD_INSTALL_DIR = $(PREFIX)/opencl-icd-$(OPENCL_ICD_VERSION)
  1100. define OPENCL_ICD_PATCH_FILE
  1101. H4sIAOf2R1QCA51TwWrjMBC96yteLosdWYsbGpbFm5LD7qFQegjb07II1VZigSsHSWkPJf++kmzH
  1102. bkrYUoMtaTTz3pvxDGMMbdlwVVa8aUUlzdeSUErfG9drsMX1IrtagoZ1kWO9JgA2v34/bO4TfXgK
  1103. ATYtCI4EhFknnCqhdKO0xEFbtdOy8mcH3u6l5pVRz9LY5OftBvNKmQxlq61DWQszhzfwvXB1ildC
  1104. P4w1IkTIE4LX+SZqUIsV8oIwwDpzKF1glf567j/R/FKrRiZI/HllpKj8feLfNMVshfuHuzukr8EP
  1105. UNtkBu5hlN5xqSv+olwdOEIsu6m4Fk8yDVqiO0KyTumDLAh9R9/xe/ugNVhXsKXQvYKYWYYv/iKL
  1106. QjKIZl8L2xqXdqFbJEPojU8zFjIq9QZVdPtta5CoWAUo/Bi4/IHSU0CHNbuU3B/1901+fcxZhuE5
  1107. DptJ+af/79REGcYUzxhOYFsjZU8feq7DZ59An0Czvio9dId7vNjlYSaW+XX2DXSZf/dLNxHnGsIM
  1108. xWLlI/MoOXwgGyuH1rgg3yZxRiYA9H/eE6bI43t0dO9bIqrYta6FePS9U5B/PXZPHRMEAAA=
  1109. endef
  1110. export OPENCL_ICD_PATCH_FILE
  1111. .fetch-opencl-icd-$(OPENCL_ICD_VERSION):
  1112. @$(RM) $(OPENCL_ICD_TARBALL)
  1113. @$(RM) $(OPENCL_ICD_PATCH)
  1114. $(WGET) -O $(OPENCL_ICD_TARBALL) $(OPENCL_ICD_TARBALL_URL)
  1115. echo "$$OPENCL_ICD_PATCH_FILE" | $(BASE64) | $(GUNZIP) > $(OPENCL_ICD_PATCH)
  1116. @echo '$(OPENCL_ICD_TARBALL_SHA256) $(OPENCL_ICD_TARBALL)' | $(SHA256SUM)
  1117. @echo '$(OPENCL_ICD_PATCH_SHA256) $(OPENCL_ICD_PATCH)' | $(SHA256SUM)
  1118. @$(TOUCH) $@
  1119. fetch-opencl-icd: .fetch-opencl-icd-$(OPENCL_ICD_VERSION)
  1120. .extract-opencl-icd-$(OPENCL_ICD_VERSION): .fetch-opencl-icd-$(OPENCL_ICD_VERSION)
  1121. $(RM) $(OPENCL_ICD_BUILD_DIR)
  1122. $(TAR) -xzf $(OPENCL_ICD_TARBALL)
  1123. cd $(OPENCL_ICD_BUILD_DIR) && $(PATCH) -p0 < ../$(OPENCL_ICD_PATCH)
  1124. @$(TOUCH) $@
  1125. extract-opencl-icd: .extract-opencl-icd-$(OPENCL_ICD_VERSION)
  1126. .configure-opencl-icd-$(OPENCL_ICD_VERSION): .extract-opencl-icd-$(OPENCL_ICD_VERSION)
  1127. cd $(OPENCL_ICD_BUILD_DIR) && ./configure --prefix=$(OPENCL_ICD_INSTALL_DIR) --enable-official-khronos-headers --disable-debug --disable-update-database
  1128. @$(TOUCH) $@
  1129. configure-opencl-icd: .configure-opencl-icd-$(OPENCL_ICD_VERSION)
  1130. .build-opencl-icd-$(OPENCL_ICD_VERSION): .configure-opencl-icd-$(OPENCL_ICD_VERSION)
  1131. cd $(OPENCL_ICD_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  1132. @$(TOUCH) $@
  1133. build-opencl-icd: .build-opencl-icd-$(OPENCL_ICD_VERSION)
  1134. install-opencl-icd: .build-opencl-icd-$(OPENCL_ICD_VERSION)
  1135. cd $(OPENCL_ICD_BUILD_DIR) && $(MAKE) install
  1136. install -d $(OPENCL_ICD_INSTALL_DIR)/include
  1137. cd $(OPENCL_ICD_BUILD_DIR)/khronos-headers && $(CP) CL $(OPENCL_ICD_INSTALL_DIR)/include
  1138. clean-opencl-icd:
  1139. @$(RM) .build-opencl-icd-$(OPENCL_ICD_VERSION)
  1140. @$(RM) .configure-opencl-icd-$(OPENCL_ICD_VERSION)
  1141. @$(RM) .extract-opencl-icd-$(OPENCL_ICD_VERSION)
  1142. $(RM) $(OPENCL_ICD_BUILD_DIR)
  1143. distclean-opencl-icd: clean-opencl-icd
  1144. @$(RM) .fetch-opencl-icd-$(OPENCL_ICD_VERSION)
  1145. $(RM) $(OPENCL_ICD_TARBALL)
  1146. $(RM) $(OPENCL_ICD_PATCH)
  1147. env-opencl-icd:
  1148. @echo 'export CPATH="$(OPENCL_ICD_INSTALL_DIR)/include$${CPATH+:$$CPATH}"'
  1149. @echo 'export LIBRARY_PATH="$(OPENCL_ICD_INSTALL_DIR)/lib$${LIBRARY_PATH+:$$LIBRARY_PATH}"'
  1150. @echo 'export LD_LIBRARY_PATH="$(OPENCL_ICD_INSTALL_DIR)/lib$${LD_LIBRARY_PATH+:$$LD_LIBRARY_PATH}"'
  1151. @echo 'export MANPATH="$(OPENCL_ICD_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  1152. @echo 'export OCL_ICD_VENDORS="$(OPENCL_ICD_INSTALL_DIR)/etc/OpenCL/vendors"'
  1153. #
  1154. # hwloc (Portable Hardware Locality)
  1155. #
  1156. HWLOC_VERSION = 1.10.1
  1157. HWLOC_TARBALL = hwloc-$(HWLOC_VERSION).tar.gz
  1158. HWLOC_TARBALL_URL = http://www.open-mpi.org/software/hwloc/v1.10/downloads/$(HWLOC_TARBALL)
  1159. HWLOC_TARBALL_SHA256 = ef7cc854a26a9bdef2bc5f14c8d627b7c4a34e3a2fd06aeb3dec2b3b0cc364fc
  1160. HWLOC_BUILD_DIR = hwloc-$(HWLOC_VERSION)
  1161. HWLOC_INSTALL_DIR = $(CURDIR)/.hwloc-$(HWLOC_VERSION)
  1162. .fetch-hwloc-$(HWLOC_VERSION):
  1163. @$(RM) $(HWLOC_TARBALL)
  1164. $(WGET) -O $(HWLOC_TARBALL) $(HWLOC_TARBALL_URL)
  1165. @echo '$(HWLOC_TARBALL_SHA256) $(HWLOC_TARBALL)' | $(SHA256SUM)
  1166. @$(TOUCH) $@
  1167. fetch-hwloc: .fetch-hwloc-$(HWLOC_VERSION)
  1168. .extract-hwloc-$(HWLOC_VERSION): .fetch-hwloc-$(HWLOC_VERSION)
  1169. $(RM) $(HWLOC_BUILD_DIR)
  1170. $(TAR) -xf $(HWLOC_TARBALL)
  1171. @$(TOUCH) $@
  1172. extract-hwloc: .extract-hwloc-$(HWLOC_VERSION)
  1173. .configure-hwloc-$(HWLOC_VERSION): .extract-hwloc-$(HWLOC_VERSION)
  1174. cd $(HWLOC_BUILD_DIR) && CFLAGS=-fPIC ./configure --prefix=$(HWLOC_INSTALL_DIR) --disable-shared
  1175. @$(TOUCH) $@
  1176. configure-hwloc: .configure-hwloc-$(HWLOC_VERSION)
  1177. .build-hwloc-$(HWLOC_VERSION): .configure-hwloc-$(HWLOC_VERSION)
  1178. cd $(HWLOC_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  1179. @$(TOUCH) $@
  1180. build-hwloc: .build-hwloc-$(HWLOC_VERSION)
  1181. .install-hwloc-$(HWLOC_VERSION): .build-hwloc-$(HWLOC_VERSION)
  1182. cd $(HWLOC_BUILD_DIR) && $(MAKE) install
  1183. @$(TOUCH) $@
  1184. clean-hwloc:
  1185. @$(RM) .build-hwloc-$(HWLOC_VERSION)
  1186. @$(RM) .configure-hwloc-$(HWLOC_VERSION)
  1187. @$(RM) .extract-hwloc-$(HWLOC_VERSION)
  1188. $(RM) $(HWLOC_BUILD_DIR)
  1189. distclean-hwloc: clean-hwloc
  1190. @$(RM) .fetch-hwloc-$(HWLOC_VERSION)
  1191. $(RM) $(HWLOC_TARBALL)
  1192. #
  1193. # libtool
  1194. #
  1195. LIBTOOL_VERSION = 2.4.2
  1196. LIBTOOL_TARBALL = libtool-$(LIBTOOL_VERSION).tar.gz
  1197. LIBTOOL_TARBALL_URL = http://ftp.gnu.org/gnu/libtool/$(LIBTOOL_TARBALL)
  1198. LIBTOOL_TARBALL_SHA256 = b38de44862a987293cd3d8dfae1c409d514b6c4e794ebc93648febf9afc38918
  1199. LIBTOOL_BUILD_DIR = libtool-$(LIBTOOL_VERSION)
  1200. LIBTOOL_INSTALL_DIR = $(CURDIR)/.libtool-$(LIBTOOL_VERSION)
  1201. .fetch-libtool-$(LIBTOOL_VERSION):
  1202. @$(RM) $(LIBTOOL_TARBALL)
  1203. $(WGET) -O $(LIBTOOL_TARBALL) $(LIBTOOL_TARBALL_URL)
  1204. @echo '$(LIBTOOL_TARBALL_SHA256) $(LIBTOOL_TARBALL)' | $(SHA256SUM)
  1205. @$(TOUCH) $@
  1206. fetch-libtool: .fetch-libtool-$(LIBTOOL_VERSION)
  1207. .extract-libtool-$(LIBTOOL_VERSION): .fetch-libtool-$(LIBTOOL_VERSION)
  1208. $(RM) $(LIBTOOL_BUILD_DIR)
  1209. $(TAR) -xzf $(LIBTOOL_TARBALL)
  1210. @$(TOUCH) $@
  1211. extract-libtool: .extract-libtool-$(LIBTOOL_VERSION)
  1212. .configure-libtool-$(LIBTOOL_VERSION): .extract-libtool-$(LIBTOOL_VERSION)
  1213. cd $(LIBTOOL_BUILD_DIR) && CFLAGS=-fPIC ./configure --prefix=$(LIBTOOL_INSTALL_DIR) --disable-shared
  1214. @$(TOUCH) $@
  1215. configure-libtool: .configure-libtool-$(LIBTOOL_VERSION)
  1216. .build-libtool-$(LIBTOOL_VERSION): .configure-libtool-$(LIBTOOL_VERSION)
  1217. cd $(LIBTOOL_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  1218. @$(TOUCH) $@
  1219. build-libtool: .build-libtool-$(LIBTOOL_VERSION)
  1220. .install-libtool-$(LIBTOOL_VERSION): .build-libtool-$(LIBTOOL_VERSION)
  1221. cd $(LIBTOOL_BUILD_DIR) && $(MAKE) install
  1222. @$(TOUCH) $@
  1223. clean-libtool:
  1224. @$(RM) .build-libtool-$(LIBTOOL_VERSION)
  1225. @$(RM) .configure-libtool-$(LIBTOOL_VERSION)
  1226. @$(RM) .extract-libtool-$(LIBTOOL_VERSION)
  1227. $(RM) $(LIBTOOL_BUILD_DIR)
  1228. distclean-libtool: clean-libtool
  1229. @$(RM) .fetch-libtool-$(LIBTOOL_VERSION)
  1230. $(RM) $(LIBTOOL_TARBALL)
  1231. #
  1232. # POCL (Portable Computing Language)
  1233. #
  1234. POCL_VERSION = 0.11
  1235. POCL_TARBALL = pocl-$(POCL_VERSION).tar.gz
  1236. POCL_TARBALL_URL = http://portablecl.org/downloads/$(POCL_TARBALL)
  1237. POCL_TARBALL_SHA256 = 24bb801fb87d104b66faaa95d1890776fdeabb37ad1b12fb977281737c7f29bb
  1238. POCL_BUILD_DIR = pocl-$(POCL_VERSION)
  1239. POCL_INSTALL_DIR = $(PREFIX)/pocl-$(POCL_VERSION)
  1240. .fetch-pocl-$(POCL_VERSION):
  1241. @$(RM) $(POCL_TARBALL)
  1242. $(WGET) -O $(POCL_TARBALL) $(POCL_TARBALL_URL)
  1243. @echo '$(POCL_TARBALL_SHA256) $(POCL_TARBALL)' | $(SHA256SUM)
  1244. @$(TOUCH) $@
  1245. fetch-pocl: .fetch-pocl-$(POCL_VERSION)
  1246. .extract-pocl-$(POCL_VERSION): .fetch-pocl-$(POCL_VERSION)
  1247. $(RM) $(POCL_BUILD_DIR)
  1248. $(TAR) -xzf $(POCL_TARBALL)
  1249. @$(TOUCH) $@
  1250. extract-pocl: .extract-pocl-$(POCL_VERSION)
  1251. .configure-pocl-$(POCL_VERSION): .extract-pocl-$(POCL_VERSION) .install-hwloc-$(HWLOC_VERSION) .install-libtool-$(LIBTOOL_VERSION)
  1252. cd $(POCL_BUILD_DIR) && CPPFLAGS="-I$(LIBTOOL_INSTALL_DIR)/include" LDFLAGS="-L$(HWLOC_INSTALL_DIR)/lib -lhwloc -L$(LIBTOOL_INSTALL_DIR)/lib -ldl" PKG_CONFIG_PATH="$(HWLOC_INSTALL_DIR)/lib/pkgconfig:$(PKG_CONFIG_PATH)" ./configure --prefix=$(POCL_INSTALL_DIR) --sysconfdir=$(OPENCL_ICD_INSTALL_DIR)/etc
  1253. @$(TOUCH) $@
  1254. configure-pocl: .configure-pocl-$(POCL_VERSION)
  1255. .build-pocl-$(POCL_VERSION): .configure-pocl-$(POCL_VERSION)
  1256. cd $(POCL_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  1257. @$(TOUCH) $@
  1258. build-pocl: .build-pocl-$(POCL_VERSION)
  1259. install-pocl: .build-pocl-$(POCL_VERSION)
  1260. cd $(POCL_BUILD_DIR) && $(MAKE) install
  1261. clean-pocl:
  1262. @$(RM) .build-pocl-$(POCL_VERSION)
  1263. @$(RM) .configure-pocl-$(POCL_VERSION)
  1264. @$(RM) .extract-pocl-$(POCL_VERSION)
  1265. $(RM) $(POCL_BUILD_DIR)
  1266. distclean-pocl: clean-pocl
  1267. @$(RM) .fetch-pocl-$(POCL_VERSION)
  1268. $(RM) $(POCL_TARBALL)
  1269. env-pocl:
  1270. @echo 'export PATH="$(POCL_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  1271. @echo 'export LD_LIBRARY_PATH="$(POCL_INSTALL_DIR)/lib$${LD_LIBRARY_PATH+:$$LD_LIBRARY_PATH}"'
  1272. #
  1273. # Intel OpenCL ICD
  1274. #
  1275. INTEL_OPENCL_ICD_VERSION = 6.4.0.25
  1276. INTEL_OPENCL_ICD_TARBALL = opencl_runtime_16.1.1_x64_rh_$(INTEL_OPENCL_ICD_VERSION).tgz
  1277. INTEL_OPENCL_ICD_TARBALL_URL = http://registrationcenter-download.intel.com/akdlm/irc_nas/9019/$(INTEL_OPENCL_ICD_TARBALL)
  1278. INTEL_OPENCL_ICD_TARBALL_SHA256 = 3e67ff99879609cbb3cde8811b6db56c831d38b2a3bbf6dbb98fb177fd1c3b19
  1279. INTEL_OPENCL_ICD_BUILD_DIR = opencl_runtime_16.1.1_x64_rh_$(INTEL_OPENCL_ICD_VERSION)
  1280. INTEL_OPENCL_ICD_INSTALL_DIR = $(PREFIX)/intel-opencl-icd-$(INTEL_OPENCL_ICD_VERSION)
  1281. .fetch-intel-opencl-icd-$(INTEL_OPENCL_ICD_VERSION):
  1282. @$(RM) $(INTEL_OPENCL_ICD_TARBALL)
  1283. $(WGET) -O $(INTEL_OPENCL_ICD_TARBALL) $(INTEL_OPENCL_ICD_TARBALL_URL)
  1284. @echo '$(INTEL_OPENCL_ICD_TARBALL_SHA256) $(INTEL_OPENCL_ICD_TARBALL)' | $(SHA256SUM)
  1285. @$(TOUCH) $@
  1286. fetch-intel-opencl-icd: .fetch-intel-opencl-icd-$(INTEL_OPENCL_ICD_VERSION)
  1287. .extract-intel-opencl-icd-$(INTEL_OPENCL_ICD_VERSION): .fetch-intel-opencl-icd-$(INTEL_OPENCL_ICD_VERSION)
  1288. $(RM) $(INTEL_OPENCL_ICD_BUILD_DIR)
  1289. $(TAR) xfz $(INTEL_OPENCL_ICD_TARBALL)
  1290. cd $(INTEL_OPENCL_ICD_BUILD_DIR) && rpm2cpio rpm/opencl-1.2-intel-cpu-$(INTEL_OPENCL_ICD_VERSION)-1.x86_64.rpm | cpio -idm
  1291. @$(TOUCH) $@
  1292. extract-intel-opencl-icd: .extract-intel-opencl-icd-$(INTEL_OPENCL_ICD_VERSION)
  1293. install-intel-opencl-icd: .extract-intel-opencl-icd-$(INTEL_OPENCL_ICD_VERSION)
  1294. install -d $(INTEL_OPENCL_ICD_INSTALL_DIR)/lib
  1295. install -m 644 $(INTEL_OPENCL_ICD_BUILD_DIR)/opt/intel/opencl-1.2-$(INTEL_OPENCL_ICD_VERSION)/lib64/* $(INTEL_OPENCL_ICD_INSTALL_DIR)/lib
  1296. install -d $(OPENCL_ICD_INSTALL_DIR)/etc/OpenCL/vendors
  1297. echo libintelocl.so > $(OPENCL_ICD_INSTALL_DIR)/etc/OpenCL/vendors/intel.icd
  1298. clean-intel-opencl-icd:
  1299. @$(RM) .extract-intel-opencl-icd-$(INTEL_OPENCL_ICD_VERSION)
  1300. $(RM) $(INTEL_OPENCL_ICD_BUILD_DIR)
  1301. distclean-intel-opencl-icd: clean-intel-opencl-icd
  1302. @$(RM) .fetch-intel-opencl-icd-$(INTEL_OPENCL_ICD_VERSION)
  1303. $(RM) $(INTEL_OPENCL_ICD_TARBALL)
  1304. env-intel-opencl-icd:
  1305. @echo 'export LD_LIBRARY_PATH="$(INTEL_OPENCL_ICD_INSTALL_DIR)/lib$${LD_LIBRARY_PATH+:$$LD_LIBRARY_PATH}"'
  1306. #
  1307. # AMD OpenCL ICD
  1308. #
  1309. AMD_OPENCL_ICD_VERSION = 1800.5
  1310. AMD_OPENCL_ICD_TARBALL = fglrx-driver_15.7.orig.tar.xz
  1311. AMD_OPENCL_ICD_TARBALL_SHA256 = f1c2c50827626b9957071f7c22acc9b34f373584464c7b7ac80bab7719253e8e
  1312. AMD_OPENCL_ICD_TARBALL_URL = http://snapshot.debian.org/archive/debian/20150709T214436Z/pool/non-free/f/fglrx-driver/$(AMD_OPENCL_ICD_TARBALL)
  1313. AMD_OPENCL_ICD_BUILD_DIR = fglrx-driver-15.7
  1314. AMD_OPENCL_ICD_INSTALL_DIR = $(PREFIX)/amd-opencl-icd-$(AMD_OPENCL_ICD_VERSION)
  1315. .fetch-amd-opencl-icd-$(AMD_OPENCL_ICD_VERSION):
  1316. @$(RM) $(AMD_OPENCL_ICD_TARBALL)
  1317. $(WGET) -O $(AMD_OPENCL_ICD_TARBALL) $(AMD_OPENCL_ICD_TARBALL_URL)
  1318. @echo '$(AMD_OPENCL_ICD_TARBALL_SHA256) $(AMD_OPENCL_ICD_TARBALL)' | $(SHA256SUM)
  1319. @$(TOUCH) $@
  1320. fetch-amd-opencl-icd: .fetch-amd-opencl-icd-$(AMD_OPENCL_ICD_VERSION)
  1321. .extract-amd-opencl-icd-$(AMD_OPENCL_ICD_VERSION): .fetch-amd-opencl-icd-$(AMD_OPENCL_ICD_VERSION)
  1322. $(RM) $(AMD_OPENCL_ICD_BUILD_DIR)
  1323. $(TAR) xf $(AMD_OPENCL_ICD_TARBALL)
  1324. @$(TOUCH) $@
  1325. extract-amd-opencl-icd: .extract-amd-opencl-icd-$(AMD_OPENCL_ICD_VERSION)
  1326. install-amd-opencl-icd: .extract-amd-opencl-icd-$(AMD_OPENCL_ICD_VERSION)
  1327. install -d $(AMD_OPENCL_ICD_INSTALL_DIR)/lib
  1328. install -m 644 $(AMD_OPENCL_ICD_BUILD_DIR)/arch/x86_64/usr/lib64/libamdocl64.so $(AMD_OPENCL_ICD_INSTALL_DIR)/lib
  1329. install -d $(AMD_OPENCL_ICD_INSTALL_DIR)/bin
  1330. install -m 755 $(AMD_OPENCL_ICD_BUILD_DIR)/arch/x86_64/usr/bin/clinfo $(AMD_OPENCL_ICD_INSTALL_DIR)/bin
  1331. install -d $(OPENCL_ICD_INSTALL_DIR)/etc/OpenCL/vendors
  1332. echo libamdocl64.so > $(OPENCL_ICD_INSTALL_DIR)/etc/OpenCL/vendors/amd.icd
  1333. clean-amd-opencl-icd:
  1334. @$(RM) .extract-amd-opencl-icd-$(AMD_OPENCL_ICD_VERSION)
  1335. $(RM) $(AMD_OPENCL_ICD_BUILD_DIR)
  1336. distclean-amd-opencl-icd: clean-amd-opencl-icd
  1337. @$(RM) .fetch-amd-opencl-icd-$(AMD_OPENCL_ICD_VERSION)
  1338. $(RM) $(AMD_OPENCL_ICD_TARBALL)
  1339. env-amd-opencl-icd:
  1340. @echo 'export LD_LIBRARY_PATH="$(AMD_OPENCL_ICD_INSTALL_DIR)/lib$${LD_LIBRARY_PATH+:$$LD_LIBRARY_PATH}"'
  1341. @echo 'export PATH="$(AMD_OPENCL_ICD_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  1342. #
  1343. # Yasm Modular Assembler
  1344. #
  1345. YASM_VERSION = 1.2.0
  1346. YASM_TARBALL = yasm-$(YASM_VERSION).tar.gz
  1347. YASM_TARBALL_URL = http://www.tortall.net/projects/yasm/releases/$(YASM_TARBALL)
  1348. YASM_TARBALL_SHA256 = 768ffab457b90a20a6d895c39749adb547c1b7cb5c108e84b151a838a23ccf31
  1349. YASM_BUILD_DIR = yasm-$(YASM_VERSION)
  1350. YASM_INSTALL_DIR = $(CURDIR)/.yasm-$(YASM_VERSION)
  1351. .fetch-yasm-$(YASM_VERSION):
  1352. @$(RM) $(YASM_TARBALL)
  1353. $(WGET) -O $(YASM_TARBALL) $(YASM_TARBALL_URL)
  1354. @echo '$(YASM_TARBALL_SHA256) $(YASM_TARBALL)' | $(SHA256SUM)
  1355. @$(TOUCH) $@
  1356. fetch-yasm: .fetch-yasm-$(YASM_VERSION)
  1357. .extract-yasm-$(YASM_VERSION): .fetch-yasm-$(YASM_VERSION)
  1358. $(RM) $(YASM_BUILD_DIR)
  1359. $(TAR) -xzf $(YASM_TARBALL)
  1360. @$(TOUCH) $@
  1361. extract-yasm: .extract-yasm-$(YASM_VERSION)
  1362. .configure-yasm-$(YASM_VERSION): .extract-yasm-$(YASM_VERSION)
  1363. cd $(YASM_BUILD_DIR) && ./configure --prefix=$(YASM_INSTALL_DIR)
  1364. @$(TOUCH) $@
  1365. configure-yasm: .configure-yasm-$(YASM_VERSION)
  1366. .build-yasm-$(YASM_VERSION): .configure-yasm-$(YASM_VERSION)
  1367. cd $(YASM_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  1368. @$(TOUCH) $@
  1369. build-yasm: .build-yasm-$(YASM_VERSION)
  1370. .install-yasm-$(YASM_VERSION): .build-yasm-$(YASM_VERSION)
  1371. cd $(YASM_BUILD_DIR) && $(MAKE) install
  1372. @$(TOUCH) $@
  1373. clean-yasm:
  1374. @$(RM) .build-yasm-$(YASM_VERSION)
  1375. @$(RM) .configure-yasm-$(YASM_VERSION)
  1376. @$(RM) .extract-yasm-$(YASM_VERSION)
  1377. $(RM) $(YASM_BUILD_DIR)
  1378. distclean-yasm: clean-yasm
  1379. @$(RM) .fetch-yasm-$(YASM_VERSION)
  1380. $(RM) $(YASM_TARBALL)
  1381. #
  1382. # x264
  1383. #
  1384. X264_VERSION = 20141218-2245-stable
  1385. X264_TARBALL = x264-snapshot-$(X264_VERSION).tar.bz2
  1386. X264_TARBALL_URL = http://download.videolan.org/pub/videolan/x264/snapshots/$(X264_TARBALL)
  1387. X264_TARBALL_SHA256 = 3519e8fa3399845c7d2248d0a7297a923ac6bdc78d0ec15e85026e810670e1be
  1388. X264_BUILD_DIR = x264-snapshot-$(X264_VERSION)
  1389. X264_CONFIGURE_FLAGS = --enable-static --enable-pic
  1390. X264_INSTALL_DIR = $(CURDIR)/.x264-$(X264_VERSION)
  1391. .fetch-x264-$(X264_VERSION):
  1392. @$(RM) $(X264_TARBALL)
  1393. $(WGET) -O $(X264_TARBALL) $(X264_TARBALL_URL)
  1394. @echo '$(X264_TARBALL_SHA256) $(X264_TARBALL)' | $(SHA256SUM)
  1395. @$(TOUCH) $@
  1396. fetch-x264: .fetch-x264-$(X264_VERSION)
  1397. .extract-x264-$(X264_VERSION): .fetch-x264-$(X264_VERSION)
  1398. $(RM) $(X264_BUILD_DIR)
  1399. $(TAR) -xjf $(X264_TARBALL)
  1400. @$(TOUCH) $@
  1401. extract-x264: .extract-x264-$(X264_VERSION)
  1402. .configure-x264-$(X264_VERSION): .extract-x264-$(X264_VERSION) .install-yasm-$(YASM_VERSION)
  1403. cd $(X264_BUILD_DIR) && PATH="$(YASM_INSTALL_DIR)/bin:$(PATH)" ./configure --prefix=$(X264_INSTALL_DIR) $(X264_CONFIGURE_FLAGS)
  1404. @$(TOUCH) $@
  1405. configure-x264: .configure-x264-$(X264_VERSION)
  1406. .build-x264-$(X264_VERSION): .configure-x264-$(X264_VERSION)
  1407. cd $(X264_BUILD_DIR) && PATH="$(YASM_INSTALL_DIR)/bin:$(PATH)" $(MAKE) $(PARALLEL_BUILD_FLAGS)
  1408. @$(TOUCH) $@
  1409. build-x264: .build-x264-$(X264_VERSION)
  1410. .install-x264-$(X264_VERSION): .build-x264-$(X264_VERSION)
  1411. cd $(X264_BUILD_DIR) && $(MAKE) install
  1412. @$(TOUCH) $@
  1413. clean-x264:
  1414. @$(RM) .build-x264-$(X264_VERSION)
  1415. @$(RM) .configure-x264-$(X264_VERSION)
  1416. @$(RM) .extract-x264-$(X264_VERSION)
  1417. $(RM) $(X264_BUILD_DIR)
  1418. distclean-x264: clean-x264
  1419. @$(RM) .fetch-x264-$(X264_VERSION)
  1420. $(RM) $(X264_TARBALL)
  1421. #
  1422. # FFmpeg
  1423. #
  1424. FFMPEG_VERSION = 2.4.7
  1425. FFMPEG_TARBALL = ffmpeg-$(FFMPEG_VERSION).tar.gz
  1426. FFMPEG_TARBALL_URL = http://ffmpeg.org/releases/$(FFMPEG_TARBALL)
  1427. FFMPEG_TARBALL_SHA256 = 6b03ade833d94b4a0f708b7f1d9ea9a88adbfa87301ac36d047926435ac6ef10
  1428. FFMPEG_BUILD_DIR = ffmpeg-$(FFMPEG_VERSION)
  1429. FFMPEG_CONFIGURE_FLAGS = --enable-shared --enable-static --enable-pic --enable-gpl --enable-libx264
  1430. FFMPEG_INSTALL_DIR = $(PREFIX)/ffmpeg-$(FFMPEG_VERSION)
  1431. .fetch-ffmpeg-$(FFMPEG_VERSION):
  1432. @$(RM) $(FFMPEG_TARBALL)
  1433. $(WGET) -O $(FFMPEG_TARBALL) $(FFMPEG_TARBALL_URL)
  1434. @echo '$(FFMPEG_TARBALL_SHA256) $(FFMPEG_TARBALL)' | $(SHA256SUM)
  1435. @$(TOUCH) $@
  1436. fetch-ffmpeg: .fetch-ffmpeg-$(FFMPEG_VERSION)
  1437. .extract-ffmpeg-$(FFMPEG_VERSION): .fetch-ffmpeg-$(FFMPEG_VERSION)
  1438. $(RM) $(FFMPEG_BUILD_DIR)
  1439. $(TAR) -xzf $(FFMPEG_TARBALL)
  1440. @$(TOUCH) $@
  1441. extract-ffmpeg: .extract-ffmpeg-$(FFMPEG_VERSION)
  1442. .configure-ffmpeg-$(FFMPEG_VERSION): .extract-ffmpeg-$(FFMPEG_VERSION) .install-yasm-$(YASM_VERSION) .install-x264-$(X264_VERSION)
  1443. cd $(FFMPEG_BUILD_DIR) && PATH="$(YASM_INSTALL_DIR)/bin:$(PATH)" ./configure --prefix=$(FFMPEG_INSTALL_DIR) $(FFMPEG_CONFIGURE_FLAGS) --extra-cflags="-I$(X264_INSTALL_DIR)/include" --extra-ldflags="-L$(X264_INSTALL_DIR)/lib" --extra-libs="-Wl,--as-needed -ldl -Wl,--no-as-needed"
  1444. @$(TOUCH) $@
  1445. configure-ffmpeg: .configure-ffmpeg-$(FFMPEG_VERSION)
  1446. .build-ffmpeg-$(FFMPEG_VERSION): .configure-ffmpeg-$(FFMPEG_VERSION)
  1447. cd $(FFMPEG_BUILD_DIR) && PATH="$(YASM_INSTALL_DIR)/bin:$(PATH)" $(MAKE) $(PARALLEL_BUILD_FLAGS)
  1448. @$(TOUCH) $@
  1449. build-ffmpeg: .build-ffmpeg-$(FFMPEG_VERSION)
  1450. install-ffmpeg: .build-ffmpeg-$(FFMPEG_VERSION)
  1451. cd $(FFMPEG_BUILD_DIR) && $(MAKE) install
  1452. clean-ffmpeg:
  1453. @$(RM) .build-ffmpeg-$(FFMPEG_VERSION)
  1454. @$(RM) .configure-ffmpeg-$(FFMPEG_VERSION)
  1455. @$(RM) .extract-ffmpeg-$(FFMPEG_VERSION)
  1456. $(RM) $(FFMPEG_BUILD_DIR)
  1457. distclean-ffmpeg: clean-ffmpeg
  1458. @$(RM) .fetch-ffmpeg-$(FFMPEG_VERSION)
  1459. $(RM) $(FFMPEG_TARBALL)
  1460. env-ffmpeg:
  1461. @echo 'export PATH="$(FFMPEG_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  1462. @echo 'export MANPATH="$(FFMPEG_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  1463. @echo 'export PKG_CONFIG_PATH="$(FFMPEG_INSTALL_DIR)/lib/pkgconfig$${PKG_CONFIG_PATH+:$$PKG_CONFIG_PATH}"'
  1464. @echo 'export LD_LIBRARY_PATH="$(FFMPEG_INSTALL_DIR)/lib$${LD_LIBRARY_PATH+:$$LD_LIBRARY_PATH}"'
  1465. @echo 'export CMAKE_PREFIX_PATH="$(FFMPEG_INSTALL_DIR)$${CMAKE_PREFIX_PATH+:$$CMAKE_PREFIX_PATH}"'
  1466. #
  1467. # Mesa
  1468. #
  1469. MESA_VERSION = 17.2.0
  1470. MESA_TARBALL = mesa-$(MESA_VERSION).tar.xz
  1471. MESA_TARBALL_URL = https://mesa.freedesktop.org/archive/$(MESA_TARBALL)
  1472. MESA_TARBALL_SHA256 = 3123448f770eae58bc73e15480e78909defb892f10ab777e9116c9b218094943
  1473. MESA_BUILD_DIR = mesa-$(MESA_VERSION)
  1474. MESA_CONFIGURE_FLAGS = --enable-gallium-osmesa --with-gallium-drivers=swrast --enable-texture-float --disable-shared-glapi --disable-gles1 --disable-gles2 --disable-dri --disable-egl --disable-gbm --disable-glx --with-platforms=
  1475. MESA_INSTALL_DIR = $(PREFIX)/mesa-$(MESA_VERSION)
  1476. .fetch-mesa-$(MESA_VERSION):
  1477. @$(RM) $(MESA_TARBALL)
  1478. $(WGET) -O $(MESA_TARBALL) $(MESA_TARBALL_URL)
  1479. @echo '$(MESA_TARBALL_SHA256) $(MESA_TARBALL)' | $(SHA256SUM)
  1480. @$(TOUCH) $@
  1481. fetch-mesa: .fetch-mesa-$(MESA_VERSION)
  1482. .extract-mesa-$(MESA_VERSION): .fetch-mesa-$(MESA_VERSION)
  1483. $(RM) $(MESA_BUILD_DIR)
  1484. $(TAR) -xf $(MESA_TARBALL)
  1485. @$(TOUCH) $@
  1486. extract-mesa: .extract-mesa-$(MESA_VERSION)
  1487. .configure-mesa-$(MESA_VERSION): .extract-mesa-$(MESA_VERSION)
  1488. cd $(MESA_BUILD_DIR) && ./configure --prefix=$(MESA_INSTALL_DIR) $(MESA_CONFIGURE_FLAGS)
  1489. @$(TOUCH) $@
  1490. configure-mesa: .configure-mesa-$(MESA_VERSION)
  1491. .build-mesa-$(MESA_VERSION): .configure-mesa-$(MESA_VERSION)
  1492. cd $(MESA_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  1493. @$(TOUCH) $@
  1494. build-mesa: .build-mesa-$(MESA_VERSION)
  1495. install-mesa: .build-mesa-$(MESA_VERSION)
  1496. cd $(MESA_BUILD_DIR) && $(MAKE) install
  1497. clean-mesa:
  1498. @$(RM) .build-mesa-$(MESA_VERSION)
  1499. @$(RM) .configure-mesa-$(MESA_VERSION)
  1500. @$(RM) .extract-mesa-$(MESA_VERSION)
  1501. $(RM) $(MESA_BUILD_DIR)
  1502. distclean-mesa: clean-mesa
  1503. @$(RM) .fetch-mesa-$(MESA_VERSION)
  1504. $(RM) $(MESA_TARBALL)
  1505. env-mesa:
  1506. @echo 'export CPATH="$(MESA_INSTALL_DIR)/include$${CPATH+:$$CPATH}"'
  1507. @echo 'export LIBRARY_PATH="$(MESA_INSTALL_DIR)/lib$${LIBRARY_PATH+:$$LIBRARY_PATH}"'
  1508. @echo 'export LD_LIBRARY_PATH="$(MESA_INSTALL_DIR)/lib$${LD_LIBRARY_PATH+:$$LD_LIBRARY_PATH}"'
  1509. @echo 'export PKG_CONFIG_PATH="$(MESA_INSTALL_DIR)/lib/pkgconfig$${PKG_CONFIG_PATH+:$$PKG_CONFIG_PATH}"'
  1510. @echo 'export CMAKE_PREFIX_PATH="$(MESA_INSTALL_DIR)$${CMAKE_PREFIX_PATH+:$$CMAKE_PREFIX_PATH}"'
  1511. #
  1512. # OpenGL Extension Wrangler Library
  1513. #
  1514. GLEW_VERSION = 2.1.0
  1515. GLEW_TARBALL = glew-$(GLEW_VERSION).tgz
  1516. GLEW_TARBALL_URL = https://sourceforge.net/projects/glew/files/glew/$(GLEW_VERSION)/$(GLEW_TARBALL)
  1517. GLEW_TARBALL_SHA256 = 04de91e7e6763039bc11940095cd9c7f880baba82196a7765f727ac05a993c95
  1518. GLEW_BUILD_DIR = glew-$(GLEW_VERSION)
  1519. GLEW_BUILD_FLAGS = SYSTEM=linux-osmesa
  1520. GLEW_INSTALL_DIR = $(PREFIX)/glew-$(GLEW_VERSION)
  1521. .fetch-glew-$(GLEW_VERSION):
  1522. @$(RM) $(GLEW_TARBALL)
  1523. $(WGET) -O $(GLEW_TARBALL) $(GLEW_TARBALL_URL)
  1524. @echo '$(GLEW_TARBALL_SHA256) $(GLEW_TARBALL)' | $(SHA256SUM)
  1525. @$(TOUCH) $@
  1526. fetch-glew: .fetch-glew-$(GLEW_VERSION)
  1527. .extract-glew-$(GLEW_VERSION): .fetch-glew-$(GLEW_VERSION)
  1528. $(RM) $(GLEW_BUILD_DIR)
  1529. $(TAR) -xf $(GLEW_TARBALL)
  1530. @$(TOUCH) $@
  1531. extract-glew: .extract-glew-$(GLEW_VERSION)
  1532. .build-glew-$(GLEW_VERSION): .extract-glew-$(GLEW_VERSION)
  1533. cd $(GLEW_BUILD_DIR) && $(MAKE) glew.lib GLEW_PREFIX=$(GLEW_INSTALL_DIR) GLEW_DEST=$(GLEW_INSTALL_DIR) LIBDIR=$(GLEW_INSTALL_DIR)/lib $(GLEW_BUILD_FLAGS) $(PARALLEL_BUILD_FLAGS)
  1534. @$(TOUCH) $@
  1535. build-glew: .build-glew-$(GLEW_VERSION)
  1536. install-glew: .build-glew-$(GLEW_VERSION)
  1537. cd $(GLEW_BUILD_DIR) && $(MAKE) install GLEW_PREFIX=$(GLEW_INSTALL_DIR) GLEW_DEST=$(GLEW_INSTALL_DIR) LIBDIR=$(GLEW_INSTALL_DIR)/lib $(GLEW_BUILD_FLAGS)
  1538. clean-glew:
  1539. @$(RM) .build-glew-$(GLEW_VERSION)
  1540. @$(RM) .configure-glew-$(GLEW_VERSION)
  1541. @$(RM) .extract-glew-$(GLEW_VERSION)
  1542. $(RM) $(GLEW_BUILD_DIR)
  1543. distclean-glew: clean-glew
  1544. @$(RM) .fetch-glew-$(GLEW_VERSION)
  1545. $(RM) $(GLEW_TARBALL)
  1546. env-glew:
  1547. @echo 'export CPATH="$(GLEW_INSTALL_DIR)/include$${CPATH+:$$CPATH}"'
  1548. @echo 'export LIBRARY_PATH="$(GLEW_INSTALL_DIR)/lib$${LIBRARY_PATH+:$$LIBRARY_PATH}"'
  1549. @echo 'export LD_LIBRARY_PATH="$(GLEW_INSTALL_DIR)/lib$${LD_LIBRARY_PATH+:$$LD_LIBRARY_PATH}"'
  1550. @echo 'export PKG_CONFIG_PATH="$(GLEW_INSTALL_DIR)/lib/pkgconfig$${PKG_CONFIG_PATH+:$$PKG_CONFIG_PATH}"'
  1551. @echo 'export CMAKE_PREFIX_PATH="$(GLEW_INSTALL_DIR)$${CMAKE_PREFIX_PATH+:$$CMAKE_PREFIX_PATH}"'
  1552. #
  1553. # VTK
  1554. #
  1555. VTK_VERSION = 8.0.1
  1556. VTK_TARBALL = VTK-$(VTK_VERSION).tar.gz
  1557. VTK_TARBALL_URL = https://www.vtk.org/files/release/8.0/$(VTK_TARBALL)
  1558. VTK_TARBALL_SHA256 = 49107352923dea6de05a7b4c3906aaf98ef39c91ad81c383136e768dcf304069
  1559. VTK_SOURCE_DIR = VTK-$(VTK_VERSION)
  1560. VTK_BUILD_DIR = $(VTK_SOURCE_DIR)/build
  1561. VTK_CONFIGURE_FLAGS = -DCMAKE_BUILD_TYPE=Release
  1562. VTK_INSTALL_DIR = $(PREFIX)/vtk-$(VTK_VERSION)
  1563. ifdef USE_PYTHON
  1564. VTK_CONFIGURE_FLAGS += -DVTK_WRAP_PYTHON=ON -DVTK_PYTHON_VERSION=3
  1565. endif
  1566. ifdef USE_OSMESA
  1567. VTK_CONFIGURE_FLAGS += -DVTK_OPENGL_HAS_OSMESA=ON -DVTK_USE_SYSTEM_GLEW=ON -DVTK_USE_OFFSCREEN=ON -DVTK_USE_X=OFF
  1568. endif
  1569. .fetch-vtk-$(VTK_VERSION):
  1570. @$(RM) $(VTK_TARBALL)
  1571. $(WGET) -O $(VTK_TARBALL) $(VTK_TARBALL_URL)
  1572. @echo '$(VTK_TARBALL_SHA256) $(VTK_TARBALL)' | $(SHA256SUM)
  1573. @$(TOUCH) $@
  1574. fetch-vtk: .fetch-vtk-$(VTK_VERSION)
  1575. .extract-vtk-$(VTK_VERSION): .fetch-vtk-$(VTK_VERSION)
  1576. $(RM) $(VTK_SOURCE_DIR)
  1577. $(TAR) -xzf $(VTK_TARBALL)
  1578. @$(TOUCH) $@
  1579. extract-vtk: .extract-vtk-$(VTK_VERSION)
  1580. .configure-vtk-$(VTK_VERSION): .extract-vtk-$(VTK_VERSION)
  1581. $(MKDIR) $(VTK_BUILD_DIR)
  1582. cd $(VTK_BUILD_DIR) && $(CMAKE) -DCMAKE_INSTALL_PREFIX=$(VTK_INSTALL_DIR) $(VTK_CONFIGURE_FLAGS) ..
  1583. @$(TOUCH) $@
  1584. configure-vtk: .configure-vtk-$(VTK_VERSION)
  1585. .build-vtk-$(VTK_VERSION): .configure-vtk-$(VTK_VERSION)
  1586. cd $(VTK_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  1587. @$(TOUCH) $@
  1588. build-vtk: .build-vtk-$(VTK_VERSION)
  1589. install-vtk: .build-vtk-$(VTK_VERSION)
  1590. cd $(VTK_BUILD_DIR) && $(MAKE) install
  1591. clean-vtk:
  1592. @$(RM) .build-vtk-$(VTK_VERSION)
  1593. @$(RM) .configure-vtk-$(VTK_VERSION)
  1594. @$(RM) .extract-vtk-$(VTK_VERSION)
  1595. $(RM) $(VTK_SOURCE_DIR)
  1596. distclean-vtk: clean-vtk
  1597. @$(RM) .fetch-vtk-$(VTK_VERSION)
  1598. $(RM) $(VTK_TARBALL)
  1599. env-vtk:
  1600. @echo 'export PATH="$(VTK_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  1601. @echo 'export CPATH="$(VTK_INSTALL_DIR)/include/vtk-8.0$${CPATH+:$$CPATH}"'
  1602. @echo 'export LIBRARY_PATH="$(VTK_INSTALL_DIR)/lib$${LIBRARY_PATH+:$$LIBRARY_PATH}"'
  1603. @echo 'export LD_LIBRARY_PATH="$(VTK_INSTALL_DIR)/lib$${LD_LIBRARY_PATH+:$$LD_LIBRARY_PATH}"'
  1604. @echo 'export PYTHONPATH="$(VTK_INSTALL_DIR)/lib/python3.6/site-packages$${PYTHONPATH+:$$PYTHONPATH}"'
  1605. #
  1606. # xcb-util
  1607. #
  1608. XCB_UTIL_VERSION = 0.3.9
  1609. XCB_UTIL_TARBALL = xcb-util-$(XCB_UTIL_VERSION).tar.bz2
  1610. XCB_UTIL_TARBALL_URL = http://xcb.freedesktop.org/dist/$(XCB_UTIL_TARBALL)
  1611. XCB_UTIL_TARBALL_SHA256 = c611259c0ab20fd76f79f48f4684843c18ea9c967eba78a45e8b3636315c18c4
  1612. XCB_UTIL_BUILD_DIR = xcb-util-$(XCB_UTIL_VERSION)
  1613. XCB_UTIL_INSTALL_DIR = $(CURDIR)/.xcb-util-$(XCB_UTIL_VERSION)
  1614. .fetch-xcb-util-$(XCB_UTIL_VERSION):
  1615. @$(RM) $(XCB_UTIL_TARBALL)
  1616. $(WGET) -O $(XCB_UTIL_TARBALL) $(XCB_UTIL_TARBALL_URL)
  1617. @echo '$(XCB_UTIL_TARBALL_SHA256) $(XCB_UTIL_TARBALL)' | $(SHA256SUM)
  1618. @$(TOUCH) $@
  1619. fetch-xcb-util: .fetch-xcb-util-$(XCB_UTIL_VERSION)
  1620. .extract-xcb-util-$(XCB_UTIL_VERSION): .fetch-xcb-util-$(XCB_UTIL_VERSION)
  1621. $(RM) $(XCB_UTIL_BUILD_DIR)
  1622. $(TAR) -xjf $(XCB_UTIL_TARBALL)
  1623. @$(TOUCH) $@
  1624. extract-xcb-util: .extract-xcb-util-$(XCB_UTIL_VERSION)
  1625. .configure-xcb-util-$(XCB_UTIL_VERSION): .extract-xcb-util-$(XCB_UTIL_VERSION)
  1626. cd $(XCB_UTIL_BUILD_DIR) && CFLAGS=-fPIC ./configure --prefix=$(XCB_UTIL_INSTALL_DIR) --disable-shared
  1627. @$(TOUCH) $@
  1628. configure-xcb-util: .configure-xcb-util-$(XCB_UTIL_VERSION)
  1629. .build-xcb-util-$(XCB_UTIL_VERSION): .configure-xcb-util-$(XCB_UTIL_VERSION)
  1630. cd $(XCB_UTIL_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  1631. @$(TOUCH) $@
  1632. build-xcb-util: .build-xcb-util-$(XCB_UTIL_VERSION)
  1633. .install-xcb-util-$(XCB_UTIL_VERSION): .build-xcb-util-$(XCB_UTIL_VERSION)
  1634. cd $(XCB_UTIL_BUILD_DIR) && $(MAKE) install
  1635. @$(TOUCH) $@
  1636. clean-xcb-util:
  1637. @$(RM) .build-xcb-util-$(XCB_UTIL_VERSION)
  1638. @$(RM) .configure-xcb-util-$(XCB_UTIL_VERSION)
  1639. @$(RM) .extract-xcb-util-$(XCB_UTIL_VERSION)
  1640. $(RM) $(XCB_UTIL_BUILD_DIR)
  1641. distclean-xcb-util: clean-xcb-util
  1642. @$(RM) .fetch-xcb-util-$(XCB_UTIL_VERSION)
  1643. $(RM) $(XCB_UTIL_TARBALL)
  1644. #
  1645. # xcb-util-wm
  1646. #
  1647. XCB_UTIL_WM_VERSION = 0.3.9
  1648. XCB_UTIL_WM_TARBALL = xcb-util-wm-$(XCB_UTIL_WM_VERSION).tar.bz2
  1649. XCB_UTIL_WM_TARBALL_URL = http://xcb.freedesktop.org/dist/$(XCB_UTIL_WM_TARBALL)
  1650. XCB_UTIL_WM_TARBALL_SHA256 = 038f9bdb917b1f6d98a164f57dfb32212a102d771ab6f03de49fef3786746030
  1651. XCB_UTIL_WM_BUILD_DIR = xcb-util-wm-$(XCB_UTIL_WM_VERSION)
  1652. XCB_UTIL_WM_INSTALL_DIR = $(CURDIR)/.xcb-util-wm-$(XCB_UTIL_WM_VERSION)
  1653. .fetch-xcb-util-wm-$(XCB_UTIL_WM_VERSION):
  1654. @$(RM) $(XCB_UTIL_WM_TARBALL)
  1655. $(WGET) -O $(XCB_UTIL_WM_TARBALL) $(XCB_UTIL_WM_TARBALL_URL)
  1656. @echo '$(XCB_UTIL_WM_TARBALL_SHA256) $(XCB_UTIL_WM_TARBALL)' | $(SHA256SUM)
  1657. @$(TOUCH) $@
  1658. fetch-xcb-util-wm: .fetch-xcb-util-wm-$(XCB_UTIL_WM_VERSION)
  1659. .extract-xcb-util-wm-$(XCB_UTIL_WM_VERSION): .fetch-xcb-util-wm-$(XCB_UTIL_WM_VERSION)
  1660. $(RM) $(XCB_UTIL_WM_BUILD_DIR)
  1661. $(TAR) -xjf $(XCB_UTIL_WM_TARBALL)
  1662. @$(TOUCH) $@
  1663. extract-xcb-util-wm: .extract-xcb-util-wm-$(XCB_UTIL_WM_VERSION)
  1664. .configure-xcb-util-wm-$(XCB_UTIL_WM_VERSION): .extract-xcb-util-wm-$(XCB_UTIL_WM_VERSION)
  1665. cd $(XCB_UTIL_WM_BUILD_DIR) && CFLAGS=-fPIC ./configure --prefix=$(XCB_UTIL_WM_INSTALL_DIR) --disable-shared
  1666. @$(TOUCH) $@
  1667. configure-xcb-util-wm: .configure-xcb-util-wm-$(XCB_UTIL_WM_VERSION)
  1668. .build-xcb-util-wm-$(XCB_UTIL_WM_VERSION): .configure-xcb-util-wm-$(XCB_UTIL_WM_VERSION)
  1669. cd $(XCB_UTIL_WM_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  1670. @$(TOUCH) $@
  1671. build-xcb-util-wm: .build-xcb-util-wm-$(XCB_UTIL_WM_VERSION)
  1672. .install-xcb-util-wm-$(XCB_UTIL_WM_VERSION): .build-xcb-util-wm-$(XCB_UTIL_WM_VERSION)
  1673. cd $(XCB_UTIL_WM_BUILD_DIR) && $(MAKE) install
  1674. @$(TOUCH) $@
  1675. clean-xcb-util-wm:
  1676. @$(RM) .build-xcb-util-wm-$(XCB_UTIL_WM_VERSION)
  1677. @$(RM) .configure-xcb-util-wm-$(XCB_UTIL_WM_VERSION)
  1678. @$(RM) .extract-xcb-util-wm-$(XCB_UTIL_WM_VERSION)
  1679. $(RM) $(XCB_UTIL_WM_BUILD_DIR)
  1680. distclean-xcb-util-wm: clean-xcb-util-wm
  1681. @$(RM) .fetch-xcb-util-wm-$(XCB_UTIL_WM_VERSION)
  1682. $(RM) $(XCB_UTIL_WM_TARBALL)
  1683. #
  1684. # cairo
  1685. #
  1686. CAIRO_VERSION = 1.12.14
  1687. CAIRO_TARBALL = cairo-$(CAIRO_VERSION).tar.xz
  1688. CAIRO_TARBALL_URL = http://cairographics.org/releases/$(CAIRO_TARBALL)
  1689. CAIRO_TARBALL_SHA256 = 96d0d1e3f9b74d2ca3469ff187c5e5f25649b1ad35cf06f4f3a83847dff4ac13
  1690. CAIRO_BUILD_DIR = cairo-$(CAIRO_VERSION)
  1691. CAIRO_INSTALL_DIR = $(CURDIR)/.cairo-$(CAIRO_VERSION)
  1692. .fetch-cairo-$(CAIRO_VERSION):
  1693. @$(RM) $(CAIRO_TARBALL)
  1694. $(WGET) -O $(CAIRO_TARBALL) $(CAIRO_TARBALL_URL)
  1695. @echo '$(CAIRO_TARBALL_SHA256) $(CAIRO_TARBALL)' | $(SHA256SUM)
  1696. @$(TOUCH) $@
  1697. fetch-cairo: .fetch-cairo-$(CAIRO_VERSION)
  1698. .extract-cairo-$(CAIRO_VERSION): .fetch-cairo-$(CAIRO_VERSION)
  1699. $(RM) $(CAIRO_BUILD_DIR)
  1700. $(TAR) -xf $(CAIRO_TARBALL)
  1701. @$(TOUCH) $@
  1702. extract-cairo: .extract-cairo-$(CAIRO_VERSION)
  1703. .configure-cairo-$(CAIRO_VERSION): .extract-cairo-$(CAIRO_VERSION)
  1704. cd $(CAIRO_BUILD_DIR) && CFLAGS=-fPIC ./configure --prefix=$(CAIRO_INSTALL_DIR) --disable-shared
  1705. @$(TOUCH) $@
  1706. configure-cairo: .configure-cairo-$(CAIRO_VERSION)
  1707. .build-cairo-$(CAIRO_VERSION): .configure-cairo-$(CAIRO_VERSION)
  1708. cd $(CAIRO_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  1709. @$(TOUCH) $@
  1710. build-cairo: .build-cairo-$(CAIRO_VERSION)
  1711. .install-cairo-$(CAIRO_VERSION): .build-cairo-$(CAIRO_VERSION)
  1712. cd $(CAIRO_BUILD_DIR) && $(MAKE) install
  1713. @$(TOUCH) $@
  1714. clean-cairo:
  1715. @$(RM) .build-cairo-$(CAIRO_VERSION)
  1716. @$(RM) .configure-cairo-$(CAIRO_VERSION)
  1717. @$(RM) .extract-cairo-$(CAIRO_VERSION)
  1718. $(RM) $(CAIRO_BUILD_DIR)
  1719. distclean-cairo: clean-cairo
  1720. @$(RM) .fetch-cairo-$(CAIRO_VERSION)
  1721. $(RM) $(CAIRO_TARBALL)
  1722. #
  1723. # libxdg-basedir
  1724. #
  1725. LIBXDG_BASEDIR_VERSION = 1.1.1
  1726. LIBXDG_BASEDIR_TARBALL = libxdg-basedir_$(LIBXDG_BASEDIR_VERSION).orig.tar.gz
  1727. LIBXDG_BASEDIR_TARBALL_URL = http://snapshot.debian.org/archive/debian/20100801T035459Z/pool/main/libx/libxdg-basedir/$(LIBXDG_BASEDIR_TARBALL)
  1728. LIBXDG_BASEDIR_TARBALL_SHA256 = 2855b44619dc8d43ba7df995e538bf383f53b4276a26c7c26b7ec03c7b9be0ac
  1729. LIBXDG_BASEDIR_BUILD_DIR = libxdg-basedir-$(LIBXDG_BASEDIR_VERSION)
  1730. LIBXDG_BASEDIR_INSTALL_DIR = $(CURDIR)/.libxdg-basedir-$(LIBXDG_BASEDIR_VERSION)
  1731. .fetch-libxdg-basedir-$(LIBXDG_BASEDIR_VERSION):
  1732. @$(RM) $(LIBXDG_BASEDIR_TARBALL)
  1733. $(WGET) -O $(LIBXDG_BASEDIR_TARBALL) $(LIBXDG_BASEDIR_TARBALL_URL)
  1734. @echo '$(LIBXDG_BASEDIR_TARBALL_SHA256) $(LIBXDG_BASEDIR_TARBALL)' | $(SHA256SUM)
  1735. @$(TOUCH) $@
  1736. fetch-libxdg-basedir: .fetch-libxdg-basedir-$(LIBXDG_BASEDIR_VERSION)
  1737. .extract-libxdg-basedir-$(LIBXDG_BASEDIR_VERSION): .fetch-libxdg-basedir-$(LIBXDG_BASEDIR_VERSION)
  1738. $(RM) $(LIBXDG_BASEDIR_BUILD_DIR)
  1739. $(TAR) -xzf $(LIBXDG_BASEDIR_TARBALL)
  1740. @$(TOUCH) $@
  1741. extract-libxdg-basedir: .extract-libxdg-basedir-$(LIBXDG_BASEDIR_VERSION)
  1742. .configure-libxdg-basedir-$(LIBXDG_BASEDIR_VERSION): .extract-libxdg-basedir-$(LIBXDG_BASEDIR_VERSION)
  1743. cd $(LIBXDG_BASEDIR_BUILD_DIR) && CFLAGS=-fPIC ./configure --prefix=$(LIBXDG_BASEDIR_INSTALL_DIR) --disable-shared
  1744. @$(TOUCH) $@
  1745. configure-libxdg-basedir: .configure-libxdg-basedir-$(LIBXDG_BASEDIR_VERSION)
  1746. .build-libxdg-basedir-$(LIBXDG_BASEDIR_VERSION): .configure-libxdg-basedir-$(LIBXDG_BASEDIR_VERSION)
  1747. cd $(LIBXDG_BASEDIR_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  1748. @$(TOUCH) $@
  1749. build-libxdg-basedir: .build-libxdg-basedir-$(LIBXDG_BASEDIR_VERSION)
  1750. .install-libxdg-basedir-$(LIBXDG_BASEDIR_VERSION): .build-libxdg-basedir-$(LIBXDG_BASEDIR_VERSION)
  1751. cd $(LIBXDG_BASEDIR_BUILD_DIR) && $(MAKE) install
  1752. @$(TOUCH) $@
  1753. clean-libxdg-basedir:
  1754. @$(RM) .build-libxdg-basedir-$(LIBXDG_BASEDIR_VERSION)
  1755. @$(RM) .configure-libxdg-basedir-$(LIBXDG_BASEDIR_VERSION)
  1756. @$(RM) .extract-libxdg-basedir-$(LIBXDG_BASEDIR_VERSION)
  1757. $(RM) $(LIBXDG_BASEDIR_BUILD_DIR)
  1758. distclean-libxdg-basedir: clean-libxdg-basedir
  1759. @$(RM) .fetch-libxdg-basedir-$(LIBXDG_BASEDIR_VERSION)
  1760. $(RM) $(LIBXDG_BASEDIR_TARBALL)
  1761. #
  1762. # imlib2
  1763. #
  1764. IMLIB2_VERSION = 1.4.5
  1765. IMLIB2_TARBALL = imlib2-$(IMLIB2_VERSION).tar.bz2
  1766. IMLIB2_TARBALL_URL = http://sourceforge.net/projects/enlightenment/files/imlib2-src/$(IMLIB2_VERSION)/$(IMLIB2_TARBALL)
  1767. IMLIB2_TARBALL_SHA256 = 24700d93931838d2149cc2b4b58b9355cc81ec11d297f101a98dbb8d1c5c945a
  1768. IMLIB2_BUILD_DIR = imlib2-$(IMLIB2_VERSION)
  1769. IMLIB2_INSTALL_DIR = $(CURDIR)/.imlib2-$(IMLIB2_VERSION)
  1770. .fetch-imlib2-$(IMLIB2_VERSION):
  1771. @$(RM) $(IMLIB2_TARBALL)
  1772. $(WGET) -O $(IMLIB2_TARBALL) $(IMLIB2_TARBALL_URL)
  1773. @echo '$(IMLIB2_TARBALL_SHA256) $(IMLIB2_TARBALL)' | $(SHA256SUM)
  1774. @$(TOUCH) $@
  1775. fetch-imlib2: .fetch-imlib2-$(IMLIB2_VERSION)
  1776. .extract-imlib2-$(IMLIB2_VERSION): .fetch-imlib2-$(IMLIB2_VERSION)
  1777. $(RM) $(IMLIB2_BUILD_DIR)
  1778. $(TAR) -xjf $(IMLIB2_TARBALL)
  1779. cd $(IMLIB2_BUILD_DIR) && $(SED) -i 's# $$(top_builddir)/src/lib/libImlib2.la##' src/modules/filters/Makefile.am src/modules/loaders/Makefile.am
  1780. @$(TOUCH) $@
  1781. extract-imlib2: .extract-imlib2-$(IMLIB2_VERSION)
  1782. .configure-imlib2-$(IMLIB2_VERSION): .extract-imlib2-$(IMLIB2_VERSION)
  1783. cd $(IMLIB2_BUILD_DIR) && autoreconf -f -i
  1784. cd $(IMLIB2_BUILD_DIR) && CFLAGS=-fPIC ./configure --prefix=$(AWESOME_INSTALL_DIR) --enable-shared --enable-static
  1785. @$(TOUCH) $@
  1786. configure-imlib2: .configure-imlib2-$(IMLIB2_VERSION)
  1787. .build-imlib2-$(IMLIB2_VERSION): .configure-imlib2-$(IMLIB2_VERSION)
  1788. cd $(IMLIB2_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  1789. @$(TOUCH) $@
  1790. build-imlib2: .build-imlib2-$(IMLIB2_VERSION)
  1791. .install-imlib2-$(IMLIB2_VERSION): .build-imlib2-$(IMLIB2_VERSION)
  1792. cd $(IMLIB2_BUILD_DIR) && $(MAKE) install DESTDIR=$(IMLIB2_INSTALL_DIR)
  1793. $(RM) $(IMLIB2_INSTALL_DIR)$(AWESOME_INSTALL_DIR)/lib/libImlib2.so
  1794. @$(TOUCH) $@
  1795. clean-imlib2:
  1796. @$(RM) .build-imlib2-$(IMLIB2_VERSION)
  1797. @$(RM) .configure-imlib2-$(IMLIB2_VERSION)
  1798. @$(RM) .extract-imlib2-$(IMLIB2_VERSION)
  1799. $(RM) $(IMLIB2_BUILD_DIR)
  1800. distclean-imlib2: clean-imlib2
  1801. @$(RM) .fetch-imlib2-$(IMLIB2_VERSION)
  1802. $(RM) $(IMLIB2_TARBALL)
  1803. #
  1804. # libev
  1805. #
  1806. LIBEV_VERSION = 4.24
  1807. LIBEV_TARBALL = libev-$(LIBEV_VERSION).tar.gz
  1808. LIBEV_TARBALL_URL = http://distfiles.gentoo.org/distfiles/$(LIBEV_TARBALL)
  1809. LIBEV_TARBALL_SHA256 = 973593d3479abdf657674a55afe5f78624b0e440614e2b8cb3a07f16d4d7f821
  1810. LIBEV_BUILD_DIR = libev-$(LIBEV_VERSION)
  1811. LIBEV_INSTALL_DIR = $(CURDIR)/.libev-$(LIBEV_VERSION)
  1812. .fetch-libev-$(LIBEV_VERSION):
  1813. @$(RM) $(LIBEV_TARBALL)
  1814. $(WGET) -O $(LIBEV_TARBALL) $(LIBEV_TARBALL_URL)
  1815. @echo '$(LIBEV_TARBALL_SHA256) $(LIBEV_TARBALL)' | $(SHA256SUM)
  1816. @$(TOUCH) $@
  1817. fetch-libev: .fetch-libev-$(LIBEV_VERSION)
  1818. .extract-libev-$(LIBEV_VERSION): .fetch-libev-$(LIBEV_VERSION)
  1819. $(RM) $(LIBEV_BUILD_DIR)
  1820. $(TAR) -xzf $(LIBEV_TARBALL)
  1821. @$(TOUCH) $@
  1822. extract-libev: .extract-libev-$(LIBEV_VERSION)
  1823. .configure-libev-$(LIBEV_VERSION): .extract-libev-$(LIBEV_VERSION)
  1824. cd $(LIBEV_BUILD_DIR) && CFLAGS=-fPIC ./configure --prefix=$(LIBEV_INSTALL_DIR) --disable-shared
  1825. @$(TOUCH) $@
  1826. configure-libev: .configure-libev-$(LIBEV_VERSION)
  1827. .build-libev-$(LIBEV_VERSION): .configure-libev-$(LIBEV_VERSION)
  1828. cd $(LIBEV_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  1829. @$(TOUCH) $@
  1830. build-libev: .build-libev-$(LIBEV_VERSION)
  1831. .install-libev-$(LIBEV_VERSION): .build-libev-$(LIBEV_VERSION)
  1832. cd $(LIBEV_BUILD_DIR) && $(MAKE) install
  1833. @$(TOUCH) $@
  1834. clean-libev:
  1835. @$(RM) .build-libev-$(LIBEV_VERSION)
  1836. @$(RM) .configure-libev-$(LIBEV_VERSION)
  1837. @$(RM) .extract-libev-$(LIBEV_VERSION)
  1838. $(RM) $(LIBEV_BUILD_DIR)
  1839. distclean-libev: clean-libev
  1840. @$(RM) .fetch-libev-$(LIBEV_VERSION)
  1841. $(RM) $(LIBEV_TARBALL)
  1842. #
  1843. # asciidoc
  1844. #
  1845. ASCIIDOC_VERSION = 8.6.8
  1846. ASCIIDOC_TARBALL = asciidoc-$(ASCIIDOC_VERSION).tar.gz
  1847. ASCIIDOC_TARBALL_URL = http://sourceforge.net/projects/asciidoc/files/asciidoc/$(ASCIIDOC_VERSION)/$(ASCIIDOC_TARBALL)
  1848. ASCIIDOC_TARBALL_SHA256 = ffb67f59dccaf6f15db72fcd04fdf21a2f9b703d31f94fcd0c49a424a9fcfbc4
  1849. ASCIIDOC_BUILD_DIR = asciidoc-$(ASCIIDOC_VERSION)
  1850. ASCIIDOC_INSTALL_DIR = $(CURDIR)/.asciidoc-$(ASCIIDOC_VERSION)
  1851. .fetch-asciidoc-$(ASCIIDOC_VERSION):
  1852. @$(RM) $(ASCIIDOC_TARBALL)
  1853. $(WGET) -O $(ASCIIDOC_TARBALL) $(ASCIIDOC_TARBALL_URL)
  1854. @echo '$(ASCIIDOC_TARBALL_SHA256) $(ASCIIDOC_TARBALL)' | $(SHA256SUM)
  1855. @$(TOUCH) $@
  1856. fetch-asciidoc: .fetch-asciidoc-$(ASCIIDOC_VERSION)
  1857. .extract-asciidoc-$(ASCIIDOC_VERSION): .fetch-asciidoc-$(ASCIIDOC_VERSION)
  1858. $(RM) $(ASCIIDOC_BUILD_DIR)
  1859. $(TAR) -xzf $(ASCIIDOC_TARBALL)
  1860. @$(TOUCH) $@
  1861. extract-asciidoc: .extract-asciidoc-$(ASCIIDOC_VERSION)
  1862. .configure-asciidoc-$(ASCIIDOC_VERSION): .extract-asciidoc-$(ASCIIDOC_VERSION)
  1863. cd $(ASCIIDOC_BUILD_DIR) && CFLAGS=-fPIC ./configure --prefix=$(ASCIIDOC_INSTALL_DIR)
  1864. @$(TOUCH) $@
  1865. configure-asciidoc: .configure-asciidoc-$(ASCIIDOC_VERSION)
  1866. .build-asciidoc-$(ASCIIDOC_VERSION): .configure-asciidoc-$(ASCIIDOC_VERSION)
  1867. cd $(ASCIIDOC_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  1868. @$(TOUCH) $@
  1869. build-asciidoc: .build-asciidoc-$(ASCIIDOC_VERSION)
  1870. .install-asciidoc-$(ASCIIDOC_VERSION): .build-asciidoc-$(ASCIIDOC_VERSION)
  1871. cd $(ASCIIDOC_BUILD_DIR) && $(MAKE) install
  1872. @$(TOUCH) $@
  1873. clean-asciidoc:
  1874. @$(RM) .build-asciidoc-$(ASCIIDOC_VERSION)
  1875. @$(RM) .configure-asciidoc-$(ASCIIDOC_VERSION)
  1876. @$(RM) .extract-asciidoc-$(ASCIIDOC_VERSION)
  1877. $(RM) $(ASCIIDOC_BUILD_DIR)
  1878. distclean-asciidoc: clean-asciidoc
  1879. @$(RM) .fetch-asciidoc-$(ASCIIDOC_VERSION)
  1880. $(RM) $(ASCIIDOC_TARBALL)
  1881. #
  1882. # awesome window manager
  1883. #
  1884. AWESOME_VERSION = 3.4.15
  1885. AWESOME_TARBALL = awesome-$(AWESOME_VERSION).tar.bz2
  1886. AWESOME_TARBALL_URL = https://github.com/awesomeWM/awesome-releases/raw/master/$(AWESOME_TARBALL)
  1887. AWESOME_TARBALL_SHA256 = 4207f5cbed25d0e7ab35157165d923c2ccf04fded5b3d5fc130134ce9ed5ddfd
  1888. AWESOME_BUILD_DIR = awesome-$(AWESOME_VERSION)
  1889. AWESOME_INSTALL_DIR = $(PREFIX)/awesome-$(AWESOME_VERSION)
  1890. .fetch-awesome-$(AWESOME_VERSION):
  1891. @$(RM) $(AWESOME_TARBALL)
  1892. $(WGET) -O $(AWESOME_TARBALL) $(AWESOME_TARBALL_URL)
  1893. @echo '$(AWESOME_TARBALL_SHA256) $(AWESOME_TARBALL)' | $(SHA256SUM)
  1894. @$(TOUCH) $@
  1895. fetch-awesome: .fetch-awesome-$(AWESOME_VERSION)
  1896. .extract-awesome-$(AWESOME_VERSION): .fetch-awesome-$(AWESOME_VERSION)
  1897. $(RM) $(AWESOME_BUILD_DIR)
  1898. $(TAR) -xjf $(AWESOME_TARBALL)
  1899. @$(TOUCH) $@
  1900. extract-awesome: .extract-awesome-$(AWESOME_VERSION)
  1901. .build-awesome-$(AWESOME_VERSION): .extract-awesome-$(AWESOME_VERSION) .install-libxdg-basedir-$(LIBXDG_BASEDIR_VERSION) .install-imlib2-$(IMLIB2_VERSION) .install-libev-$(LIBEV_VERSION)
  1902. cd $(AWESOME_BUILD_DIR) && PKG_CONFIG_PATH=$(LIBXDG_BASEDIR_INSTALL_DIR)/lib/pkgconfig:$(IMLIB2_INSTALL_DIR)$(AWESOME_INSTALL_DIR)/lib/pkgconfig CMAKE_PREFIX_PATH=$(LIBEV_INSTALL_DIR) CPATH=$(IMLIB2_INSTALL_DIR)$(AWESOME_INSTALL_DIR)/include:$(LIBEV_INSTALL_DIR)/include LIBRARY_PATH=$(IMLIB2_INSTALL_DIR)$(AWESOME_INSTALL_DIR)/lib $(MAKE) CMAKE_ARGS='-DCMAKE_INSTALL_PREFIX=$(AWESOME_INSTALL_DIR) -DCMAKE_EXE_LINKER_FLAGS="-lXext -ldl -lfreetype"' MAKEFLAGS=$(PARALLEL_BUILD_FLAGS)
  1903. @$(TOUCH) $@
  1904. build-awesome: .build-awesome-$(AWESOME_VERSION)
  1905. install-awesome: .build-awesome-$(AWESOME_VERSION)
  1906. cd $(AWESOME_BUILD_DIR) && $(MAKE) install
  1907. $(MKDIR) $(AWESOME_INSTALL_DIR)/lib/imlib2/filters $(AWESOME_INSTALL_DIR)/lib/imlib2/loaders
  1908. cd $(IMLIB2_INSTALL_DIR)$(AWESOME_INSTALL_DIR)/lib/imlib2/filters && install -m 644 *.so $(AWESOME_INSTALL_DIR)/lib/imlib2/filters
  1909. cd $(IMLIB2_INSTALL_DIR)$(AWESOME_INSTALL_DIR)/lib/imlib2/loaders && install -m 644 *.so $(AWESOME_INSTALL_DIR)/lib/imlib2/loaders
  1910. clean-awesome:
  1911. @$(RM) .build-awesome-$(AWESOME_VERSION)
  1912. @$(RM) .configure-awesome-$(AWESOME_VERSION)
  1913. @$(RM) .extract-awesome-$(AWESOME_VERSION)
  1914. $(RM) $(AWESOME_BUILD_DIR)
  1915. distclean-awesome: clean-awesome
  1916. @$(RM) .fetch-awesome-$(AWESOME_VERSION)
  1917. $(RM) $(AWESOME_TARBALL)
  1918. env-awesome:
  1919. @echo 'export PATH="$(AWESOME_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  1920. @echo 'export MANPATH="$(AWESOME_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  1921. #
  1922. # Taskwarrior
  1923. #
  1924. TASK_VERSION = 2.5.1
  1925. TASK_TARBALL = task-$(TASK_VERSION).tar.gz
  1926. TASK_TARBALL_URL = http://taskwarrior.org/download/$(TASK_TARBALL)
  1927. TASK_TARBALL_SHA256 = d87bcee58106eb8a79b850e9abc153d98b79e00d50eade0d63917154984f2a15
  1928. TASK_BUILD_DIR = task-$(TASK_VERSION)
  1929. TASK_INSTALL_DIR = $(PREFIX)/task-$(TASK_VERSION)
  1930. .fetch-task-$(TASK_VERSION):
  1931. @$(RM) $(TASK_TARBALL)
  1932. $(WGET) -O $(TASK_TARBALL) $(TASK_TARBALL_URL)
  1933. @echo '$(TASK_TARBALL_SHA256) $(TASK_TARBALL)' | $(SHA256SUM)
  1934. @$(TOUCH) $@
  1935. fetch-task: .fetch-task-$(TASK_VERSION)
  1936. .extract-task-$(TASK_VERSION): .fetch-task-$(TASK_VERSION)
  1937. $(RM) $(TASK_BUILD_DIR)
  1938. $(TAR) -xzf $(TASK_TARBALL)
  1939. @$(TOUCH) $@
  1940. extract-task: .extract-task-$(TASK_VERSION)
  1941. .configure-task-$(TASK_VERSION): .extract-task-$(TASK_VERSION)
  1942. cd $(TASK_BUILD_DIR) && $(CMAKE) -DCMAKE_INSTALL_PREFIX=$(TASK_INSTALL_DIR) .
  1943. @$(TOUCH) $@
  1944. configure-task: .configure-task-$(TASK_VERSION)
  1945. .build-task-$(TASK_VERSION): .configure-task-$(TASK_VERSION)
  1946. cd $(TASK_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  1947. @$(TOUCH) $@
  1948. build-task: .build-task-$(TASK_VERSION)
  1949. install-task: .build-task-$(TASK_VERSION)
  1950. cd $(TASK_BUILD_DIR) && $(MAKE) install
  1951. clean-task:
  1952. @$(RM) .build-task-$(TASK_VERSION)
  1953. @$(RM) .configure-task-$(TASK_VERSION)
  1954. @$(RM) .extract-task-$(TASK_VERSION)
  1955. $(RM) $(TASK_BUILD_DIR)
  1956. distclean-task: clean-task
  1957. @$(RM) .fetch-task-$(TASK_VERSION)
  1958. $(RM) $(TASK_TARBALL)
  1959. env-task:
  1960. @echo 'export PATH="$(TASK_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  1961. @echo 'export MANPATH="$(TASK_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  1962. #
  1963. # bash-completion
  1964. #
  1965. BASH_COMPLETION_VERSION = 2.1
  1966. BASH_COMPLETION_TARBALL = bash-completion-$(BASH_COMPLETION_VERSION).tar.bz2
  1967. BASH_COMPLETION_TARBALL_URL = http://bash-completion.alioth.debian.org/files/$(BASH_COMPLETION_TARBALL)
  1968. BASH_COMPLETION_TARBALL_SHA256 = 2b606804a7d5f823380a882e0f7b6c8a37b0e768e72c3d4107c51fbe8a46ae4f
  1969. BASH_COMPLETION_BUILD_DIR = bash-completion-$(BASH_COMPLETION_VERSION)
  1970. BASH_COMPLETION_INSTALL_DIR = $(PREFIX)/bash-completion-$(BASH_COMPLETION_VERSION)
  1971. .fetch-bash-completion-$(BASH_COMPLETION_VERSION):
  1972. @$(RM) $(BASH_COMPLETION_TARBALL)
  1973. $(WGET) -O $(BASH_COMPLETION_TARBALL) $(BASH_COMPLETION_TARBALL_URL)
  1974. @echo '$(BASH_COMPLETION_TARBALL_SHA256) $(BASH_COMPLETION_TARBALL)' | $(SHA256SUM)
  1975. @$(TOUCH) $@
  1976. fetch-bash-completion: .fetch-bash-completion-$(BASH_COMPLETION_VERSION)
  1977. .extract-bash-completion-$(BASH_COMPLETION_VERSION): .fetch-bash-completion-$(BASH_COMPLETION_VERSION)
  1978. $(RM) $(BASH_COMPLETION_BUILD_DIR)
  1979. $(TAR) -xjf $(BASH_COMPLETION_TARBALL)
  1980. @$(TOUCH) $@
  1981. extract-bash-completion: .extract-bash-completion-$(BASH_COMPLETION_VERSION)
  1982. .configure-bash-completion-$(BASH_COMPLETION_VERSION): .extract-bash-completion-$(BASH_COMPLETION_VERSION)
  1983. cd $(BASH_COMPLETION_BUILD_DIR) && ./configure --prefix=$(BASH_COMPLETION_INSTALL_DIR)
  1984. @$(TOUCH) $@
  1985. configure-bash-completion: .configure-bash-completion-$(BASH_COMPLETION_VERSION)
  1986. .build-bash-completion-$(BASH_COMPLETION_VERSION): .configure-bash-completion-$(BASH_COMPLETION_VERSION)
  1987. cd $(BASH_COMPLETION_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  1988. @$(TOUCH) $@
  1989. build-bash-completion: .build-bash-completion-$(BASH_COMPLETION_VERSION)
  1990. install-bash-completion: .build-bash-completion-$(BASH_COMPLETION_VERSION)
  1991. cd $(BASH_COMPLETION_BUILD_DIR) && $(MAKE) install
  1992. clean-bash-completion:
  1993. @$(RM) .build-bash-completion-$(BASH_COMPLETION_VERSION)
  1994. @$(RM) .configure-bash-completion-$(BASH_COMPLETION_VERSION)
  1995. @$(RM) .extract-bash-completion-$(BASH_COMPLETION_VERSION)
  1996. $(RM) $(BASH_COMPLETION_BUILD_DIR)
  1997. distclean-bash-completion: clean-bash-completion
  1998. @$(RM) .fetch-bash-completion-$(BASH_COMPLETION_VERSION)
  1999. $(RM) $(BASH_COMPLETION_TARBALL)
  2000. env-bash-completion:
  2001. @echo 'export BASH_COMPLETION="${BASH_COMPLETION_INSTALL_DIR}/share/bash-completion/bash_completion"'
  2002. #
  2003. # perl-x11-protocol
  2004. #
  2005. PERL_X11_PROTOCOL_VERSION = 0.56
  2006. PERL_X11_PROTOCOL_TARBALL = X11-Protocol-$(PERL_X11_PROTOCOL_VERSION).tar.gz
  2007. PERL_X11_PROTOCOL_TARBALL_URL = http://search.cpan.org/CPAN/authors/id/S/SM/SMCCAM/$(PERL_X11_PROTOCOL_TARBALL)
  2008. PERL_X11_PROTOCOL_TARBALL_SHA256 = de96dd6c7c1f25f3287aa7af64902bf84acaaa8e0c3bb76aa1676367e04a08b7
  2009. PERL_X11_PROTOCOL_BUILD_DIR = X11-Protocol-$(PERL_X11_PROTOCOL_VERSION)
  2010. PERL_X11_PROTOCOL_INSTALL_DIR = $(CLUSTERSSH_INSTALL_DIR)
  2011. .fetch-perl-x11-protocol-$(PERL_X11_PROTOCOL_VERSION):
  2012. @$(RM) $(PERL_X11_PROTOCOL_TARBALL)
  2013. $(WGET) -O $(PERL_X11_PROTOCOL_TARBALL) $(PERL_X11_PROTOCOL_TARBALL_URL)
  2014. @echo '$(PERL_X11_PROTOCOL_TARBALL_SHA256) $(PERL_X11_PROTOCOL_TARBALL)' | $(SHA256SUM)
  2015. @$(TOUCH) $@
  2016. fetch-perl-x11-protocol: .fetch-perl-x11-protocol-$(PERL_X11_PROTOCOL_VERSION)
  2017. .extract-perl-x11-protocol-$(PERL_X11_PROTOCOL_VERSION): .fetch-perl-x11-protocol-$(PERL_X11_PROTOCOL_VERSION)
  2018. $(RM) $(PERL_X11_PROTOCOL_BUILD_DIR)
  2019. $(TAR) -xzf $(PERL_X11_PROTOCOL_TARBALL)
  2020. @$(TOUCH) $@
  2021. extract-perl-x11-protocol: .extract-perl-x11-protocol-$(PERL_X11_PROTOCOL_VERSION)
  2022. .configure-perl-x11-protocol-$(PERL_X11_PROTOCOL_VERSION): .extract-perl-x11-protocol-$(PERL_X11_PROTOCOL_VERSION)
  2023. cd $(PERL_X11_PROTOCOL_BUILD_DIR) && $(PERL) Makefile.PL PREFIX=$(PERL_X11_PROTOCOL_INSTALL_DIR) LIB=$(PERL_X11_PROTOCOL_INSTALL_DIR)/lib/perl5
  2024. @$(TOUCH) $@
  2025. configure-perl-x11-protocol: .configure-perl-x11-protocol-$(PERL_X11_PROTOCOL_VERSION)
  2026. .build-perl-x11-protocol-$(PERL_X11_PROTOCOL_VERSION): .configure-perl-x11-protocol-$(PERL_X11_PROTOCOL_VERSION)
  2027. cd $(PERL_X11_PROTOCOL_BUILD_DIR) && $(MAKE) PREFIX=$(PERL_X11_PROTOCOL_INSTALL_DIR) $(PARALLEL_BUILD_FLAGS)
  2028. @$(TOUCH) $@
  2029. build-perl-x11-protocol: .build-perl-x11-protocol-$(PERL_X11_PROTOCOL_VERSION)
  2030. .install-perl-x11-protocol-$(PERL_X11_PROTOCOL_VERSION): .build-perl-x11-protocol-$(PERL_X11_PROTOCOL_VERSION)
  2031. cd $(PERL_X11_PROTOCOL_BUILD_DIR) && $(MAKE) PREFIX=$(PERL_X11_PROTOCOL_INSTALL_DIR) install
  2032. clean-perl-x11-protocol:
  2033. @$(RM) .build-perl-x11-protocol-$(PERL_X11_PROTOCOL_VERSION)
  2034. @$(RM) .configure-perl-x11-protocol-$(PERL_X11_PROTOCOL_VERSION)
  2035. @$(RM) .extract-perl-x11-protocol-$(PERL_X11_PROTOCOL_VERSION)
  2036. $(RM) $(PERL_X11_PROTOCOL_BUILD_DIR)
  2037. distclean-perl-x11-protocol: clean-perl-x11-protocol
  2038. @$(RM) .fetch-perl-x11-protocol-$(PERL_X11_PROTOCOL_VERSION)
  2039. $(RM) $(PERL_X11_PROTOCOL_TARBALL)
  2040. #
  2041. # perl-tk
  2042. #
  2043. PERL_TK_VERSION = 804.031
  2044. PERL_TK_TARBALL = Tk-$(PERL_TK_VERSION).tar.gz
  2045. PERL_TK_TARBALL_URL = http://search.cpan.org/CPAN/authors/id/S/SR/SREZIC/$(PERL_TK_TARBALL)
  2046. PERL_TK_TARBALL_SHA256 = ce8d857a82a77f6bad3f94c1a8c3e3f32d5489bfb41619c3b8cae00103428054
  2047. PERL_TK_BUILD_DIR = Tk-$(PERL_TK_VERSION)
  2048. PERL_TK_INSTALL_DIR = $(CLUSTERSSH_INSTALL_DIR)
  2049. .fetch-perl-tk-$(PERL_TK_VERSION):
  2050. @$(RM) $(PERL_TK_TARBALL)
  2051. $(WGET) -O $(PERL_TK_TARBALL) $(PERL_TK_TARBALL_URL)
  2052. @echo '$(PERL_TK_TARBALL_SHA256) $(PERL_TK_TARBALL)' | $(SHA256SUM)
  2053. @$(TOUCH) $@
  2054. fetch-perl-tk: .fetch-perl-tk-$(PERL_TK_VERSION)
  2055. .extract-perl-tk-$(PERL_TK_VERSION): .fetch-perl-tk-$(PERL_TK_VERSION)
  2056. $(RM) $(PERL_TK_BUILD_DIR)
  2057. $(TAR) -xzf $(PERL_TK_TARBALL)
  2058. @$(TOUCH) $@
  2059. extract-perl-tk: .extract-perl-tk-$(PERL_TK_VERSION)
  2060. .configure-perl-tk-$(PERL_TK_VERSION): .extract-perl-tk-$(PERL_TK_VERSION)
  2061. cd $(PERL_TK_BUILD_DIR) && $(PERL) Makefile.PL PREFIX=$(PERL_TK_INSTALL_DIR) LIB=$(PERL_TK_INSTALL_DIR)/lib/perl5
  2062. @$(TOUCH) $@
  2063. configure-perl-tk: .configure-perl-tk-$(PERL_TK_VERSION)
  2064. .build-perl-tk-$(PERL_TK_VERSION): .configure-perl-tk-$(PERL_TK_VERSION)
  2065. cd $(PERL_TK_BUILD_DIR) && $(MAKE) PREFIX=$(PERL_TK_INSTALL_DIR) $(PARALLEL_BUILD_FLAGS)
  2066. @$(TOUCH) $@
  2067. build-perl-tk: .build-perl-tk-$(PERL_TK_VERSION)
  2068. .install-perl-tk-$(PERL_TK_VERSION): .build-perl-tk-$(PERL_TK_VERSION) .install-perl-x11-protocol-$(PERL_X11_PROTOCOL_VERSION)
  2069. cd $(PERL_TK_BUILD_DIR) && $(MAKE) PREFIX=$(PERL_TK_INSTALL_DIR) install
  2070. clean-perl-tk:
  2071. @$(RM) .build-perl-tk-$(PERL_TK_VERSION)
  2072. @$(RM) .configure-perl-tk-$(PERL_TK_VERSION)
  2073. @$(RM) .extract-perl-tk-$(PERL_TK_VERSION)
  2074. $(RM) $(PERL_TK_BUILD_DIR)
  2075. distclean-perl-tk: clean-perl-tk
  2076. @$(RM) .fetch-perl-tk-$(PERL_TK_VERSION)
  2077. $(RM) $(PERL_TK_TARBALL)
  2078. #
  2079. # Cluster SSH
  2080. #
  2081. CLUSTERSSH_VERSION = 3.28
  2082. CLUSTERSSH_TARBALL = clusterssh-$(CLUSTERSSH_VERSION).tar.gz
  2083. CLUSTERSSH_TARBALL_URL = http://downloads.sourceforge.net/project/clusterssh/1.%20ClusterSSH%20Series%203/$(CLUSTERSSH_VERSION)/$(CLUSTERSSH_TARBALL)
  2084. CLUSTERSSH_TARBALL_SHA256 = 27e7c0feb652d980229c5fe07f9d6bfe4eb1e3becafaf0e82a5409a9f67d8faf
  2085. CLUSTERSSH_BUILD_DIR = clusterssh-$(CLUSTERSSH_VERSION)
  2086. CLUSTERSSH_INSTALL_DIR = $(PREFIX)/clusterssh-$(CLUSTERSSH_VERSION)
  2087. .fetch-clusterssh-$(CLUSTERSSH_VERSION):
  2088. @$(RM) $(CLUSTERSSH_TARBALL)
  2089. $(WGET) -O $(CLUSTERSSH_TARBALL) $(CLUSTERSSH_TARBALL_URL)
  2090. @echo '$(CLUSTERSSH_TARBALL_SHA256) $(CLUSTERSSH_TARBALL)' | $(SHA256SUM)
  2091. @$(TOUCH) $@
  2092. fetch-clusterssh: .fetch-clusterssh-$(CLUSTERSSH_VERSION)
  2093. .extract-clusterssh-$(CLUSTERSSH_VERSION): .fetch-clusterssh-$(CLUSTERSSH_VERSION)
  2094. $(RM) $(CLUSTERSSH_BUILD_DIR)
  2095. $(TAR) -xzf $(CLUSTERSSH_TARBALL)
  2096. @$(TOUCH) $@
  2097. extract-clusterssh: .extract-clusterssh-$(CLUSTERSSH_VERSION)
  2098. .configure-clusterssh-$(CLUSTERSSH_VERSION): .extract-clusterssh-$(CLUSTERSSH_VERSION)
  2099. cd $(CLUSTERSSH_BUILD_DIR) && ./configure --prefix=$(CLUSTERSSH_INSTALL_DIR)
  2100. @$(TOUCH) $@
  2101. configure-clusterssh: .configure-clusterssh-$(CLUSTERSSH_VERSION)
  2102. .build-clusterssh-$(CLUSTERSSH_VERSION): .configure-clusterssh-$(CLUSTERSSH_VERSION)
  2103. cd $(CLUSTERSSH_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  2104. @$(TOUCH) $@
  2105. build-clusterssh: .build-clusterssh-$(CLUSTERSSH_VERSION)
  2106. install-clusterssh: .build-clusterssh-$(CLUSTERSSH_VERSION) .install-perl-tk-$(PERL_TK_VERSION)
  2107. cd $(CLUSTERSSH_BUILD_DIR) && $(MAKE) install
  2108. clean-clusterssh:
  2109. @$(RM) .build-clusterssh-$(CLUSTERSSH_VERSION)
  2110. @$(RM) .configure-clusterssh-$(CLUSTERSSH_VERSION)
  2111. @$(RM) .extract-clusterssh-$(CLUSTERSSH_VERSION)
  2112. $(RM) $(CLUSTERSSH_BUILD_DIR)
  2113. distclean-clusterssh: clean-clusterssh
  2114. @$(RM) .fetch-clusterssh-$(CLUSTERSSH_VERSION)
  2115. $(RM) $(CLUSTERSSH_TARBALL)
  2116. env-clusterssh:
  2117. @echo 'export PATH="$(CLUSTERSSH_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  2118. @echo 'export MANPATH="$(CLUSTERSSH_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  2119. @echo 'export PERL5LIB="$(CLUSTERSSH_INSTALL_DIR)/lib/perl5$${PERL5LIB+:$$PERL5LIB}"'
  2120. #
  2121. # vlc
  2122. #
  2123. VLC_VERSION = 2.2.0
  2124. VLC_TARBALL = vlc-$(VLC_VERSION).tar.xz
  2125. VLC_TARBALL_URL = http://download.videolan.org/pub/videolan/vlc/$(VLC_VERSION)/$(VLC_TARBALL)
  2126. VLC_TARBALL_SHA256 = 5e0a27e248c47da723a696420aca3a4dd15cc3ed8cc81618d3f1dc8661b25517
  2127. VLC_BUILD_DIR = vlc-$(VLC_VERSION)
  2128. VLC_CONFIGURE_FLAGS = --disable-mad --disable-a52 --disable-opencv --without-kde-solid
  2129. VLC_INSTALL_DIR = $(PREFIX)/vlc-$(VLC_VERSION)
  2130. .fetch-vlc-$(VLC_VERSION):
  2131. @$(RM) $(VLC_TARBALL)
  2132. $(WGET) -O $(VLC_TARBALL) $(VLC_TARBALL_URL)
  2133. @echo '$(VLC_TARBALL_SHA256) $(VLC_TARBALL)' | $(SHA256SUM)
  2134. @$(TOUCH) $@
  2135. fetch-vlc: .fetch-vlc-$(VLC_VERSION)
  2136. .extract-vlc-$(VLC_VERSION): .fetch-vlc-$(VLC_VERSION)
  2137. $(RM) $(VLC_BUILD_DIR)
  2138. $(TAR) -xf $(VLC_TARBALL)
  2139. @$(TOUCH) $@
  2140. extract-vlc: .extract-vlc-$(VLC_VERSION)
  2141. .configure-vlc-$(VLC_VERSION): .extract-vlc-$(VLC_VERSION) .install-x264-$(X264_VERSION)
  2142. cd $(VLC_BUILD_DIR) && PKG_CONFIG_PATH="$(X264_INSTALL_DIR)/lib/pkgconfig:$(PKG_CONFIG_PATH)" ./configure --prefix=$(VLC_INSTALL_DIR) $(VLC_CONFIGURE_FLAGS)
  2143. @$(TOUCH) $@
  2144. configure-vlc: .configure-vlc-$(VLC_VERSION)
  2145. .build-vlc-$(VLC_VERSION): .configure-vlc-$(VLC_VERSION)
  2146. cd $(VLC_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  2147. @$(TOUCH) $@
  2148. build-vlc: .build-vlc-$(VLC_VERSION)
  2149. install-vlc: .build-vlc-$(VLC_VERSION)
  2150. cd $(VLC_BUILD_DIR) && $(MAKE) install
  2151. clean-vlc:
  2152. @$(RM) .build-vlc-$(VLC_VERSION)
  2153. @$(RM) .configure-vlc-$(VLC_VERSION)
  2154. @$(RM) .extract-vlc-$(VLC_VERSION)
  2155. $(RM) $(VLC_BUILD_DIR)
  2156. distclean-vlc: clean-vlc
  2157. @$(RM) .fetch-vlc-$(VLC_VERSION)
  2158. $(RM) $(VLC_TARBALL)
  2159. env-vlc:
  2160. @echo 'export PATH="$(VLC_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  2161. @echo 'export MANPATH="$(VLC_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  2162. #
  2163. # xkbcommon
  2164. #
  2165. XKBCOMMON_VERSION = 0.3.2
  2166. XKBCOMMON_TARBALL = libxkbcommon-$(XKBCOMMON_VERSION).tar.xz
  2167. XKBCOMMON_TARBALL_URL = http://xkbcommon.org/download/$(XKBCOMMON_TARBALL)
  2168. XKBCOMMON_TARBALL_SHA256 = cc378a47b01b00226ecf647b69e07df04091323846124b366cf835e5cdf5a88a
  2169. XKBCOMMON_BUILD_DIR = libxkbcommon-$(XKBCOMMON_VERSION)
  2170. XKBCOMMON_INSTALL_DIR = $(CURDIR)/.libxkbcommon-$(XKBCOMMON_VERSION)
  2171. .fetch-xkbcommon-$(XKBCOMMON_VERSION):
  2172. @$(RM) $(XKBCOMMON_TARBALL)
  2173. $(WGET) -O $(XKBCOMMON_TARBALL) $(XKBCOMMON_TARBALL_URL)
  2174. @echo '$(XKBCOMMON_TARBALL_SHA256) $(XKBCOMMON_TARBALL)' | $(SHA256SUM)
  2175. @$(TOUCH) $@
  2176. fetch-xkbcommon: .fetch-xkbcommon-$(XKBCOMMON_VERSION)
  2177. .extract-xkbcommon-$(XKBCOMMON_VERSION): .fetch-xkbcommon-$(XKBCOMMON_VERSION)
  2178. $(RM) $(XKBCOMMON_BUILD_DIR)
  2179. $(TAR) -xf $(XKBCOMMON_TARBALL)
  2180. @$(TOUCH) $@
  2181. extract-xkbcommon: .extract-xkbcommon-$(XKBCOMMON_VERSION)
  2182. .configure-xkbcommon-$(XKBCOMMON_VERSION): .extract-xkbcommon-$(XKBCOMMON_VERSION)
  2183. cd $(XKBCOMMON_BUILD_DIR) && CFLAGS=-fPIC ./configure --prefix=$(XKBCOMMON_INSTALL_DIR) --datadir=/usr/share --disable-shared
  2184. @$(TOUCH) $@
  2185. configure-xkbcommon: .configure-xkbcommon-$(XKBCOMMON_VERSION)
  2186. .build-xkbcommon-$(XKBCOMMON_VERSION): .configure-xkbcommon-$(XKBCOMMON_VERSION)
  2187. cd $(XKBCOMMON_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  2188. @$(TOUCH) $@
  2189. build-xkbcommon: .build-xkbcommon-$(XKBCOMMON_VERSION)
  2190. .install-xkbcommon-$(XKBCOMMON_VERSION): .build-xkbcommon-$(XKBCOMMON_VERSION)
  2191. cd $(XKBCOMMON_BUILD_DIR) && $(MAKE) install
  2192. @$(TOUCH) $@
  2193. clean-xkbcommon:
  2194. @$(RM) .build-xkbcommon-$(XKBCOMMON_VERSION)
  2195. @$(RM) .configure-xkbcommon-$(XKBCOMMON_VERSION)
  2196. @$(RM) .extract-xkbcommon-$(XKBCOMMON_VERSION)
  2197. $(RM) $(XKBCOMMON_BUILD_DIR)
  2198. distclean-xkbcommon: clean-xkbcommon
  2199. @$(RM) .fetch-xkbcommon-$(XKBCOMMON_VERSION)
  2200. $(RM) $(XKBCOMMON_TARBALL)
  2201. #
  2202. # i3lock
  2203. #
  2204. I3LOCK_VERSION = 2.5
  2205. I3LOCK_TARBALL = i3lock-$(I3LOCK_VERSION).tar.bz2
  2206. I3LOCK_TARBALL_URL = http://i3wm.org/i3lock/$(I3LOCK_TARBALL)
  2207. I3LOCK_TARBALL_SHA256 = ac2772c9e4fc13adb882cacaae13ccc381d6d4f154ffd538634a58e6369d0d77
  2208. I3LOCK_PATCH = i3lock-$(I3LOCK_VERSION).patch
  2209. I3LOCK_PATCH_SHA256 = 0ce1aa878fd67a39676d920a3a7235ffb0b2983429ca27e3bd22a16c59001e57
  2210. I3LOCK_BUILD_DIR = i3lock-$(I3LOCK_VERSION)
  2211. I3LOCK_INSTALL_DIR = $(PREFIX)/i3lock-$(I3LOCK_VERSION)
  2212. define I3LOCK_PATCH_FILE
  2213. --- src.orig/i3lock.c
  2214. +++ src/i3lock.c
  2215. @@ -601 +601 @@
  2216. - ret = pam_start("i3lock", username, &conv, &pam_handle);
  2217. + ret = pam_start("login", username, &conv, &pam_handle);
  2218. endef
  2219. export I3LOCK_PATCH_FILE
  2220. .fetch-i3lock-$(I3LOCK_VERSION):
  2221. @$(RM) $(I3LOCK_TARBALL)
  2222. $(WGET) -O $(I3LOCK_TARBALL) $(I3LOCK_TARBALL_URL)
  2223. echo "$$I3LOCK_PATCH_FILE" > $(I3LOCK_PATCH)
  2224. @echo '$(I3LOCK_TARBALL_SHA256) $(I3LOCK_TARBALL)' | $(SHA256SUM)
  2225. @echo '$(I3LOCK_PATCH_SHA256) $(I3LOCK_PATCH)' | $(SHA256SUM)
  2226. @$(TOUCH) $@
  2227. fetch-i3lock: .fetch-i3lock-$(I3LOCK_VERSION)
  2228. .extract-i3lock-$(I3LOCK_VERSION): .fetch-i3lock-$(I3LOCK_VERSION)
  2229. $(RM) $(I3LOCK_BUILD_DIR)
  2230. $(TAR) -xjf $(I3LOCK_TARBALL)
  2231. cd $(I3LOCK_BUILD_DIR) && $(PATCH) -p1 < ../$(I3LOCK_PATCH)
  2232. @$(TOUCH) $@
  2233. extract-i3lock: .extract-i3lock-$(I3LOCK_VERSION)
  2234. .build-i3lock-$(I3LOCK_VERSION): .extract-i3lock-$(I3LOCK_VERSION) .install-libev-$(LIBEV_VERSION) .install-xkbcommon-$(XKBCOMMON_VERSION)
  2235. cd $(I3LOCK_BUILD_DIR) && PKG_CONFIG_PATH=$(XKBCOMMON_INSTALL_DIR)/lib/pkgconfig CPATH=$(LIBEV_INSTALL_DIR)/include LIBRARY_PATH=$(LIBEV_INSTALL_DIR)/lib $(MAKE) LDFLAGS="-lm" $(PARALLEL_BUILD_FLAGS)
  2236. @$(TOUCH) $@
  2237. build-i3lock: .build-i3lock-$(I3LOCK_VERSION)
  2238. install-i3lock: .build-i3lock-$(I3LOCK_VERSION)
  2239. cd $(I3LOCK_BUILD_DIR) && $(MAKE) install PREFIX=$(I3LOCK_INSTALL_DIR) SYSCONFDIR=$(I3LOCK_INSTALL_DIR)/etc
  2240. install -d $(I3LOCK_INSTALL_DIR)/share/man/man1
  2241. cd $(I3LOCK_BUILD_DIR) && install -m 644 i3lock.1 $(I3LOCK_INSTALL_DIR)/share/man/man1
  2242. clean-i3lock:
  2243. @$(RM) .build-i3lock-$(I3LOCK_VERSION)
  2244. @$(RM) .configure-i3lock-$(I3LOCK_VERSION)
  2245. @$(RM) .extract-i3lock-$(I3LOCK_VERSION)
  2246. $(RM) $(I3LOCK_BUILD_DIR)
  2247. distclean-i3lock: clean-i3lock
  2248. @$(RM) .fetch-i3lock-$(I3LOCK_VERSION)
  2249. $(RM) $(I3LOCK_TARBALL)
  2250. $(RM) $(I3LOCK_PATCH)
  2251. env-i3lock:
  2252. @echo 'export PATH="$(I3LOCK_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  2253. @echo 'export MANPATH="$(I3LOCK_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  2254. #
  2255. # Ninja
  2256. #
  2257. NINJA_VERSION = 1.6.0
  2258. NINJA_TARBALL = ninja-$(NINJA_VERSION).tar.gz
  2259. NINJA_TARBALL_URL = https://github.com/martine/ninja/archive/v$(NINJA_VERSION).tar.gz
  2260. NINJA_TARBALL_SHA256 = b43e88fb068fe4d92a3dfd9eb4d19755dae5c33415db2e9b7b61b4659009cde7
  2261. NINJA_BUILD_DIR = ninja-$(NINJA_VERSION)
  2262. NINJA_INSTALL_DIR = $(CURDIR)/.ninja-$(NINJA_VERSION)
  2263. .fetch-ninja-$(NINJA_VERSION):
  2264. @$(RM) $(NINJA_TARBALL)
  2265. $(WGET) -O $(NINJA_TARBALL) $(NINJA_TARBALL_URL)
  2266. @echo '$(NINJA_TARBALL_SHA256) $(NINJA_TARBALL)' | $(SHA256SUM)
  2267. @$(TOUCH) $@
  2268. fetch-ninja: .fetch-ninja-$(NINJA_VERSION)
  2269. .extract-ninja-$(NINJA_VERSION): .fetch-ninja-$(NINJA_VERSION)
  2270. $(RM) $(NINJA_BUILD_DIR)
  2271. $(TAR) -xzf $(NINJA_TARBALL)
  2272. @$(TOUCH) $@
  2273. extract-ninja: .extract-ninja-$(NINJA_VERSION)
  2274. .build-ninja-$(NINJA_VERSION): .extract-ninja-$(NINJA_VERSION)
  2275. cd $(NINJA_BUILD_DIR) && ./configure.py --bootstrap
  2276. @$(TOUCH) $@
  2277. build-ninja: .build-ninja-$(NINJA_VERSION)
  2278. .install-ninja-$(NINJA_VERSION): .build-ninja-$(NINJA_VERSION)
  2279. $(MKDIR) $(NINJA_INSTALL_DIR)/bin
  2280. cd $(NINJA_BUILD_DIR) && $(CP) ninja $(NINJA_INSTALL_DIR)/bin
  2281. @$(TOUCH) $@
  2282. clean-ninja:
  2283. @$(RM) .build-ninja-$(NINJA_VERSION)
  2284. @$(RM) .extract-ninja-$(NINJA_VERSION)
  2285. $(RM) $(NINJA_BUILD_DIR)
  2286. distclean-ninja: clean-ninja
  2287. @$(RM) .fetch-ninja-$(NINJA_VERSION)
  2288. $(RM) $(NINJA_TARBALL)
  2289. #
  2290. # Chromium
  2291. #
  2292. CHROMIUM_VERSION = 60.0.3112.78
  2293. CHROMIUM_TARBALL = chromium-$(CHROMIUM_VERSION).tar.xz
  2294. CHROMIUM_TARBALL_URL = http://commondatastorage.googleapis.com/chromium-browser-official/$(CHROMIUM_TARBALL)
  2295. CHROMIUM_TARBALL_SHA256 = a82db2aa1b9348b619c01894db565eba686780de0e6fa9e83a8f406d06ce03ea
  2296. CHROMIUM_PATCH = chromium-$(CHROMIUM_VERSION).patch
  2297. CHROMIUM_PATCH_SHA256 = 9af3903ade4b9ced1d2598668cb854f8756b99d3b1181ce2ea8c5fc617a4bc38
  2298. CHROMIUM_BUILD_DIR = chromium-$(CHROMIUM_VERSION)
  2299. CHROMIUM_CONFIGURE_FLAGS = --args='is_clang=false is_debug=false treat_warnings_as_errors=false target_extra_cflags="-std=gnu99" enable_nacl=false use_sysroot=false system_libdir="lib64" use_gnome_keyring=false enable_remoting=false enable_iterator_debugging=false use_vulcanize=false linux_use_bundled_binutils=false proprietary_codecs=true ffmpeg_branding="Chrome" fieldtrial_testing_like_official_build=true'
  2300. CHROMIUM_INSTALL_DIR = $(PREFIX)/chromium-$(CHROMIUM_VERSION)
  2301. define CHROMIUM_PATCH_FILE
  2302. --- a/build/toolchain/linux/BUILD.gn
  2303. +++ b/build/toolchain/linux/BUILD.gn
  2304. @@ -5,6 +5,12 @@
  2305. import("//build/config/sysroot.gni")
  2306. import("//build/toolchain/gcc_toolchain.gni")
  2307. +declare_args() {
  2308. + target_extra_cflags = ""
  2309. + target_extra_ldflags = ""
  2310. + target_extra_cxxflags = ""
  2311. +}
  2312. +
  2313. clang_toolchain("clang_arm") {
  2314. toolprefix = "arm-linux-gnueabihf-"
  2315. toolchain_args = {
  2316. @@ -140,6 +154,10 @@
  2317. # Output linker map files for binary size analysis.
  2318. enable_linker_map = true
  2319. + extra_cflags = target_extra_cflags
  2320. + extra_ldflags = target_extra_ldflags
  2321. + extra_cxxflags = target_extra_cxxflags
  2322. +
  2323. toolchain_args = {
  2324. current_cpu = "x64"
  2325. current_os = "linux"
  2326. --- a/chrome/browser/ui/startup/startup_browser_creator_impl.cc
  2327. +++ b/chrome/browser/ui/startup/startup_browser_creator_impl.cc
  2328. @@ -826,3 +825,0 @@
  2329. - chrome::ShowBadFlagsPrompt(browser);
  2330. - GoogleApiKeysInfoBarDelegate::Create(InfoBarService::FromWebContents(
  2331. - browser->tab_strip_model()->GetActiveWebContents()));
  2332. --- a/chrome/test/data/webui_test_resources.grd
  2333. +++ b/chrome/test/data/webui_test_resources.grd
  2334. @@ -8,7 +8,6 @@
  2335. </outputs>
  2336. <release seq="1">
  2337. <includes>
  2338. - <include name="IDR_WEBUI_TEST_I18N_PROCESS_CSS_TEST" file="webui/i18n_process_css_test.html" flattenhtml="true" allowexternalscript="true" type="BINDATA" />
  2339. </includes>
  2340. </release>
  2341. </grit>
  2342. --- a/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc
  2343. +++ b/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc
  2344. @@ -382,7 +382,7 @@
  2345. NGLogicalOffset child_bfc_offset = curr_bfc_offset_;
  2346. child_bfc_offset.inline_offset +=
  2347. - {border_and_padding_.inline_start + curr_child_margins_.inline_start};
  2348. + border_and_padding_.inline_start + curr_child_margins_.inline_start;
  2349. // Append the current margin strut with child's block start margin.
  2350. // Non empty border/padding, and new FC use cases are handled inside of the
  2351. --- a/tools/gn/bootstrap/bootstrap.py
  2352. +++ b/tools/gn/bootstrap/bootstrap.py
  2353. @@ -487,6 +487,7 @@
  2354. 'base/sys_info.cc',
  2355. 'base/task_runner.cc',
  2356. 'base/task_scheduler/delayed_task_manager.cc',
  2357. + 'base/task_scheduler/environment_config.cc',
  2358. 'base/task_scheduler/post_task.cc',
  2359. 'base/task_scheduler/priority_queue.cc',
  2360. 'base/task_scheduler/scheduler_lock_impl.cc',
  2361. endef
  2362. export CHROMIUM_PATCH_FILE
  2363. .fetch-chromium-$(CHROMIUM_VERSION):
  2364. @$(RM) $(CHROMIUM_TARBALL)
  2365. @$(RM) $(CHROMIUM_PATCH)
  2366. $(WGET) -O $(CHROMIUM_TARBALL) $(CHROMIUM_TARBALL_URL)
  2367. echo "$$CHROMIUM_PATCH_FILE" > $(CHROMIUM_PATCH)
  2368. @echo '$(CHROMIUM_TARBALL_SHA256) $(CHROMIUM_TARBALL)' | $(SHA256SUM)
  2369. @echo '$(CHROMIUM_PATCH_SHA256) $(CHROMIUM_PATCH)' | $(SHA256SUM)
  2370. @$(TOUCH) $@
  2371. fetch-chromium: .fetch-chromium-$(CHROMIUM_VERSION)
  2372. .extract-chromium-$(CHROMIUM_VERSION): .fetch-chromium-$(CHROMIUM_VERSION)
  2373. $(RM) $(CHROMIUM_BUILD_DIR)
  2374. $(TAR) -xf $(CHROMIUM_TARBALL)
  2375. cd $(CHROMIUM_BUILD_DIR) && $(PATCH) -p1 < ../$(CHROMIUM_PATCH)
  2376. @$(TOUCH) $@
  2377. extract-chromium: .extract-chromium-$(CHROMIUM_VERSION)
  2378. .configure-chromium-$(CHROMIUM_VERSION): .extract-chromium-$(CHROMIUM_VERSION) .install-ninja-$(NINJA_VERSION)
  2379. cd $(CHROMIUM_BUILD_DIR) && PATH=$(NINJA_INSTALL_DIR)/bin:$$PATH tools/gn/bootstrap/bootstrap.py -s
  2380. cd $(CHROMIUM_BUILD_DIR) && out/Release/gn gen out/Release $(CHROMIUM_CONFIGURE_FLAGS)
  2381. @$(TOUCH) $@
  2382. configure-chromium: .configure-chromium-$(CHROMIUM_VERSION)
  2383. .build-chromium-$(CHROMIUM_VERSION): .configure-chromium-$(CHROMIUM_VERSION)
  2384. cd $(CHROMIUM_BUILD_DIR) && $(NINJA_INSTALL_DIR)/bin/ninja -C out/Release chrome $(PARALLEL_BUILD_FLAGS)
  2385. @$(TOUCH) $@
  2386. build-chromium: .build-chromium-$(CHROMIUM_VERSION)
  2387. define CHROMIUM_WRAPPER
  2388. #!/bin/sh
  2389. export CHROME_WRAPPER=$(CHROMIUM_INSTALL_DIR)/bin/chromium
  2390. export LD_LIBRARY_PATH=$(CHROMIUM_INSTALL_DIR)/lib$${LD_LIBRARY_PATH+:$$LD_LIBRARY_PATH}
  2391. exec $(CHROMIUM_INSTALL_DIR)/lib/chromium/chromium $$CHROMIUM_FLAGS "$$@"
  2392. endef
  2393. export CHROMIUM_WRAPPER
  2394. install-chromium: .build-chromium-$(CHROMIUM_VERSION)
  2395. install -d $(CHROMIUM_INSTALL_DIR)/bin
  2396. echo "$$CHROMIUM_WRAPPER" > $(CHROMIUM_INSTALL_DIR)/bin/chromium
  2397. chmod 755 $(CHROMIUM_INSTALL_DIR)/bin/chromium
  2398. install -d $(CHROMIUM_INSTALL_DIR)/lib/chromium
  2399. cd $(CHROMIUM_BUILD_DIR)/out/Release && install -s -m 755 chrome $(CHROMIUM_INSTALL_DIR)/lib/chromium/chromium
  2400. cd $(CHROMIUM_BUILD_DIR)/out/Release && install -m 644 *.pak *.bin *.dat $(CHROMIUM_INSTALL_DIR)/lib/chromium
  2401. install -d $(CHROMIUM_INSTALL_DIR)/lib/chromium/locales
  2402. cd $(CHROMIUM_BUILD_DIR)/out/Release && install -m 644 locales/en-US.pak $(CHROMIUM_INSTALL_DIR)/lib/chromium/locales
  2403. install -d $(CHROMIUM_INSTALL_DIR)/lib/chromium/swiftshader
  2404. cd $(CHROMIUM_BUILD_DIR)/out/Release && install -m 644 swiftshader/*.so $(CHROMIUM_INSTALL_DIR)/lib/chromium/swiftshader
  2405. install -d $(CHROMIUM_INSTALL_DIR)/share/man/man1
  2406. cd $(CHROMIUM_BUILD_DIR)/out/Release && install -m 644 chrome.1 $(CHROMIUM_INSTALL_DIR)/share/man/man1/chromium.1
  2407. clean-chromium:
  2408. @$(RM) .build-chromium-$(CHROMIUM_VERSION)
  2409. @$(RM) .configure-chromium-$(CHROMIUM_VERSION)
  2410. @$(RM) .extract-chromium-$(CHROMIUM_VERSION)
  2411. $(RM) $(CHROMIUM_BUILD_DIR)
  2412. distclean-chromium: clean-chromium
  2413. @$(RM) .fetch-chromium-$(CHROMIUM_VERSION)
  2414. $(RM) $(CHROMIUM_TARBALL)
  2415. $(RM) $(CHROMIUM_PATCH)
  2416. env-chromium:
  2417. @echo 'export PATH="$(CHROMIUM_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  2418. @echo 'export MANPATH="$(CHROMIUM_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  2419. @echo 'export CHROMIUM_FLAGS="--incognito --ssl-version-min=tls1 --no-sandbox --show-component-extension-options"'
  2420. #
  2421. # LuaRocks
  2422. #
  2423. LUAROCKS_VERSION = 2.4.4
  2424. LUAROCKS_TARBALL = luarocks-$(LUAROCKS_VERSION).tar.gz
  2425. LUAROCKS_TARBALL_URL = http://luarocks.org/releases/$(LUAROCKS_TARBALL)
  2426. LUAROCKS_TARBALL_SHA256 = 3938df33de33752ff2c526e604410af3dceb4b7ff06a770bc4a240de80a1f934
  2427. LUAROCKS_BUILD_DIR = luarocks-$(LUAROCKS_VERSION)
  2428. LUAROCKS_CONFIGURE_FLAGS = --lua-suffix=jit --with-lua=$(LUAJIT_INSTALL_DIR) --with-lua-include=$(LUAJIT_INSTALL_DIR)/include/luajit-2.0
  2429. LUAROCKS_INSTALL_DIR = $(PREFIX)/luarocks-$(LUAROCKS_VERSION)
  2430. define LUAROCKS_CONFIG_FILE
  2431. rocks_trees = {
  2432. { name = [[user]], root = home..[[/.luarocks]] },
  2433. }
  2434. endef
  2435. export LUAROCKS_CONFIG_FILE
  2436. .fetch-luarocks-$(LUAROCKS_VERSION):
  2437. @$(RM) $(LUAROCKS_TARBALL)
  2438. $(WGET) -O $(LUAROCKS_TARBALL) $(LUAROCKS_TARBALL_URL)
  2439. @echo '$(LUAROCKS_TARBALL_SHA256) $(LUAROCKS_TARBALL)' | $(SHA256SUM)
  2440. @$(TOUCH) $@
  2441. fetch-luarocks: .fetch-luarocks-$(LUAROCKS_VERSION)
  2442. .extract-luarocks-$(LUAROCKS_VERSION): .fetch-luarocks-$(LUAROCKS_VERSION)
  2443. $(RM) $(LUAROCKS_BUILD_DIR)
  2444. $(TAR) -xzf $(LUAROCKS_TARBALL)
  2445. @$(TOUCH) $@
  2446. extract-luarocks: .extract-luarocks-$(LUAROCKS_VERSION)
  2447. .configure-luarocks-$(LUAROCKS_VERSION): .extract-luarocks-$(LUAROCKS_VERSION)
  2448. cd $(LUAROCKS_BUILD_DIR) && ./configure --prefix=$(LUAROCKS_INSTALL_DIR) $(LUAROCKS_CONFIGURE_FLAGS)
  2449. @$(TOUCH) $@
  2450. configure-luarocks: .configure-luarocks-$(LUAROCKS_VERSION)
  2451. .build-luarocks-$(LUAROCKS_VERSION): .configure-luarocks-$(LUAROCKS_VERSION)
  2452. cd $(LUAROCKS_BUILD_DIR) && $(MAKE) build PREFIX=$(LUAROCKS_INSTALL_DIR)
  2453. @$(TOUCH) $@
  2454. build-luarocks: .build-luarocks-$(LUAROCKS_VERSION)
  2455. install-luarocks: .build-luarocks-$(LUAROCKS_VERSION)
  2456. cd $(LUAROCKS_BUILD_DIR) && $(MAKE) install PREFIX=$(LUAROCKS_INSTALL_DIR)
  2457. echo "$$LUAROCKS_CONFIG_FILE" > $(LUAROCKS_INSTALL_DIR)/etc/luarocks/config-5.1.lua
  2458. clean-luarocks:
  2459. @$(RM) .build-luarocks-$(LUAROCKS_VERSION)
  2460. @$(RM) .configure-luarocks-$(LUAROCKS_VERSION)
  2461. @$(RM) .extract-luarocks-$(LUAROCKS_VERSION)
  2462. $(RM) $(LUAROCKS_BUILD_DIR)
  2463. distclean-luarocks: clean-luarocks
  2464. @$(RM) .fetch-luarocks-$(LUAROCKS_VERSION)
  2465. $(RM) $(LUAROCKS_TARBALL)
  2466. env-luarocks:
  2467. @echo 'export PATH="$(LUAROCKS_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  2468. #
  2469. # Erlang
  2470. #
  2471. ERLANG_VERSION = 17.0
  2472. ERLANG_TARBALL = otp_src_$(ERLANG_VERSION).tar.gz
  2473. ERLANG_TARBALL_URL = http://packages.erlang-solutions.com/erlang/esl-erlang-src/$(ERLANG_TARBALL)
  2474. ERLANG_TARBALL_SHA256 = 361cae4466b4b3ef8d8762b3a8ebe278e0c7ba0c34cb281402988754183e2ba6
  2475. ERLANG_BUILD_DIR = otp_src_$(ERLANG_VERSION)
  2476. ERLANG_INSTALL_DIR = $(PREFIX)/erlang-$(ERLANG_VERSION)
  2477. .fetch-erlang-$(ERLANG_VERSION):
  2478. @$(RM) $(ERLANG_TARBALL)
  2479. $(WGET) -O $(ERLANG_TARBALL) $(ERLANG_TARBALL_URL)
  2480. @echo '$(ERLANG_TARBALL_SHA256) $(ERLANG_TARBALL)' | $(SHA256SUM)
  2481. @$(TOUCH) $@
  2482. fetch-erlang: .fetch-erlang-$(ERLANG_VERSION)
  2483. .extract-erlang-$(ERLANG_VERSION): .fetch-erlang-$(ERLANG_VERSION)
  2484. $(RM) $(ERLANG_BUILD_DIR)
  2485. $(TAR) -xf $(ERLANG_TARBALL)
  2486. @$(TOUCH) $@
  2487. extract-erlang: .extract-erlang-$(ERLANG_VERSION)
  2488. .configure-erlang-$(ERLANG_VERSION): .extract-erlang-$(ERLANG_VERSION)
  2489. cd $(ERLANG_BUILD_DIR) && ./configure --prefix=$(ERLANG_INSTALL_DIR)
  2490. @$(TOUCH) $@
  2491. configure-erlang: .configure-erlang-$(ERLANG_VERSION)
  2492. .build-erlang-$(ERLANG_VERSION): .configure-erlang-$(ERLANG_VERSION)
  2493. cd $(ERLANG_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  2494. @$(TOUCH) $@
  2495. build-erlang: .build-erlang-$(ERLANG_VERSION)
  2496. install-erlang: .build-erlang-$(ERLANG_VERSION)
  2497. cd $(ERLANG_BUILD_DIR) && $(MAKE) install
  2498. clean-erlang:
  2499. @$(RM) .build-erlang-$(ERLANG_VERSION)
  2500. @$(RM) .configure-erlang-$(ERLANG_VERSION)
  2501. @$(RM) .extract-erlang-$(ERLANG_VERSION)
  2502. $(RM) $(ERLANG_BUILD_DIR)
  2503. distclean-erlang: clean-erlang
  2504. @$(RM) .fetch-erlang-$(ERLANG_VERSION)
  2505. $(RM) $(ERLANG_TARBALL)
  2506. env-erlang:
  2507. @echo 'export PATH="$(ERLANG_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  2508. #
  2509. # RabbitMQ
  2510. #
  2511. RABBITMQ_VERSION = 3.3.0
  2512. RABBITMQ_TARBALL = rabbitmq-server-$(RABBITMQ_VERSION).tar.gz
  2513. RABBITMQ_TARBALL_URL = http://www.rabbitmq.com/releases/rabbitmq-server/v$(RABBITMQ_VERSION)/$(RABBITMQ_TARBALL)
  2514. RABBITMQ_TARBALL_SHA256 = 2f0e2584becfd9826a79f44484db9bda853ffaefbdcc47cbc4065d88c2fd8623
  2515. RABBITMQ_BUILD_DIR = rabbitmq-server-$(RABBITMQ_VERSION)
  2516. RABBITMQ_INSTALL_DIR = $(PREFIX)/rabbitmq-server-$(RABBITMQ_VERSION)
  2517. .fetch-rabbitmq-$(RABBITMQ_VERSION):
  2518. @$(RM) $(RABBITMQ_TARBALL)
  2519. $(WGET) -O $(RABBITMQ_TARBALL) $(RABBITMQ_TARBALL_URL)
  2520. @echo '$(RABBITMQ_TARBALL_SHA256) $(RABBITMQ_TARBALL)' | $(SHA256SUM)
  2521. @$(TOUCH) $@
  2522. fetch-rabbitmq: .fetch-rabbitmq-$(RABBITMQ_VERSION)
  2523. .extract-rabbitmq-$(RABBITMQ_VERSION): .fetch-rabbitmq-$(RABBITMQ_VERSION)
  2524. $(RM) $(RABBITMQ_BUILD_DIR)
  2525. $(TAR) -xf $(RABBITMQ_TARBALL)
  2526. @$(TOUCH) $@
  2527. extract-rabbitmq: .extract-rabbitmq-$(RABBITMQ_VERSION)
  2528. .build-rabbitmq-$(RABBITMQ_VERSION): .extract-rabbitmq-$(RABBITMQ_VERSION)
  2529. cd $(RABBITMQ_BUILD_DIR) && $(MAKE)
  2530. @$(TOUCH) $@
  2531. build-rabbitmq: .build-rabbitmq-$(RABBITMQ_VERSION)
  2532. install-rabbitmq: .build-rabbitmq-$(RABBITMQ_VERSION)
  2533. cd $(RABBITMQ_BUILD_DIR) && $(MAKE) install TARGET_DIR=$(RABBITMQ_INSTALL_DIR)/lib/rabbitmq-server SBIN_DIR=$(RABBITMQ_INSTALL_DIR)/bin MAN_DIR=$(RABBITMQ_INSTALL_DIR)/share/man DOC_INSTALL_DIR=$(RABBITMQ_INSTALL_DIR)/share/doc
  2534. clean-rabbitmq:
  2535. @$(RM) .build-rabbitmq-$(RABBITMQ_VERSION)
  2536. @$(RM) .extract-rabbitmq-$(RABBITMQ_VERSION)
  2537. $(RM) $(RABBITMQ_BUILD_DIR)
  2538. distclean-rabbitmq: clean-rabbitmq
  2539. @$(RM) .fetch-rabbitmq-$(RABBITMQ_VERSION)
  2540. $(RM) $(RABBITMQ_TARBALL)
  2541. env-rabbitmq:
  2542. @echo 'export PATH="$(RABBITMQ_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  2543. @echo 'export MANPATH="$(RABBITMQ_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  2544. @echo 'export RABBITMQ_CONFIG_FILE="$${HOME}/.local/etc/rabbitmq/rabbitmq"'
  2545. @echo 'export RABBITMQ_ENABLED_PLUGINS_FILE="$${HOME}/.local/etc/rabbitmq/enabled_plugins"'
  2546. @echo 'export RABBITMQ_MNESIA_BASE="$${HOME}/.local/lib/rabbitmq/mnesia"'
  2547. @echo 'export RABBITMQ_LOG_BASE="$${HOME}/.local/log/rabbitmq"'
  2548. #
  2549. # RabbitMQ C AMQP client library
  2550. #
  2551. LIBRABBITMQ_VERSION = 0.5.0
  2552. LIBRABBITMQ_TARBALL = rabbitmq-c-$(LIBRABBITMQ_VERSION).tar.gz
  2553. LIBRABBITMQ_TARBALL_URL = https://github.com/alanxz/rabbitmq-c/releases/download/v$(LIBRABBITMQ_VERSION)/$(LIBRABBITMQ_TARBALL)
  2554. LIBRABBITMQ_TARBALL_SHA256 = 53702ea2ab809af0f923e387458e2cad191d9549f50410035fe82ce5e6ccc4fa
  2555. LIBRABBITMQ_BUILD_DIR = rabbitmq-c-$(LIBRABBITMQ_VERSION)
  2556. LIBRABBITMQ_INSTALL_DIR = $(PREFIX)/librabbitmq-$(LIBRABBITMQ_VERSION)
  2557. LIBRABBITMQ_CONFIGURE_FLAGS = --enable-shared --enable-static
  2558. .fetch-librabbitmq-$(LIBRABBITMQ_VERSION):
  2559. @$(RM) $(LIBRABBITMQ_TARBALL)
  2560. $(WGET) -O $(LIBRABBITMQ_TARBALL) $(LIBRABBITMQ_TARBALL_URL)
  2561. @echo '$(LIBRABBITMQ_TARBALL_SHA256) $(LIBRABBITMQ_TARBALL)' | $(SHA256SUM)
  2562. @$(TOUCH) $@
  2563. fetch-librabbitmq: .fetch-librabbitmq-$(LIBRABBITMQ_VERSION)
  2564. .extract-librabbitmq-$(LIBRABBITMQ_VERSION): .fetch-librabbitmq-$(LIBRABBITMQ_VERSION)
  2565. $(RM) $(LIBRABBITMQ_BUILD_DIR)
  2566. $(TAR) -xf $(LIBRABBITMQ_TARBALL)
  2567. @$(TOUCH) $@
  2568. extract-librabbitmq: .extract-librabbitmq-$(LIBRABBITMQ_VERSION)
  2569. .configure-librabbitmq-$(LIBRABBITMQ_VERSION): .extract-librabbitmq-$(LIBRABBITMQ_VERSION)
  2570. cd $(LIBRABBITMQ_BUILD_DIR) && ./configure --prefix=$(LIBRABBITMQ_INSTALL_DIR) $(LIBRABBITMQ_CONFIGURE_FLAGS)
  2571. @$(TOUCH) $@
  2572. configure-librabbitmq: .configure-librabbitmq-$(LIBRABBITMQ_VERSION)
  2573. .build-librabbitmq-$(LIBRABBITMQ_VERSION): .configure-librabbitmq-$(LIBRABBITMQ_VERSION)
  2574. cd $(LIBRABBITMQ_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  2575. @$(TOUCH) $@
  2576. build-librabbitmq: .build-librabbitmq-$(LIBRABBITMQ_VERSION)
  2577. install-librabbitmq: .build-librabbitmq-$(LIBRABBITMQ_VERSION)
  2578. cd $(LIBRABBITMQ_BUILD_DIR) && $(MAKE) install
  2579. clean-librabbitmq:
  2580. @$(RM) .build-librabbitmq-$(LIBRABBITMQ_VERSION)
  2581. @$(RM) .configure-librabbitmq-$(LIBRABBITMQ_VERSION)
  2582. @$(RM) .extract-librabbitmq-$(LIBRABBITMQ_VERSION)
  2583. $(RM) $(LIBRABBITMQ_BUILD_DIR)
  2584. distclean-librabbitmq: clean-librabbitmq
  2585. @$(RM) .fetch-librabbitmq-$(LIBRABBITMQ_VERSION)
  2586. $(RM) $(LIBRABBITMQ_TARBALL)
  2587. env-librabbitmq:
  2588. @echo 'export PATH="$(LIBRABBITMQ_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  2589. @echo 'export MANPATH="$(LIBRABBITMQ_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  2590. @echo 'export CPATH="$(LIBRABBITMQ_INSTALL_DIR)/include$${CPATH+:$$CPATH}"'
  2591. @echo 'export LIBRARY_PATH="$(LIBRABBITMQ_INSTALL_DIR)/lib$${LIBRARY_PATH+:$$LIBRARY_PATH}"'
  2592. @echo 'export LD_LIBRARY_PATH="$(LIBRABBITMQ_INSTALL_DIR)/lib$${LD_LIBRARY_PATH+:$$LD_LIBRARY_PATH}"'
  2593. @echo 'export PKG_CONFIG_PATH="$(LIBRABBITMQ_INSTALL_DIR)/lib/pkgconfig$${PKG_CONFIG_PATH+:$$PKG_CONFIG_PATH}"'
  2594. #
  2595. # YAML 1.1 parser and emitter
  2596. #
  2597. LIBYAML_VERSION = 0.1.5
  2598. LIBYAML_TARBALL = yaml-$(LIBYAML_VERSION).tar.gz
  2599. LIBYAML_TARBALL_URL = http://pyyaml.org/download/libyaml/$(LIBYAML_TARBALL)
  2600. LIBYAML_TARBALL_SHA256 = fa87ee8fb7b936ec04457bc044cd561155e1000a4d25029867752e543c2d3bef
  2601. LIBYAML_BUILD_DIR = yaml-$(LIBYAML_VERSION)
  2602. LIBYAML_INSTALL_DIR = $(PREFIX)/libyaml-$(LIBYAML_VERSION)
  2603. LIBYAML_CONFIGURE_FLAGS = --enable-shared --enable-static
  2604. .fetch-libyaml-$(LIBYAML_VERSION):
  2605. @$(RM) $(LIBYAML_TARBALL)
  2606. $(WGET) -O $(LIBYAML_TARBALL) $(LIBYAML_TARBALL_URL)
  2607. @echo '$(LIBYAML_TARBALL_SHA256) $(LIBYAML_TARBALL)' | $(SHA256SUM)
  2608. @$(TOUCH) $@
  2609. fetch-libyaml: .fetch-libyaml-$(LIBYAML_VERSION)
  2610. .extract-libyaml-$(LIBYAML_VERSION): .fetch-libyaml-$(LIBYAML_VERSION)
  2611. $(RM) $(LIBYAML_BUILD_DIR)
  2612. $(TAR) -xf $(LIBYAML_TARBALL)
  2613. @$(TOUCH) $@
  2614. extract-libyaml: .extract-libyaml-$(LIBYAML_VERSION)
  2615. .configure-libyaml-$(LIBYAML_VERSION): .extract-libyaml-$(LIBYAML_VERSION)
  2616. cd $(LIBYAML_BUILD_DIR) && ./configure --prefix=$(LIBYAML_INSTALL_DIR) $(LIBYAML_CONFIGURE_FLAGS)
  2617. @$(TOUCH) $@
  2618. configure-libyaml: .configure-libyaml-$(LIBYAML_VERSION)
  2619. .build-libyaml-$(LIBYAML_VERSION): .configure-libyaml-$(LIBYAML_VERSION)
  2620. cd $(LIBYAML_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  2621. @$(TOUCH) $@
  2622. build-libyaml: .build-libyaml-$(LIBYAML_VERSION)
  2623. install-libyaml: .build-libyaml-$(LIBYAML_VERSION)
  2624. cd $(LIBYAML_BUILD_DIR) && $(MAKE) install
  2625. clean-libyaml:
  2626. @$(RM) .build-libyaml-$(LIBYAML_VERSION)
  2627. @$(RM) .configure-libyaml-$(LIBYAML_VERSION)
  2628. @$(RM) .extract-libyaml-$(LIBYAML_VERSION)
  2629. $(RM) $(LIBYAML_BUILD_DIR)
  2630. distclean-libyaml: clean-libyaml
  2631. @$(RM) .fetch-libyaml-$(LIBYAML_VERSION)
  2632. $(RM) $(LIBYAML_TARBALL)
  2633. env-libyaml:
  2634. @echo 'export CPATH="$(LIBYAML_INSTALL_DIR)/include$${CPATH+:$$CPATH}"'
  2635. @echo 'export LIBRARY_PATH="$(LIBYAML_INSTALL_DIR)/lib$${LIBRARY_PATH+:$$LIBRARY_PATH}"'
  2636. @echo 'export LD_LIBRARY_PATH="$(LIBYAML_INSTALL_DIR)/lib$${LD_LIBRARY_PATH+:$$LD_LIBRARY_PATH}"'
  2637. @echo 'export PKG_CONFIG_PATH="$(LIBYAML_INSTALL_DIR)/lib/pkgconfig$${PKG_CONFIG_PATH+:$$PKG_CONFIG_PATH}"'
  2638. #
  2639. # Julia language
  2640. #
  2641. JULIA_VERSION = 0.4.6
  2642. JULIA_TARBALL = julia-$(JULIA_VERSION)-full.tar.gz
  2643. JULIA_TARBALL_URL = https://github.com/JuliaLang/julia/releases/download/v$(JULIA_VERSION)/$(JULIA_TARBALL)
  2644. JULIA_TARBALL_SHA256 = 4c23c9fc72398014bd39327c2f7efd3a301884567d4cb2a89105c984d4d633ba
  2645. JULIA_BUILD_DIR = julia-$(JULIA_VERSION)
  2646. JULIA_BUILD_FLAGS = JULIA_CPU_TARGET=core2 OPENBLAS_DYNAMIC_ARCH=0 OPENBLAS_TARGET_ARCH=NEHALEM
  2647. JULIA_INSTALL_DIR = $(PREFIX)/julia-$(JULIA_VERSION)
  2648. ifdef USE_CLANG
  2649. JULIA_BUILD_FLAGS += CC=clang CXX=clang++
  2650. endif
  2651. .fetch-julia-$(JULIA_VERSION):
  2652. @$(RM) $(JULIA_TARBALL)
  2653. $(WGET) -O $(JULIA_TARBALL) $(JULIA_TARBALL_URL)
  2654. @echo '$(JULIA_TARBALL_SHA256) $(JULIA_TARBALL)' | $(SHA256SUM)
  2655. @$(TOUCH) $@
  2656. fetch-julia: .fetch-julia-$(JULIA_VERSION)
  2657. .extract-julia-$(JULIA_VERSION): .fetch-julia-$(JULIA_VERSION)
  2658. $(RM) $(JULIA_BUILD_DIR)
  2659. $(TAR) -xf $(JULIA_TARBALL)
  2660. @$(TOUCH) $@
  2661. extract-julia: .extract-julia-$(JULIA_VERSION)
  2662. .build-julia-$(JULIA_VERSION): .extract-julia-$(JULIA_VERSION)
  2663. cd $(JULIA_BUILD_DIR) && $(MAKE) $(JULIA_BUILD_FLAGS) $(PARALLEL_BUILD_FLAGS)
  2664. @$(TOUCH) $@
  2665. build-julia: .build-julia-$(JULIA_VERSION)
  2666. install-julia: .build-julia-$(JULIA_VERSION)
  2667. cd $(JULIA_BUILD_DIR) && $(MAKE) $(JULIA_BUILD_FLAGS) prefix=$(JULIA_INSTALL_DIR) install
  2668. clean-julia:
  2669. @$(RM) .build-julia-$(JULIA_VERSION)
  2670. @$(RM) .extract-julia-$(JULIA_VERSION)
  2671. $(RM) $(JULIA_BUILD_DIR)
  2672. distclean-julia: clean-julia
  2673. @$(RM) .fetch-julia-$(JULIA_VERSION)
  2674. $(RM) $(JULIA_TARBALL)
  2675. env-julia:
  2676. @echo 'export PATH="$(JULIA_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  2677. @echo 'export MANPATH="$(JULIA_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  2678. #
  2679. # FUSE filesystem for mounting a directory to another location
  2680. #
  2681. BINDFS_VERSION = 1.12.6
  2682. BINDFS_TARBALL = bindfs-$(BINDFS_VERSION).tar.gz
  2683. BINDFS_TARBALL_URL = http://bindfs.org/downloads/$(BINDFS_TARBALL)
  2684. BINDFS_TARBALL_SHA256 = a954f8fe4d6193a1ab5db423c10fb33dd0da23eabce41e4379ecee4c6cb02069
  2685. BINDFS_BUILD_DIR = bindfs-$(BINDFS_VERSION)
  2686. BINDFS_INSTALL_DIR = $(PREFIX)/bindfs-$(BINDFS_VERSION)
  2687. .fetch-bindfs-$(BINDFS_VERSION):
  2688. @$(RM) $(BINDFS_TARBALL)
  2689. $(WGET) -O $(BINDFS_TARBALL) $(BINDFS_TARBALL_URL)
  2690. @echo '$(BINDFS_TARBALL_SHA256) $(BINDFS_TARBALL)' | $(SHA256SUM)
  2691. @$(TOUCH) $@
  2692. fetch-bindfs: .fetch-bindfs-$(BINDFS_VERSION)
  2693. .extract-bindfs-$(BINDFS_VERSION): .fetch-bindfs-$(BINDFS_VERSION)
  2694. $(RM) $(BINDFS_BUILD_DIR)
  2695. $(TAR) -xzf $(BINDFS_TARBALL)
  2696. @$(TOUCH) $@
  2697. extract-bindfs: .extract-bindfs-$(BINDFS_VERSION)
  2698. .configure-bindfs-$(BINDFS_VERSION): .extract-bindfs-$(BINDFS_VERSION)
  2699. cd $(BINDFS_BUILD_DIR) && ./configure --prefix=$(BINDFS_INSTALL_DIR)
  2700. @$(TOUCH) $@
  2701. configure-bindfs: .configure-bindfs-$(BINDFS_VERSION)
  2702. .build-bindfs-$(BINDFS_VERSION): .configure-bindfs-$(BINDFS_VERSION)
  2703. cd $(BINDFS_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  2704. @$(TOUCH) $@
  2705. build-bindfs: .build-bindfs-$(BINDFS_VERSION)
  2706. install-bindfs: .build-bindfs-$(BINDFS_VERSION)
  2707. cd $(BINDFS_BUILD_DIR) && $(MAKE) install
  2708. clean-bindfs:
  2709. @$(RM) .build-bindfs-$(BINDFS_VERSION)
  2710. @$(RM) .configure-bindfs-$(BINDFS_VERSION)
  2711. @$(RM) .extract-bindfs-$(BINDFS_VERSION)
  2712. $(RM) $(BINDFS_BUILD_DIR)
  2713. distclean-bindfs: clean-bindfs
  2714. @$(RM) .fetch-bindfs-$(BINDFS_VERSION)
  2715. $(RM) $(BINDFS_TARBALL)
  2716. env-bindfs:
  2717. @echo 'export PATH="$(BINDFS_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  2718. @echo 'export MANPATH="$(BINDFS_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  2719. #
  2720. # Text-based Mail User Agent
  2721. #
  2722. MUTT_VERSION = 1.5.23
  2723. MUTT_TARBALL = mutt-$(MUTT_VERSION).tar.gz
  2724. MUTT_TARBALL_URL = http://ftp.vim.org/pub/mail/mutt/$(MUTT_TARBALL)
  2725. MUTT_TARBALL_SHA256 = 3af0701e57b9e1880ed3a0dee34498a228939e854a16cdccd24e5e502626fd37
  2726. MUTT_BUILD_DIR = mutt-$(MUTT_VERSION)
  2727. MUTT_CONFIGURE_FLAGS = --with-mailpath= --enable-debug --enable-fcntl --enable-hcache --without-gdbm --without-bdb --without-qdbm --with-tokyocabinet --enable-imap --enable-smtp --enable-pop --with-curses --with-gnutls --with-gss --with-idn --with-mixmaster --with-sasl --enable-gpgme
  2728. MUTT_INSTALL_DIR = $(PREFIX)/mutt-$(MUTT_VERSION)
  2729. .fetch-mutt-$(MUTT_VERSION):
  2730. @$(RM) $(MUTT_TARBALL)
  2731. $(WGET) -O $(MUTT_TARBALL) $(MUTT_TARBALL_URL)
  2732. @echo '$(MUTT_TARBALL_SHA256) $(MUTT_TARBALL)' | $(SHA256SUM)
  2733. @$(TOUCH) $@
  2734. fetch-mutt: .fetch-mutt-$(MUTT_VERSION)
  2735. .extract-mutt-$(MUTT_VERSION): .fetch-mutt-$(MUTT_VERSION)
  2736. $(RM) $(MUTT_BUILD_DIR)
  2737. $(TAR) -xzf $(MUTT_TARBALL)
  2738. @$(TOUCH) $@
  2739. extract-mutt: .extract-mutt-$(MUTT_VERSION)
  2740. .configure-mutt-$(MUTT_VERSION): .extract-mutt-$(MUTT_VERSION)
  2741. cd $(MUTT_BUILD_DIR) && ./configure --prefix=$(MUTT_INSTALL_DIR) $(MUTT_CONFIGURE_FLAGS)
  2742. @$(TOUCH) $@
  2743. configure-mutt: .configure-mutt-$(MUTT_VERSION)
  2744. .build-mutt-$(MUTT_VERSION): .configure-mutt-$(MUTT_VERSION)
  2745. cd $(MUTT_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  2746. @$(TOUCH) $@
  2747. build-mutt: .build-mutt-$(MUTT_VERSION)
  2748. install-mutt: .build-mutt-$(MUTT_VERSION)
  2749. cd $(MUTT_BUILD_DIR) && $(MAKE) install
  2750. clean-mutt:
  2751. @$(RM) .build-mutt-$(MUTT_VERSION)
  2752. @$(RM) .configure-mutt-$(MUTT_VERSION)
  2753. @$(RM) .extract-mutt-$(MUTT_VERSION)
  2754. $(RM) $(MUTT_BUILD_DIR)
  2755. distclean-mutt: clean-mutt
  2756. @$(RM) .fetch-mutt-$(MUTT_VERSION)
  2757. $(RM) $(MUTT_TARBALL)
  2758. env-mutt:
  2759. @echo 'export PATH="$(MUTT_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  2760. @echo 'export MANPATH="$(MUTT_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  2761. #
  2762. # Pretty printing for the mutt mail reader
  2763. #
  2764. MUTTPRINT_VERSION = 0.73
  2765. MUTTPRINT_TARBALL = muttprint-$(MUTTPRINT_VERSION).tar.gz
  2766. MUTTPRINT_TARBALL_URL = http://downloads.sourceforge.net/project/muttprint/muttprint/muttprint-$(MUTTPRINT_VERSION)/$(MUTTPRINT_TARBALL)
  2767. MUTTPRINT_TARBALL_SHA256 = 7cabe6a0aa59849f84914a2da33320611a2fcf5896b94ff957cfade8a325deb6
  2768. MUTTPRINT_BUILD_DIR = muttprint-$(MUTTPRINT_VERSION)
  2769. MUTTPRINT_INSTALL_DIR = $(PREFIX)/muttprint-$(MUTTPRINT_VERSION)
  2770. .fetch-muttprint-$(MUTTPRINT_VERSION):
  2771. @$(RM) $(MUTTPRINT_TARBALL)
  2772. $(WGET) -O $(MUTTPRINT_TARBALL) $(MUTTPRINT_TARBALL_URL)
  2773. @echo '$(MUTTPRINT_TARBALL_SHA256) $(MUTTPRINT_TARBALL)' | $(SHA256SUM)
  2774. @$(TOUCH) $@
  2775. fetch-muttprint: .fetch-muttprint-$(MUTTPRINT_VERSION)
  2776. .extract-muttprint-$(MUTTPRINT_VERSION): .fetch-muttprint-$(MUTTPRINT_VERSION)
  2777. $(RM) $(MUTTPRINT_BUILD_DIR)
  2778. $(TAR) -xzf $(MUTTPRINT_TARBALL)
  2779. cd $(MUTTPRINT_BUILD_DIR) && autoreconf -i
  2780. cd $(MUTTPRINT_BUILD_DIR)/pics && convert penguin.eps penguin.jpg
  2781. cd $(MUTTPRINT_BUILD_DIR)/pics && convert BabyTuX_color.eps BabyTuX_color.png
  2782. cd $(MUTTPRINT_BUILD_DIR)/pics && convert BabyTuX.eps BabyTuX.png
  2783. cd $(MUTTPRINT_BUILD_DIR)/pics && convert Debian_color.eps Debian_color.png
  2784. cd $(MUTTPRINT_BUILD_DIR)/pics && convert Debian.eps Debian.png
  2785. cd $(MUTTPRINT_BUILD_DIR)/pics && convert Gentoo_color.eps Gentoo_color.png
  2786. cd $(MUTTPRINT_BUILD_DIR)/pics && convert Gentoo.eps Gentoo.png
  2787. $(SED) -i '1s#^#=encoding latin-1\n#' $(MUTTPRINT_BUILD_DIR)/doc/manpages/*/muttprint.pod
  2788. @$(TOUCH) $@
  2789. extract-muttprint: .extract-muttprint-$(MUTTPRINT_VERSION)
  2790. .configure-muttprint-$(MUTTPRINT_VERSION): .extract-muttprint-$(MUTTPRINT_VERSION)
  2791. cd $(MUTTPRINT_BUILD_DIR) && ./configure --prefix=$(MUTTPRINT_INSTALL_DIR)
  2792. @$(TOUCH) $@
  2793. configure-muttprint: .configure-muttprint-$(MUTTPRINT_VERSION)
  2794. .build-muttprint-$(MUTTPRINT_VERSION): .configure-muttprint-$(MUTTPRINT_VERSION)
  2795. cd $(MUTTPRINT_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  2796. @$(TOUCH) $@
  2797. build-muttprint: .build-muttprint-$(MUTTPRINT_VERSION)
  2798. install-muttprint: .build-muttprint-$(MUTTPRINT_VERSION)
  2799. cd $(MUTTPRINT_BUILD_DIR) && $(MAKE) install
  2800. clean-muttprint:
  2801. @$(RM) .build-muttprint-$(MUTTPRINT_VERSION)
  2802. @$(RM) .configure-muttprint-$(MUTTPRINT_VERSION)
  2803. @$(RM) .extract-muttprint-$(MUTTPRINT_VERSION)
  2804. $(RM) $(MUTTPRINT_BUILD_DIR)
  2805. distclean-muttprint: clean-muttprint
  2806. @$(RM) .fetch-muttprint-$(MUTTPRINT_VERSION)
  2807. $(RM) $(MUTTPRINT_TARBALL)
  2808. env-muttprint:
  2809. @echo 'export PATH="$(MUTTPRINT_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  2810. @echo 'export MANPATH="$(MUTTPRINT_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  2811. #
  2812. # Key manager for OpenSSH
  2813. #
  2814. KEYCHAIN_VERSION = 2.7.1
  2815. KEYCHAIN_TARBALL = keychain-$(KEYCHAIN_VERSION).tar.bz2
  2816. KEYCHAIN_TARBALL_URL = http://www.funtoo.org/distfiles/keychain/$(KEYCHAIN_TARBALL)
  2817. KEYCHAIN_TARBALL_SHA256 = 1107fe3f78f6429d4861d64c5666f068f159326d22ab80a8ed0948cb25375191
  2818. KEYCHAIN_BUILD_DIR = keychain-$(KEYCHAIN_VERSION)
  2819. KEYCHAIN_INSTALL_DIR = $(PREFIX)/keychain-$(KEYCHAIN_VERSION)
  2820. .fetch-keychain-$(KEYCHAIN_VERSION):
  2821. @$(RM) $(KEYCHAIN_TARBALL)
  2822. $(WGET) -O $(KEYCHAIN_TARBALL) $(KEYCHAIN_TARBALL_URL)
  2823. @echo '$(KEYCHAIN_TARBALL_SHA256) $(KEYCHAIN_TARBALL)' | $(SHA256SUM)
  2824. @$(TOUCH) $@
  2825. fetch-keychain: .fetch-keychain-$(KEYCHAIN_VERSION)
  2826. .extract-keychain-$(KEYCHAIN_VERSION): .fetch-keychain-$(KEYCHAIN_VERSION)
  2827. $(RM) $(KEYCHAIN_BUILD_DIR)
  2828. $(TAR) -xf $(KEYCHAIN_TARBALL)
  2829. @$(TOUCH) $@
  2830. extract-keychain: .extract-keychain-$(KEYCHAIN_VERSION)
  2831. .build-keychain-$(KEYCHAIN_VERSION): .extract-keychain-$(KEYCHAIN_VERSION)
  2832. cd $(KEYCHAIN_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  2833. @$(TOUCH) $@
  2834. build-keychain: .build-keychain-$(KEYCHAIN_VERSION)
  2835. install-keychain: .build-keychain-$(KEYCHAIN_VERSION)
  2836. install -d -m 755 $(KEYCHAIN_INSTALL_DIR)/bin
  2837. cd $(KEYCHAIN_BUILD_DIR) && install -m 755 keychain $(KEYCHAIN_INSTALL_DIR)/bin
  2838. install -d -m 755 $(KEYCHAIN_INSTALL_DIR)/share/man/man1
  2839. cd $(KEYCHAIN_BUILD_DIR) && install -m 644 keychain.1 $(KEYCHAIN_INSTALL_DIR)/share/man/man1
  2840. clean-keychain:
  2841. @$(RM) .build-keychain-$(KEYCHAIN_VERSION)
  2842. @$(RM) .extract-keychain-$(KEYCHAIN_VERSION)
  2843. $(RM) $(KEYCHAIN_BUILD_DIR)
  2844. distclean-keychain: clean-keychain
  2845. @$(RM) .fetch-keychain-$(KEYCHAIN_VERSION)
  2846. $(RM) $(KEYCHAIN_TARBALL)
  2847. env-keychain:
  2848. @echo 'export PATH="$(KEYCHAIN_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  2849. @echo 'export MANPATH="$(KEYCHAIN_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  2850. #
  2851. # Planetary body renderer
  2852. #
  2853. XPLANET_VERSION = 1.3.0
  2854. XPLANET_TARBALL = xplanet-$(XPLANET_VERSION).tar.gz
  2855. XPLANET_TARBALL_URL = http://sourceforge.net/projects/xplanet/files/xplanet/$(XPLANET_VERSION)/$(XPLANET_TARBALL)
  2856. XPLANET_TARBALL_SHA256 = 44fb742bb93e5661ea8b11ccabcc12896693e051f3dd5083c9227224c416b442
  2857. XPLANET_BUILD_DIR = xplanet-$(XPLANET_VERSION)
  2858. XPLANET_INSTALL_DIR = $(PREFIX)/xplanet-$(XPLANET_VERSION)
  2859. .fetch-xplanet-$(XPLANET_VERSION):
  2860. @$(RM) $(XPLANET_TARBALL)
  2861. $(WGET) -O $(XPLANET_TARBALL) $(XPLANET_TARBALL_URL)
  2862. @echo '$(XPLANET_TARBALL_SHA256) $(XPLANET_TARBALL)' | $(SHA256SUM)
  2863. @$(TOUCH) $@
  2864. fetch-xplanet: .fetch-xplanet-$(XPLANET_VERSION)
  2865. .extract-xplanet-$(XPLANET_VERSION): .fetch-xplanet-$(XPLANET_VERSION)
  2866. $(RM) $(XPLANET_BUILD_DIR)
  2867. $(TAR) -xzf $(XPLANET_TARBALL)
  2868. @$(TOUCH) $@
  2869. extract-xplanet: .extract-xplanet-$(XPLANET_VERSION)
  2870. .configure-xplanet-$(XPLANET_VERSION): .extract-xplanet-$(XPLANET_VERSION)
  2871. cd $(XPLANET_BUILD_DIR) && ./configure --prefix=$(XPLANET_INSTALL_DIR)
  2872. @$(TOUCH) $@
  2873. configure-xplanet: .configure-xplanet-$(XPLANET_VERSION)
  2874. .build-xplanet-$(XPLANET_VERSION): .configure-xplanet-$(XPLANET_VERSION)
  2875. cd $(XPLANET_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  2876. @$(TOUCH) $@
  2877. build-xplanet: .build-xplanet-$(XPLANET_VERSION)
  2878. install-xplanet: .build-xplanet-$(XPLANET_VERSION)
  2879. cd $(XPLANET_BUILD_DIR) && $(MAKE) install
  2880. clean-xplanet:
  2881. @$(RM) .build-xplanet-$(XPLANET_VERSION)
  2882. @$(RM) .configure-xplanet-$(XPLANET_VERSION)
  2883. @$(RM) .extract-xplanet-$(XPLANET_VERSION)
  2884. $(RM) $(XPLANET_BUILD_DIR)
  2885. distclean-xplanet: clean-xplanet
  2886. @$(RM) .fetch-xplanet-$(XPLANET_VERSION)
  2887. $(RM) $(XPLANET_TARBALL)
  2888. env-xplanet:
  2889. @echo 'export PATH="$(XPLANET_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  2890. @echo 'export MANPATH="$(XPLANET_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  2891. #
  2892. # Set the window manager name property of the root window
  2893. #
  2894. WMNAME_VERSION = 0.1
  2895. WMNAME_TARBALL = wmname-$(WMNAME_VERSION).tar.gz
  2896. WMNAME_TARBALL_URL = http://dl.suckless.org/tools/$(WMNAME_TARBALL)
  2897. WMNAME_TARBALL_SHA256 = 559ad188b2913167dcbb37ecfbb7ed474a7ec4bbcb0129d8d5d08cb9208d02c5
  2898. WMNAME_BUILD_DIR = wmname-$(WMNAME_VERSION)
  2899. WMNAME_INSTALL_DIR = $(PREFIX)/wmname-$(WMNAME_VERSION)
  2900. .fetch-wmname-$(WMNAME_VERSION):
  2901. @$(RM) $(WMNAME_TARBALL)
  2902. $(WGET) -O $(WMNAME_TARBALL) $(WMNAME_TARBALL_URL)
  2903. @echo '$(WMNAME_TARBALL_SHA256) $(WMNAME_TARBALL)' | $(SHA256SUM)
  2904. @$(TOUCH) $@
  2905. fetch-wmname: .fetch-wmname-$(WMNAME_VERSION)
  2906. .extract-wmname-$(WMNAME_VERSION): .fetch-wmname-$(WMNAME_VERSION)
  2907. $(RM) $(WMNAME_BUILD_DIR)
  2908. $(TAR) -xzf $(WMNAME_TARBALL)
  2909. @$(TOUCH) $@
  2910. extract-wmname: .extract-wmname-$(WMNAME_VERSION)
  2911. .build-wmname-$(WMNAME_VERSION): .extract-wmname-$(WMNAME_VERSION)
  2912. cd $(WMNAME_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  2913. @$(TOUCH) $@
  2914. build-wmname: .build-wmname-$(WMNAME_VERSION)
  2915. install-wmname: .build-wmname-$(WMNAME_VERSION)
  2916. cd $(WMNAME_BUILD_DIR) && $(MAKE) install PREFIX=$(WMNAME_INSTALL_DIR)
  2917. clean-wmname:
  2918. @$(RM) .build-wmname-$(WMNAME_VERSION)
  2919. @$(RM) .extract-wmname-$(WMNAME_VERSION)
  2920. $(RM) $(WMNAME_BUILD_DIR)
  2921. distclean-wmname: clean-wmname
  2922. @$(RM) .fetch-wmname-$(WMNAME_VERSION)
  2923. $(RM) $(WMNAME_TARBALL)
  2924. env-wmname:
  2925. @echo 'export PATH="$(WMNAME_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  2926. #
  2927. # Recursive directory listing command
  2928. #
  2929. TREE_VERSION = 1.7.0
  2930. TREE_TARBALL = tree-$(TREE_VERSION).tgz
  2931. TREE_TARBALL_URL = http://mama.indstate.edu/users/ice/tree/src/$(TREE_TARBALL)
  2932. TREE_TARBALL_SHA256 = 6957c20e82561ac4231638996e74f4cfa4e6faabc5a2f511f0b4e3940e8f7b12
  2933. TREE_BUILD_DIR = tree-$(TREE_VERSION)
  2934. TREE_INSTALL_DIR = $(PREFIX)/tree-$(TREE_VERSION)
  2935. .fetch-tree-$(TREE_VERSION):
  2936. @$(RM) $(TREE_TARBALL)
  2937. $(WGET) -O $(TREE_TARBALL) $(TREE_TARBALL_URL)
  2938. @echo '$(TREE_TARBALL_SHA256) $(TREE_TARBALL)' | $(SHA256SUM)
  2939. @$(TOUCH) $@
  2940. fetch-tree: .fetch-tree-$(TREE_VERSION)
  2941. .extract-tree-$(TREE_VERSION): .fetch-tree-$(TREE_VERSION)
  2942. $(RM) $(TREE_BUILD_DIR)
  2943. $(TAR) -xzf $(TREE_TARBALL)
  2944. @$(TOUCH) $@
  2945. extract-tree: .extract-tree-$(TREE_VERSION)
  2946. .build-tree-$(TREE_VERSION): .extract-tree-$(TREE_VERSION)
  2947. cd $(TREE_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  2948. @$(TOUCH) $@
  2949. build-tree: .build-tree-$(TREE_VERSION)
  2950. install-tree: .build-tree-$(TREE_VERSION)
  2951. cd $(TREE_BUILD_DIR) && $(MAKE) install prefix=$(TREE_INSTALL_DIR)
  2952. clean-tree:
  2953. @$(RM) .build-tree-$(TREE_VERSION)
  2954. @$(RM) .extract-tree-$(TREE_VERSION)
  2955. $(RM) $(TREE_BUILD_DIR)
  2956. distclean-tree: clean-tree
  2957. @$(RM) .fetch-tree-$(TREE_VERSION)
  2958. $(RM) $(TREE_TARBALL)
  2959. env-tree:
  2960. @echo 'export PATH="$(TREE_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  2961. @echo 'export MANPATH="$(TREE_INSTALL_DIR)/man$${MANPATH+:$$MANPATH}"'
  2962. #
  2963. # Little brother's database for the mutt mail reader
  2964. #
  2965. LBDB_VERSION = 0.39
  2966. LBDB_TARBALL = lbdb_$(LBDB_VERSION).tar.gz
  2967. LBDB_TARBALL_URL = https://www.spinnaker.de/debian/$(LBDB_TARBALL)
  2968. LBDB_TARBALL_SHA256 = 4083ce4abde18ac949ca6eab453b3b7227a5aa2c737c9ad8ecbb0152fabfafc6
  2969. LBDB_BUILD_DIR = lbdb-$(LBDB_VERSION)
  2970. LBDB_INSTALL_DIR = $(PREFIX)/lbdb-$(LBDB_VERSION)
  2971. .fetch-lbdb-$(LBDB_VERSION):
  2972. @$(RM) $(LBDB_TARBALL)
  2973. $(WGET) -O $(LBDB_TARBALL) $(LBDB_TARBALL_URL)
  2974. @echo '$(LBDB_TARBALL_SHA256) $(LBDB_TARBALL)' | $(SHA256SUM)
  2975. @$(TOUCH) $@
  2976. fetch-lbdb: .fetch-lbdb-$(LBDB_VERSION)
  2977. .extract-lbdb-$(LBDB_VERSION): .fetch-lbdb-$(LBDB_VERSION)
  2978. $(RM) $(LBDB_BUILD_DIR)
  2979. $(TAR) -xzf $(LBDB_TARBALL)
  2980. @$(TOUCH) $@
  2981. extract-lbdb: .extract-lbdb-$(LBDB_VERSION)
  2982. .configure-lbdb-$(LBDB_VERSION): .extract-lbdb-$(LBDB_VERSION)
  2983. cd $(LBDB_BUILD_DIR) && ./configure --prefix=$(LBDB_INSTALL_DIR)
  2984. @$(TOUCH) $@
  2985. configure-lbdb: .configure-lbdb-$(LBDB_VERSION)
  2986. .build-lbdb-$(LBDB_VERSION): .configure-lbdb-$(LBDB_VERSION)
  2987. cd $(LBDB_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  2988. @$(TOUCH) $@
  2989. build-lbdb: .build-lbdb-$(LBDB_VERSION)
  2990. install-lbdb: .build-lbdb-$(LBDB_VERSION)
  2991. cd $(LBDB_BUILD_DIR) && $(MAKE) install prefix=$(LBDB_INSTALL_DIR)
  2992. clean-lbdb:
  2993. @$(RM) .build-lbdb-$(LBDB_VERSION)
  2994. @$(RM) .extract-lbdb-$(LBDB_VERSION)
  2995. $(RM) $(LBDB_BUILD_DIR)
  2996. distclean-lbdb: clean-lbdb
  2997. @$(RM) .fetch-lbdb-$(LBDB_VERSION)
  2998. $(RM) $(LBDB_TARBALL)
  2999. env-lbdb:
  3000. @echo 'export PATH="$(LBDB_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  3001. @echo 'export MANPATH="$(LBDB_INSTALL_DIR)/man$${MANPATH+:$$MANPATH}"'
  3002. #
  3003. # Class Library for Numbers
  3004. #
  3005. CLN_VERSION = 1.3.4
  3006. CLN_TARBALL = cln-$(CLN_VERSION).tar.bz2
  3007. CLN_TARBALL_URL = http://www.ginac.de/CLN/$(CLN_TARBALL)
  3008. CLN_TARBALL_SHA256 = 2d99d7c433fb60db1e28299298a98354339bdc120d31bb9a862cafc5210ab748
  3009. CLN_BUILD_DIR = cln-$(CLN_VERSION)
  3010. CLN_INSTALL_DIR = $(CURDIR)/.cln-$(CLN_VERSION)
  3011. .fetch-cln-$(CLN_VERSION):
  3012. @$(RM) $(CLN_TARBALL)
  3013. $(WGET) -O $(CLN_TARBALL) $(CLN_TARBALL_URL)
  3014. @echo '$(CLN_TARBALL_SHA256) $(CLN_TARBALL)' | $(SHA256SUM)
  3015. @$(TOUCH) $@
  3016. fetch-cln: .fetch-cln-$(CLN_VERSION)
  3017. .extract-cln-$(CLN_VERSION): .fetch-cln-$(CLN_VERSION)
  3018. $(RM) $(CLN_BUILD_DIR)
  3019. $(TAR) -xf $(CLN_TARBALL)
  3020. @$(TOUCH) $@
  3021. extract-cln: .extract-cln-$(CLN_VERSION)
  3022. .configure-cln-$(CLN_VERSION): .extract-cln-$(CLN_VERSION)
  3023. cd $(CLN_BUILD_DIR) && CXXFLAGS=-fPIC ./configure --prefix=$(CLN_INSTALL_DIR) --disable-shared
  3024. @$(TOUCH) $@
  3025. configure-cln: .configure-cln-$(CLN_VERSION)
  3026. .build-cln-$(CLN_VERSION): .configure-cln-$(CLN_VERSION)
  3027. cd $(CLN_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  3028. @$(TOUCH) $@
  3029. build-cln: .build-cln-$(CLN_VERSION)
  3030. .install-cln-$(CLN_VERSION): .build-cln-$(CLN_VERSION)
  3031. cd $(CLN_BUILD_DIR) && $(MAKE) install
  3032. @$(TOUCH) $@
  3033. clean-cln:
  3034. @$(RM) .build-cln-$(CLN_VERSION)
  3035. @$(RM) .configure-cln-$(CLN_VERSION)
  3036. @$(RM) .extract-cln-$(CLN_VERSION)
  3037. $(RM) $(CLN_BUILD_DIR)
  3038. distclean-cln: clean-cln
  3039. @$(RM) .fetch-cln-$(CLN_VERSION)
  3040. $(RM) $(CLN_TARBALL)
  3041. #
  3042. # Desktop calculator
  3043. #
  3044. LIBQALCULATE_VERSION = 0.9.7
  3045. LIBQALCULATE_TARBALL = libqalculate-$(LIBQALCULATE_VERSION).tar.gz
  3046. LIBQALCULATE_TARBALL_URL = http://downloads.sourceforge.net/project/qalculate/libqalculate/libqalculate-$(LIBQALCULATE_VERSION)/$(LIBQALCULATE_TARBALL)
  3047. LIBQALCULATE_TARBALL_SHA256 = 9a6d97ce3339d104358294242c3ecd5e312446721e93499ff70acc1604607955
  3048. LIBQALCULATE_PATCH = libqalculate-$(LIBQALCULATE_VERSION).patch
  3049. LIBQALCULATE_PATCH_SHA256 = 6c45d852bd9caba847f952c376fc59a68d5787201b1570ce5414655c37e225b2
  3050. LIBQALCULATE_BUILD_DIR = libqalculate-$(LIBQALCULATE_VERSION)
  3051. LIBQALCULATE_INSTALL_DIR = $(CURDIR)/.libqalculate-$(LIBQALCULATE_VERSION)
  3052. define LIBQALCULATE_PATCH_FILE
  3053. --- src.orig/libqalculate/util.cc
  3054. +++ src/libqalculate/util.cc
  3055. @@ -29 +29 @@
  3056. -char buffer[20000];
  3057. +static char buffer[20000];
  3058. --- src.orig/src/qalc.cc
  3059. +++ src/src/qalc.cc
  3060. @@ -51 +51 @@
  3061. -char buffer[1000];
  3062. +static char buffer[1000];
  3063. endef
  3064. export LIBQALCULATE_PATCH_FILE
  3065. .fetch-libqalculate-$(LIBQALCULATE_VERSION):
  3066. @$(RM) $(LIBQALCULATE_TARBALL)
  3067. $(WGET) -O $(LIBQALCULATE_TARBALL) $(LIBQALCULATE_TARBALL_URL)
  3068. echo "$$LIBQALCULATE_PATCH_FILE" > $(LIBQALCULATE_PATCH)
  3069. @echo '$(LIBQALCULATE_TARBALL_SHA256) $(LIBQALCULATE_TARBALL)' | $(SHA256SUM)
  3070. @echo '$(LIBQALCULATE_PATCH_SHA256) $(LIBQALCULATE_PATCH)' | $(SHA256SUM)
  3071. @$(TOUCH) $@
  3072. fetch-libqalculate: .fetch-libqalculate-$(LIBQALCULATE_VERSION)
  3073. .extract-libqalculate-$(LIBQALCULATE_VERSION): .fetch-libqalculate-$(LIBQALCULATE_VERSION)
  3074. $(RM) $(LIBQALCULATE_BUILD_DIR)
  3075. $(TAR) -xf $(LIBQALCULATE_TARBALL)
  3076. cd $(LIBQALCULATE_BUILD_DIR) && $(PATCH) -p1 < ../$(LIBQALCULATE_PATCH)
  3077. @$(TOUCH) $@
  3078. extract-libqalculate: .extract-libqalculate-$(LIBQALCULATE_VERSION)
  3079. .configure-libqalculate-$(LIBQALCULATE_VERSION): .extract-libqalculate-$(LIBQALCULATE_VERSION) .install-cln-$(CLN_VERSION)
  3080. cd $(LIBQALCULATE_BUILD_DIR) && PKG_CONFIG_PATH=$(CLN_INSTALL_DIR)/lib/pkgconfig CPPFLAGS=-I$(CLN_INSTALL_DIR)/include LDFLAGS=-L$(CLN_INSTALL_DIR)/lib CXXFLAGS=-fPIC ./configure --prefix=$(LIBQALCULATE_INSTALL_DIR) --disable-shared
  3081. @$(TOUCH) $@
  3082. configure-libqalculate: .configure-libqalculate-$(LIBQALCULATE_VERSION)
  3083. .build-libqalculate-$(LIBQALCULATE_VERSION): .configure-libqalculate-$(LIBQALCULATE_VERSION)
  3084. cd $(LIBQALCULATE_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  3085. @$(TOUCH) $@
  3086. build-libqalculate: .build-libqalculate-$(LIBQALCULATE_VERSION)
  3087. .install-libqalculate-$(LIBQALCULATE_VERSION): .build-libqalculate-$(LIBQALCULATE_VERSION)
  3088. cd $(LIBQALCULATE_BUILD_DIR) && $(MAKE) install
  3089. @$(TOUCH) $@
  3090. clean-libqalculate:
  3091. @$(RM) .build-libqalculate-$(LIBQALCULATE_VERSION)
  3092. @$(RM) .configure-libqalculate-$(LIBQALCULATE_VERSION)
  3093. @$(RM) .extract-libqalculate-$(LIBQALCULATE_VERSION)
  3094. $(RM) $(LIBQALCULATE_BUILD_DIR)
  3095. distclean-libqalculate: clean-libqalculate
  3096. @$(RM) .fetch-libqalculate-$(LIBQALCULATE_VERSION)
  3097. $(RM) $(LIBQALCULATE_TARBALL)
  3098. $(RM) $(LIBQALCULATE_PATCH)
  3099. #
  3100. # Desktop calculator (GTK frontend)
  3101. #
  3102. QALCULATE_GTK_VERSION = 0.9.7
  3103. QALCULATE_GTK_TARBALL = qalculate-gtk-$(QALCULATE_GTK_VERSION).tar.gz
  3104. QALCULATE_GTK_TARBALL_URL = http://downloads.sourceforge.net/project/qalculate/qalculate-gtk/qalculate-gtk-$(QALCULATE_GTK_VERSION)/$(QALCULATE_GTK_TARBALL)
  3105. QALCULATE_GTK_TARBALL_SHA256 = a4ea8ee2366ac3ad53bb17fd2f76a7bed7211640cf2fdadfcf3b79eb4b37282d
  3106. QALCULATE_GTK_BUILD_DIR = qalculate-gtk-$(QALCULATE_GTK_VERSION)
  3107. QALCULATE_GTK_INSTALL_DIR = $(PREFIX)/qalculate-gtk-$(QALCULATE_GTK_VERSION)
  3108. .fetch-qalculate-gtk-$(QALCULATE_GTK_VERSION):
  3109. @$(RM) $(QALCULATE_GTK_TARBALL)
  3110. $(WGET) -O $(QALCULATE_GTK_TARBALL) $(QALCULATE_GTK_TARBALL_URL)
  3111. @echo '$(QALCULATE_GTK_TARBALL_SHA256) $(QALCULATE_GTK_TARBALL)' | $(SHA256SUM)
  3112. @$(TOUCH) $@
  3113. fetch-qalculate-gtk: .fetch-qalculate-gtk-$(QALCULATE_GTK_VERSION)
  3114. .extract-qalculate-gtk-$(QALCULATE_GTK_VERSION): .fetch-qalculate-gtk-$(QALCULATE_GTK_VERSION)
  3115. $(RM) $(QALCULATE_GTK_BUILD_DIR)
  3116. $(TAR) -xzf $(QALCULATE_GTK_TARBALL)
  3117. @$(TOUCH) $@
  3118. extract-qalculate-gtk: .extract-qalculate-gtk-$(QALCULATE_GTK_VERSION)
  3119. .configure-qalculate-gtk-$(QALCULATE_GTK_VERSION): .extract-qalculate-gtk-$(QALCULATE_GTK_VERSION) .install-cln-$(CLN_VERSION) .install-libqalculate-$(LIBQALCULATE_VERSION)
  3120. cd $(QALCULATE_GTK_BUILD_DIR) && PKG_CONFIG_PATH=$(CLN_INSTALL_DIR)/lib/pkgconfig:$(LIBQALCULATE_INSTALL_DIR)/lib/pkgconfig CPPFLAGS=-I$(CLN_INSTALL_DIR)/include LDFLAGS=-L$(CLN_INSTALL_DIR)/lib ./configure --prefix=$(QALCULATE_GTK_INSTALL_DIR)
  3121. @$(TOUCH) $@
  3122. configure-qalculate-gtk: .configure-qalculate-gtk-$(QALCULATE_GTK_VERSION)
  3123. .build-qalculate-gtk-$(QALCULATE_GTK_VERSION): .configure-qalculate-gtk-$(QALCULATE_GTK_VERSION)
  3124. cd $(QALCULATE_GTK_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  3125. @$(TOUCH) $@
  3126. build-qalculate-gtk: .build-qalculate-gtk-$(QALCULATE_GTK_VERSION)
  3127. install-qalculate-gtk: .build-qalculate-gtk-$(QALCULATE_GTK_VERSION)
  3128. cd $(QALCULATE_GTK_BUILD_DIR) && $(MAKE) install prefix=$(QALCULATE_GTK_INSTALL_DIR)
  3129. clean-qalculate-gtk:
  3130. @$(RM) .build-qalculate-gtk-$(QALCULATE_GTK_VERSION)
  3131. @$(RM) .extract-qalculate-gtk-$(QALCULATE_GTK_VERSION)
  3132. $(RM) $(QALCULATE_GTK_BUILD_DIR)
  3133. distclean-qalculate-gtk: clean-qalculate-gtk
  3134. @$(RM) .fetch-qalculate-gtk-$(QALCULATE_GTK_VERSION)
  3135. $(RM) $(QALCULATE_GTK_TARBALL)
  3136. env-qalculate-gtk:
  3137. @echo 'export PATH="$(QALCULATE_GTK_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  3138. #
  3139. # Password database command-line utility
  3140. #
  3141. PWSAFE_VERSION = 0.2.0
  3142. PWSAFE_TARBALL = pwsafe-$(PWSAFE_VERSION).tar.gz
  3143. PWSAFE_TARBALL_URL = http://distfiles.gentoo.org/distfiles/$(PWSAFE_TARBALL)
  3144. PWSAFE_TARBALL_SHA256 = 61e91dc5114fe014a49afabd574eda5ff49b36c81a6d492c03fcb10ba6af47b7
  3145. PWSAFE_PATCH = pwsafe-$(PWSAFE_VERSION).patch
  3146. PWSAFE_PATCH_SHA256 = 0363b91c9f94bc23dc3ee01c33004ad10cd8301781868d19bbe982d38017ceec
  3147. PWSAFE_BUILD_DIR = pwsafe-$(PWSAFE_VERSION)
  3148. PWSAFE_INSTALL_DIR = $(PREFIX)/pwsafe-$(PWSAFE_VERSION)
  3149. define PWSAFE_PATCH_FILE
  3150. https://code.google.com/p/chromium/issues/detail?id=37755#c16
  3151. --- pwsafe.cpp
  3152. +++ pwsafe.cpp
  3153. @@ -1820,10 +1820,10 @@
  3154. if (xev.xselectionrequest.target == XA_TARGETS(xdisplay)) {
  3155. // tell them what we can supply
  3156. const Atom targets[] = { XA_TARGETS(xdisplay), XA_TIMESTAMP(xdisplay), XA_TEXT(xdisplay), XA_STRING };
  3157. - XChangeProperty(xdisplay, xev.xselectionrequest.requestor, prop, XA_TARGETS(xdisplay), 32, PropModeReplace, reinterpret_cast<const unsigned char*>(&targets), sizeof(targets)/sizeof(targets[0]));
  3158. + XChangeProperty(xdisplay, xev.xselectionrequest.requestor, prop, XA_ATOM, 32, PropModeReplace, reinterpret_cast<const unsigned char*>(&targets), sizeof(targets)/sizeof(targets[0]));
  3159. }
  3160. else if (xev.xselectionrequest.target == XA_TIMESTAMP(xdisplay)) {
  3161. - XChangeProperty(xdisplay, xev.xselectionrequest.requestor, prop, XA_TIMESTAMP(xdisplay), 32, PropModeReplace, reinterpret_cast<const unsigned char*>(&timestamp), 1);
  3162. + XChangeProperty(xdisplay, xev.xselectionrequest.requestor, prop, XA_INTEGER, 32, PropModeReplace, reinterpret_cast<const unsigned char*>(&timestamp), 1);
  3163. }
  3164. else if (xev.xselectionrequest.target == XA_TEXT(xdisplay) ||
  3165. xev.xselectionrequest.target == XA_STRING) {
  3166. endef
  3167. export PWSAFE_PATCH_FILE
  3168. .fetch-pwsafe-$(PWSAFE_VERSION):
  3169. @$(RM) $(PWSAFE_TARBALL)
  3170. $(WGET) -O $(PWSAFE_TARBALL) $(PWSAFE_TARBALL_URL)
  3171. echo "$$PWSAFE_PATCH_FILE" > $(PWSAFE_PATCH)
  3172. @echo '$(PWSAFE_TARBALL_SHA256) $(PWSAFE_TARBALL)' | $(SHA256SUM)
  3173. @echo '$(PWSAFE_PATCH_SHA256) $(PWSAFE_PATCH)' | $(SHA256SUM)
  3174. @$(TOUCH) $@
  3175. fetch-pwsafe: .fetch-pwsafe-$(PWSAFE_VERSION)
  3176. .extract-pwsafe-$(PWSAFE_VERSION): .fetch-pwsafe-$(PWSAFE_VERSION)
  3177. $(RM) $(PWSAFE_BUILD_DIR)
  3178. $(TAR) -xzf $(PWSAFE_TARBALL)
  3179. cd $(PWSAFE_BUILD_DIR) && $(PATCH) -p0 < ../$(PWSAFE_PATCH)
  3180. @$(TOUCH) $@
  3181. extract-pwsafe: .extract-pwsafe-$(PWSAFE_VERSION)
  3182. .configure-pwsafe-$(PWSAFE_VERSION): .extract-pwsafe-$(PWSAFE_VERSION)
  3183. cd $(PWSAFE_BUILD_DIR) && ./configure --prefix=$(PWSAFE_INSTALL_DIR) --mandir=$(PWSAFE_INSTALL_DIR)/share/man
  3184. @$(TOUCH) $@
  3185. configure-pwsafe: .configure-pwsafe-$(PWSAFE_VERSION)
  3186. .build-pwsafe-$(PWSAFE_VERSION): .configure-pwsafe-$(PWSAFE_VERSION)
  3187. cd $(PWSAFE_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  3188. @$(TOUCH) $@
  3189. build-pwsafe: .build-pwsafe-$(PWSAFE_VERSION)
  3190. install-pwsafe: .build-pwsafe-$(PWSAFE_VERSION)
  3191. cd $(PWSAFE_BUILD_DIR) && $(MAKE) install
  3192. clean-pwsafe:
  3193. @$(RM) .build-pwsafe-$(PWSAFE_VERSION)
  3194. @$(RM) .configure-pwsafe-$(PWSAFE_VERSION)
  3195. @$(RM) .extract-pwsafe-$(PWSAFE_VERSION)
  3196. $(RM) $(PWSAFE_BUILD_DIR)
  3197. distclean-pwsafe: clean-pwsafe
  3198. @$(RM) .fetch-pwsafe-$(PWSAFE_VERSION)
  3199. $(RM) $(PWSAFE_TARBALL)
  3200. $(RM) $(PWSAFE_PATCH)
  3201. env-pwsafe:
  3202. @echo 'export PATH="$(PWSAFE_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  3203. @echo 'export MANPATH="$(PWSAFE_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  3204. #
  3205. # Convert raster images to PostScript, PDF and other formats
  3206. #
  3207. JPEG2PS_VERSION = 1.9
  3208. JPEG2PS_TARBALL = jpeg2ps-$(JPEG2PS_VERSION).tar.gz
  3209. JPEG2PS_TARBALL_URL = http://distfiles.gentoo.org/distfiles/$(JPEG2PS_TARBALL)
  3210. JPEG2PS_TARBALL_SHA256 = e09919ff55bb1fd26299adfe92e5ea0e7daaa3bfa0277a0483cac9764eac25a2
  3211. JPEG2PS_BUILD_DIR = jpeg2ps-$(JPEG2PS_VERSION)
  3212. JPEG2PS_INSTALL_DIR = $(PREFIX)/jpeg2ps-$(JPEG2PS_VERSION)
  3213. .fetch-jpeg2ps-$(JPEG2PS_VERSION):
  3214. @$(RM) $(JPEG2PS_TARBALL)
  3215. $(WGET) -O $(JPEG2PS_TARBALL) $(JPEG2PS_TARBALL_URL)
  3216. @echo '$(JPEG2PS_TARBALL_SHA256) $(JPEG2PS_TARBALL)' | $(SHA256SUM)
  3217. @$(TOUCH) $@
  3218. fetch-jpeg2ps: .fetch-jpeg2ps-$(JPEG2PS_VERSION)
  3219. .extract-jpeg2ps-$(JPEG2PS_VERSION): .fetch-jpeg2ps-$(JPEG2PS_VERSION)
  3220. $(RM) $(JPEG2PS_BUILD_DIR)
  3221. $(TAR) -xzf $(JPEG2PS_TARBALL)
  3222. @$(TOUCH) $@
  3223. extract-jpeg2ps: .extract-jpeg2ps-$(JPEG2PS_VERSION)
  3224. .build-jpeg2ps-$(JPEG2PS_VERSION): .extract-jpeg2ps-$(JPEG2PS_VERSION)
  3225. cd $(JPEG2PS_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  3226. @$(TOUCH) $@
  3227. build-jpeg2ps: .build-jpeg2ps-$(JPEG2PS_VERSION)
  3228. install-jpeg2ps: .build-jpeg2ps-$(JPEG2PS_VERSION)
  3229. install -d -m 755 $(JPEG2PS_INSTALL_DIR)/bin
  3230. cd $(JPEG2PS_BUILD_DIR) && install -m 755 jpeg2ps $(JPEG2PS_INSTALL_DIR)/bin
  3231. install -d -m 755 $(JPEG2PS_INSTALL_DIR)/share/man/man1
  3232. cd $(JPEG2PS_BUILD_DIR) && install -m 644 jpeg2ps.1 $(JPEG2PS_INSTALL_DIR)/share/man/man1
  3233. clean-jpeg2ps:
  3234. @$(RM) .build-jpeg2ps-$(JPEG2PS_VERSION)
  3235. @$(RM) .configure-jpeg2ps-$(JPEG2PS_VERSION)
  3236. @$(RM) .extract-jpeg2ps-$(JPEG2PS_VERSION)
  3237. $(RM) $(JPEG2PS_BUILD_DIR)
  3238. distclean-jpeg2ps: clean-jpeg2ps
  3239. @$(RM) .fetch-jpeg2ps-$(JPEG2PS_VERSION)
  3240. $(RM) $(JPEG2PS_TARBALL)
  3241. env-jpeg2ps:
  3242. @echo 'export PATH="$(JPEG2PS_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  3243. @echo 'export MANPATH="$(JPEG2PS_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  3244. #
  3245. # Vim text editor
  3246. #
  3247. VIM_VERSION = 8.0.0022
  3248. VIM_TARBALL = vim_$(VIM_VERSION).orig.tar.gz
  3249. VIM_TARBALL_URL = http://snapshot.debian.org/archive/debian/20161005T102332Z/pool/main/v/vim/$(VIM_TARBALL)
  3250. VIM_TARBALL_SHA256 = 2f854b1747423a66a347a7a424eaaa5bc7bf202209af2f0f68a2ff9c7094173b
  3251. VIM_BUILD_DIR = vim-$(VIM_VERSION)
  3252. VIM_CONFIGURE_FLAGS = --with-features=huge --enable-luainterp --enable-pythoninterp --enable-perlinterp --enable-rubyinterp --enable-tclinterp
  3253. VIM_INSTALL_DIR = $(PREFIX)/vim-$(VIM_VERSION)
  3254. .fetch-vim-$(VIM_VERSION):
  3255. @$(RM) $(VIM_TARBALL)
  3256. $(WGET) -O $(VIM_TARBALL) $(VIM_TARBALL_URL)
  3257. @echo '$(VIM_TARBALL_SHA256) $(VIM_TARBALL)' | $(SHA256SUM)
  3258. @$(TOUCH) $@
  3259. fetch-vim: .fetch-vim-$(VIM_VERSION)
  3260. .extract-vim-$(VIM_VERSION): .fetch-vim-$(VIM_VERSION)
  3261. $(RM) $(VIM_BUILD_DIR)
  3262. $(TAR) -xzf $(VIM_TARBALL)
  3263. @$(TOUCH) $@
  3264. extract-vim: .extract-vim-$(VIM_VERSION)
  3265. .configure-vim-$(VIM_VERSION): .extract-vim-$(VIM_VERSION)
  3266. cd $(VIM_BUILD_DIR) && ./configure -prefix=$(VIM_INSTALL_DIR) $(VIM_CONFIGURE_FLAGS)
  3267. @$(TOUCH) $@
  3268. configure-vim: .configure-vim-$(VIM_VERSION)
  3269. .build-vim-$(VIM_VERSION): .configure-vim-$(VIM_VERSION)
  3270. cd $(VIM_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  3271. @$(TOUCH) $@
  3272. build-vim: .build-vim-$(VIM_VERSION)
  3273. install-vim: .build-vim-$(VIM_VERSION)
  3274. cd $(VIM_BUILD_DIR) && $(MAKE) install
  3275. clean-vim:
  3276. @$(RM) .build-vim-$(VIM_VERSION)
  3277. @$(RM) .configure-vim-$(VIM_VERSION)
  3278. @$(RM) .extract-vim-$(VIM_VERSION)
  3279. $(RM) $(VIM_BUILD_DIR)
  3280. distclean-vim: clean-vim
  3281. @$(RM) .fetch-vim-$(VIM_VERSION)
  3282. $(RM) $(VIM_TARBALL)
  3283. env-vim:
  3284. @echo 'export PATH="$(VIM_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  3285. @echo 'export MANPATH="$(VIM_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  3286. #
  3287. # Command-line JSON processor
  3288. #
  3289. JQ_VERSION = 1.5
  3290. JQ_TARBALL = jq-$(JQ_VERSION).tar.gz
  3291. JQ_TARBALL_URL = https://github.com/stedolan/jq/releases/download/jq-$(JQ_VERSION)/$(JQ_TARBALL)
  3292. JQ_TARBALL_SHA256 = c4d2bfec6436341113419debf479d833692cc5cdab7eb0326b5a4d4fbe9f493c
  3293. JQ_BUILD_DIR = jq-$(JQ_VERSION)
  3294. JQ_CONFIGURE_FLAGS = --disable-maintainer-mode --disable-docs
  3295. JQ_INSTALL_DIR = $(PREFIX)/jq-$(JQ_VERSION)
  3296. .fetch-jq-$(JQ_VERSION):
  3297. @$(RM) $(JQ_TARBALL)
  3298. $(WGET) -O $(JQ_TARBALL) $(JQ_TARBALL_URL)
  3299. @echo '$(JQ_TARBALL_SHA256) $(JQ_TARBALL)' | $(SHA256SUM)
  3300. @$(TOUCH) $@
  3301. fetch-jq: .fetch-jq-$(JQ_VERSION)
  3302. .extract-jq-$(JQ_VERSION): .fetch-jq-$(JQ_VERSION)
  3303. $(RM) $(JQ_BUILD_DIR)
  3304. $(TAR) -xzf $(JQ_TARBALL)
  3305. @$(TOUCH) $@
  3306. extract-jq: .extract-jq-$(JQ_VERSION)
  3307. .configure-jq-$(JQ_VERSION): .extract-jq-$(JQ_VERSION)
  3308. cd $(JQ_BUILD_DIR) && ./configure --prefix=$(JQ_INSTALL_DIR) $(JQ_CONFIGURE_FLAGS)
  3309. @$(TOUCH) $@
  3310. configure-jq: .configure-jq-$(JQ_VERSION)
  3311. .build-jq-$(JQ_VERSION): .configure-jq-$(JQ_VERSION)
  3312. cd $(JQ_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  3313. @$(TOUCH) $@
  3314. build-jq: .build-jq-$(JQ_VERSION)
  3315. install-jq: .build-jq-$(JQ_VERSION)
  3316. cd $(JQ_BUILD_DIR) && $(MAKE) install
  3317. clean-jq:
  3318. @$(RM) .build-jq-$(JQ_VERSION)
  3319. @$(RM) .configure-jq-$(JQ_VERSION)
  3320. @$(RM) .extract-jq-$(JQ_VERSION)
  3321. $(RM) $(JQ_BUILD_DIR)
  3322. distclean-jq: clean-jq
  3323. @$(RM) .fetch-jq-$(JQ_VERSION)
  3324. $(RM) $(JQ_TARBALL)
  3325. env-jq:
  3326. @echo 'export PATH="$(JQ_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  3327. @echo 'export MANPATH="$(JQ_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  3328. #
  3329. # Perl rename
  3330. #
  3331. PERL_RENAME_VERSION = 0.20
  3332. PERL_RENAME_TARBALL = File-Rename-$(PERL_RENAME_VERSION).tar.gz
  3333. PERL_RENAME_TARBALL_URL = http://search.cpan.org/CPAN/authors/id/R/RM/RMBARKER/$(PERL_RENAME_TARBALL)
  3334. PERL_RENAME_TARBALL_SHA256 = 5eee75ea92a987930c5bec4a631ee0201f23c77908ba322e553df80845efc6b1
  3335. PERL_RENAME_BUILD_DIR = File-Rename-$(PERL_RENAME_VERSION)
  3336. PERL_RENAME_INSTALL_DIR = $(PREFIX)/perl-rename-$(PERL_RENAME_VERSION)
  3337. .fetch-perl-rename-$(PERL_RENAME_VERSION):
  3338. @$(RM) $(PERL_RENAME_TARBALL)
  3339. $(WGET) -O $(PERL_RENAME_TARBALL) $(PERL_RENAME_TARBALL_URL)
  3340. @echo '$(PERL_RENAME_TARBALL_SHA256) $(PERL_RENAME_TARBALL)' | $(SHA256SUM)
  3341. @$(TOUCH) $@
  3342. fetch-perl-rename: .fetch-perl-rename-$(PERL_RENAME_VERSION)
  3343. .extract-perl-rename-$(PERL_RENAME_VERSION): .fetch-perl-rename-$(PERL_RENAME_VERSION)
  3344. $(RM) $(PERL_RENAME_BUILD_DIR)
  3345. $(TAR) -xzf $(PERL_RENAME_TARBALL)
  3346. @$(TOUCH) $@
  3347. extract-perl-rename: .extract-perl-rename-$(PERL_RENAME_VERSION)
  3348. .configure-perl-rename-$(PERL_RENAME_VERSION): .extract-perl-rename-$(PERL_RENAME_VERSION)
  3349. cd $(PERL_RENAME_BUILD_DIR) && $(PERL) Makefile.PL PREFIX=$(PERL_RENAME_INSTALL_DIR) LIB=$(PERL_RENAME_INSTALL_DIR)/lib/perl5
  3350. @$(TOUCH) $@
  3351. configure-perl-rename: .configure-perl-rename-$(PERL_RENAME_VERSION)
  3352. .build-perl-rename-$(PERL_RENAME_VERSION): .configure-perl-rename-$(PERL_RENAME_VERSION)
  3353. cd $(PERL_RENAME_BUILD_DIR) && $(MAKE) PREFIX=$(PERL_RENAME_INSTALL_DIR) $(PARALLEL_BUILD_FLAGS)
  3354. @$(TOUCH) $@
  3355. build-perl-rename: .build-perl-rename-$(PERL_RENAME_VERSION)
  3356. install-perl-rename: .build-perl-rename-$(PERL_RENAME_VERSION)
  3357. cd $(PERL_RENAME_BUILD_DIR) && $(MAKE) PREFIX=$(PERL_RENAME_INSTALL_DIR) install
  3358. clean-perl-rename:
  3359. @$(RM) .build-perl-rename-$(PERL_RENAME_VERSION)
  3360. @$(RM) .configure-perl-rename-$(PERL_RENAME_VERSION)
  3361. @$(RM) .extract-perl-rename-$(PERL_RENAME_VERSION)
  3362. $(RM) $(PERL_RENAME_BUILD_DIR)
  3363. distclean-perl-rename: clean-perl-rename
  3364. @$(RM) .fetch-perl-rename-$(PERL_RENAME_VERSION)
  3365. $(RM) $(PERL_RENAME_TARBALL)
  3366. env-perl-rename:
  3367. @echo 'export PATH="$(PERL_RENAME_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  3368. @echo 'export MANPATH="$(PERL_RENAME_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  3369. @echo 'export PERL5LIB="$(PERL_RENAME_INSTALL_DIR)/lib/perl5$${PERL5LIB+:$$PERL5LIB}"'
  3370. #
  3371. # A Tool to Manipulate BibTeX files
  3372. #
  3373. BIBTOOL_VERSION = 2.67
  3374. BIBTOOL_TARBALL = BibTool-$(BIBTOOL_VERSION).tar.gz
  3375. BIBTOOL_TARBALL_URL = http://www.gerd-neugebauer.de/software/TeX/BibTool/$(BIBTOOL_TARBALL)
  3376. BIBTOOL_TARBALL_SHA256 = 5b6c4160975a926356e8e59d0e5c01ac2a7be337ecace2494918fc2a46d9d784
  3377. BIBTOOL_BUILD_DIR = BibTool
  3378. BIBTOOL_CONFIGURE_FLAGS =
  3379. BIBTOOL_INSTALL_DIR = $(PREFIX)/bibtool-$(BIBTOOL_VERSION)
  3380. .fetch-bibtool-$(BIBTOOL_VERSION):
  3381. @$(RM) $(BIBTOOL_TARBALL)
  3382. $(WGET) -O $(BIBTOOL_TARBALL) $(BIBTOOL_TARBALL_URL)
  3383. @echo '$(BIBTOOL_TARBALL_SHA256) $(BIBTOOL_TARBALL)' | $(SHA256SUM)
  3384. @$(TOUCH) $@
  3385. fetch-bibtool: .fetch-bibtool-$(BIBTOOL_VERSION)
  3386. .extract-bibtool-$(BIBTOOL_VERSION): .fetch-bibtool-$(BIBTOOL_VERSION)
  3387. $(RM) $(BIBTOOL_BUILD_DIR)
  3388. $(TAR) -xzf $(BIBTOOL_TARBALL)
  3389. @$(TOUCH) $@
  3390. extract-bibtool: .extract-bibtool-$(BIBTOOL_VERSION)
  3391. .configure-bibtool-$(BIBTOOL_VERSION): .extract-bibtool-$(BIBTOOL_VERSION)
  3392. cd $(BIBTOOL_BUILD_DIR) && ./configure --prefix=$(BIBTOOL_INSTALL_DIR) $(BIBTOOL_CONFIGURE_FLAGS)
  3393. @$(TOUCH) $@
  3394. configure-bibtool: .configure-bibtool-$(BIBTOOL_VERSION)
  3395. .build-bibtool-$(BIBTOOL_VERSION): .configure-bibtool-$(BIBTOOL_VERSION)
  3396. cd $(BIBTOOL_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  3397. @$(TOUCH) $@
  3398. build-bibtool: .build-bibtool-$(BIBTOOL_VERSION)
  3399. install-bibtool: .build-bibtool-$(BIBTOOL_VERSION)
  3400. cd $(BIBTOOL_BUILD_DIR) && $(MAKE) install
  3401. install -d $(BIBTOOL_INSTALL_DIR)/share/man/man1
  3402. cd $(BIBTOOL_BUILD_DIR) && install -m 644 doc/bibtool.1 $(BIBTOOL_INSTALL_DIR)/share/man/man1
  3403. clean-bibtool:
  3404. @$(RM) .build-bibtool-$(BIBTOOL_VERSION)
  3405. @$(RM) .configure-bibtool-$(BIBTOOL_VERSION)
  3406. @$(RM) .extract-bibtool-$(BIBTOOL_VERSION)
  3407. $(RM) $(BIBTOOL_BUILD_DIR)
  3408. distclean-bibtool: clean-bibtool
  3409. @$(RM) .fetch-bibtool-$(BIBTOOL_VERSION)
  3410. $(RM) $(BIBTOOL_TARBALL)
  3411. env-bibtool:
  3412. @echo 'export PATH="$(BIBTOOL_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  3413. @echo 'export MANPATH="$(BIBTOOL_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  3414. #
  3415. # MuPDF
  3416. #
  3417. MUPDF_VERSION = 1.11
  3418. MUPDF_TARBALL = mupdf-$(MUPDF_VERSION)-source.tar.gz
  3419. MUPDF_TARBALL_URL = https://mupdf.com/downloads/$(MUPDF_TARBALL)
  3420. MUPDF_TARBALL_SHA256 = 209474a80c56a035ce3f4958a63373a96fad75c927c7b1acdc553fc85855f00a
  3421. MUPDF_BUILD_DIR = mupdf-$(MUPDF_VERSION)-source
  3422. MUPDF_BUILD_FLAGS = HAVE_GLFW=no
  3423. MUPDF_INSTALL_DIR = $(PREFIX)/mupdf-$(MUPDF_VERSION)
  3424. .fetch-mupdf-$(MUPDF_VERSION):
  3425. @$(RM) $(MUPDF_TARBALL)
  3426. $(WGET) -O $(MUPDF_TARBALL) $(MUPDF_TARBALL_URL)
  3427. @echo '$(MUPDF_TARBALL_SHA256) $(MUPDF_TARBALL)' | $(SHA256SUM)
  3428. @$(TOUCH) $@
  3429. fetch-mupdf: .fetch-mupdf-$(MUPDF_VERSION)
  3430. .extract-mupdf-$(MUPDF_VERSION): .fetch-mupdf-$(MUPDF_VERSION)
  3431. $(RM) $(MUPDF_BUILD_DIR)
  3432. $(TAR) -xzf $(MUPDF_TARBALL)
  3433. @$(TOUCH) $@
  3434. extract-mupdf: .extract-mupdf-$(MUPDF_VERSION)
  3435. .build-mupdf-$(MUPDF_VERSION): .extract-mupdf-$(MUPDF_VERSION)
  3436. cd $(MUPDF_BUILD_DIR) && $(MAKE) $(MUPDF_BUILD_FLAGS) $(PARALLEL_BUILD_FLAGS)
  3437. @$(TOUCH) $@
  3438. build-mupdf: .build-mupdf-$(MUPDF_VERSION)
  3439. install-mupdf: .build-mupdf-$(MUPDF_VERSION)
  3440. cd $(MUPDF_BUILD_DIR) && $(MAKE) install prefix=$(MUPDF_INSTALL_DIR) $(MUPDF_BUILD_FLAGS)
  3441. clean-mupdf:
  3442. @$(RM) .build-mupdf-$(MUPDF_VERSION)
  3443. @$(RM) .extract-mupdf-$(MUPDF_VERSION)
  3444. $(RM) $(MUPDF_BUILD_DIR)
  3445. distclean-mupdf: clean-mupdf
  3446. @$(RM) .fetch-mupdf-$(MUPDF_VERSION)
  3447. $(RM) $(MUPDF_TARBALL)
  3448. env-mupdf:
  3449. @echo 'export PATH="$(MUPDF_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  3450. @echo 'export MANPATH="$(MUPDF_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  3451. #
  3452. # OpenBLAS
  3453. #
  3454. OPENBLAS_VERSION = 0.2.20
  3455. OPENBLAS_TARBALL = OpenBLAS-$(OPENBLAS_VERSION).tar.gz
  3456. OPENBLAS_TARBALL_URL = https://github.com/xianyi/OpenBLAS/archive/v$(OPENBLAS_VERSION).tar.gz
  3457. OPENBLAS_TARBALL_SHA256 = 5ef38b15d9c652985774869efd548b8e3e972e1e99475c673b25537ed7bcf394
  3458. OPENBLAS_BUILD_DIR = OpenBLAS-$(OPENBLAS_VERSION)
  3459. OPENBLAS_BUILD_FLAGS =
  3460. OPENBLAS_INSTALL_DIR = $(PREFIX)/openblas-$(OPENBLAS_VERSION)
  3461. .fetch-openblas-$(OPENBLAS_VERSION):
  3462. @$(RM) $(OPENBLAS_TARBALL)
  3463. $(WGET) -O $(OPENBLAS_TARBALL) $(OPENBLAS_TARBALL_URL)
  3464. @echo '$(OPENBLAS_TARBALL_SHA256) $(OPENBLAS_TARBALL)' | $(SHA256SUM)
  3465. @$(TOUCH) $@
  3466. fetch-openblas: .fetch-openblas-$(OPENBLAS_VERSION)
  3467. .extract-openblas-$(OPENBLAS_VERSION): .fetch-openblas-$(OPENBLAS_VERSION)
  3468. $(RM) $(OPENBLAS_BUILD_DIR)
  3469. $(TAR) -xzf $(OPENBLAS_TARBALL)
  3470. @$(TOUCH) $@
  3471. extract-openblas: .extract-openblas-$(OPENBLAS_VERSION)
  3472. .build-openblas-$(OPENBLAS_VERSION): .extract-openblas-$(OPENBLAS_VERSION)
  3473. cd $(OPENBLAS_BUILD_DIR) && $(MAKE) $(OPENBLAS_BUILD_FLAGS) $(PARALLEL_BUILD_FLAGS)
  3474. @$(TOUCH) $@
  3475. build-openblas: .build-openblas-$(OPENBLAS_VERSION)
  3476. install-openblas: .build-openblas-$(OPENBLAS_VERSION)
  3477. cd $(OPENBLAS_BUILD_DIR) && $(MAKE) install PREFIX=$(OPENBLAS_INSTALL_DIR) $(OPENBLAS_BUILD_FLAGS)
  3478. clean-openblas:
  3479. @$(RM) .build-openblas-$(OPENBLAS_VERSION)
  3480. @$(RM) .extract-openblas-$(OPENBLAS_VERSION)
  3481. $(RM) $(OPENBLAS_BUILD_DIR)
  3482. distclean-openblas: clean-openblas
  3483. @$(RM) .fetch-openblas-$(OPENBLAS_VERSION)
  3484. $(RM) $(OPENBLAS_TARBALL)
  3485. env-openblas:
  3486. @echo 'export CPATH="$(OPENBLAS_INSTALL_DIR)/include$${CPATH+:$$CPATH}"'
  3487. @echo 'export LIBRARY_PATH="$(OPENBLAS_INSTALL_DIR)/lib$${LIBRARY_PATH+:$$LIBRARY_PATH}"'
  3488. @echo 'export LD_LIBRARY_PATH="$(OPENBLAS_INSTALL_DIR)/lib$${LD_LIBRARY_PATH+:$$LD_LIBRARY_PATH}"'
  3489. @echo 'export PKG_CONFIG_PATH="$(OPENBLAS_INSTALL_DIR)/lib/pkgconfig$${PKG_CONFIG_PATH+:$$PKG_CONFIG_PATH}"'
  3490. @echo 'export CMAKE_PREFIX_PATH="$(OPENBLAS_INSTALL_DIR)$${CMAKE_PREFIX_PATH+:$$CMAKE_PREFIX_PATH}"'
  3491. #
  3492. # OptiPNG
  3493. #
  3494. OPTIPNG_VERSION = 0.7.6
  3495. OPTIPNG_TARBALL = optipng-$(OPTIPNG_VERSION).tar.gz
  3496. OPTIPNG_TARBALL_URL = https://downloads.sourceforge.net/optipng/$(OPTIPNG_TARBALL)
  3497. OPTIPNG_TARBALL_SHA256 = 4870631fcbd3825605f00a168b8debf44ea1cda8ef98a73e5411eee97199be80
  3498. OPTIPNG_BUILD_DIR = optipng-$(OPTIPNG_VERSION)
  3499. OPTIPNG_CONFIGURE_FLAGS =
  3500. OPTIPNG_INSTALL_DIR = $(PREFIX)/optipng-$(OPTIPNG_VERSION)
  3501. .fetch-optipng-$(OPTIPNG_VERSION):
  3502. @$(RM) $(OPTIPNG_TARBALL)
  3503. $(WGET) -O $(OPTIPNG_TARBALL) $(OPTIPNG_TARBALL_URL)
  3504. @echo '$(OPTIPNG_TARBALL_SHA256) $(OPTIPNG_TARBALL)' | $(SHA256SUM)
  3505. @$(TOUCH) $@
  3506. fetch-optipng: .fetch-optipng-$(OPTIPNG_VERSION)
  3507. .extract-optipng-$(OPTIPNG_VERSION): .fetch-optipng-$(OPTIPNG_VERSION)
  3508. $(RM) $(OPTIPNG_BUILD_DIR)
  3509. $(TAR) -xzf $(OPTIPNG_TARBALL)
  3510. @$(TOUCH) $@
  3511. extract-optipng: .extract-optipng-$(OPTIPNG_VERSION)
  3512. .configure-optipng-$(OPTIPNG_VERSION): .extract-optipng-$(OPTIPNG_VERSION)
  3513. cd $(OPTIPNG_BUILD_DIR) && ./configure -prefix=$(OPTIPNG_INSTALL_DIR) $(OPTIPNG_CONFIGURE_FLAGS)
  3514. @$(TOUCH) $@
  3515. configure-optipng: .configure-optipng-$(OPTIPNG_VERSION)
  3516. .build-optipng-$(OPTIPNG_VERSION): .configure-optipng-$(OPTIPNG_VERSION)
  3517. cd $(OPTIPNG_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  3518. @$(TOUCH) $@
  3519. build-optipng: .build-optipng-$(OPTIPNG_VERSION)
  3520. install-optipng: .build-optipng-$(OPTIPNG_VERSION)
  3521. cd $(OPTIPNG_BUILD_DIR) && $(MAKE) install
  3522. clean-optipng:
  3523. @$(RM) .build-optipng-$(OPTIPNG_VERSION)
  3524. @$(RM) .configure-optipng-$(OPTIPNG_VERSION)
  3525. @$(RM) .extract-optipng-$(OPTIPNG_VERSION)
  3526. $(RM) $(OPTIPNG_BUILD_DIR)
  3527. distclean-optipng: clean-optipng
  3528. @$(RM) .fetch-optipng-$(OPTIPNG_VERSION)
  3529. $(RM) $(OPTIPNG_TARBALL)
  3530. env-optipng:
  3531. @echo 'export PATH="$(OPTIPNG_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  3532. @echo 'export MANPATH="$(OPTIPNG_INSTALL_DIR)/man$${MANPATH+:$$MANPATH}"'
  3533. #
  3534. # Lmod
  3535. #
  3536. LMOD_VERSION = 7.7
  3537. LMOD_TARBALL = Lmod-$(LMOD_VERSION).tar.bz2
  3538. LMOD_TARBALL_URL = https://downloads.sourceforge.net/lmod/$(LMOD_TARBALL)
  3539. LMOD_TARBALL_SHA256 = 6d4360ffecaa346d720ae7140deef01727df08d5f8cf39a07148de5807287eef
  3540. LMOD_BUILD_DIR = Lmod-$(LMOD_VERSION)
  3541. LMOD_CONFIGURE_FLAGS = --without-tcl
  3542. LMOD_INSTALL_DIR = $(PREFIX)/lmod-$(LMOD_VERSION)
  3543. .fetch-lmod-$(LMOD_VERSION):
  3544. @$(RM) $(LMOD_TARBALL)
  3545. $(WGET) -O $(LMOD_TARBALL) $(LMOD_TARBALL_URL)
  3546. @echo '$(LMOD_TARBALL_SHA256) $(LMOD_TARBALL)' | $(SHA256SUM)
  3547. @$(TOUCH) $@
  3548. fetch-lmod: .fetch-lmod-$(LMOD_VERSION)
  3549. .extract-lmod-$(LMOD_VERSION): .fetch-lmod-$(LMOD_VERSION)
  3550. $(RM) $(LMOD_BUILD_DIR)
  3551. $(TAR) -xf $(LMOD_TARBALL)
  3552. @$(TOUCH) $@
  3553. extract-lmod: .extract-lmod-$(LMOD_VERSION)
  3554. .configure-lmod-$(LMOD_VERSION): .extract-lmod-$(LMOD_VERSION)
  3555. cd $(LMOD_BUILD_DIR) && ./configure -prefix=$(LMOD_INSTALL_DIR) $(LMOD_CONFIGURE_FLAGS)
  3556. @$(TOUCH) $@
  3557. configure-lmod: .configure-lmod-$(LMOD_VERSION)
  3558. .build-lmod-$(LMOD_VERSION): .configure-lmod-$(LMOD_VERSION)
  3559. cd $(LMOD_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  3560. @$(TOUCH) $@
  3561. build-lmod: .build-lmod-$(LMOD_VERSION)
  3562. install-lmod: .build-lmod-$(LMOD_VERSION)
  3563. cd $(LMOD_BUILD_DIR) && $(MAKE) install
  3564. clean-lmod:
  3565. @$(RM) .build-lmod-$(LMOD_VERSION)
  3566. @$(RM) .configure-lmod-$(LMOD_VERSION)
  3567. @$(RM) .extract-lmod-$(LMOD_VERSION)
  3568. $(RM) $(LMOD_BUILD_DIR)
  3569. distclean-lmod: clean-lmod
  3570. @$(RM) .fetch-lmod-$(LMOD_VERSION)
  3571. $(RM) $(LMOD_TARBALL)
  3572. env-lmod:
  3573. @echo 'export PATH="$(LMOD_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  3574. @echo 'export MANPATH="$(LMOD_INSTALL_DIR)/man$${MANPATH+:$$MANPATH}"'
  3575. #
  3576. # Open MPI
  3577. #
  3578. OPENMPI_VERSION = 2.1.2
  3579. OPENMPI_TARBALL = openmpi-$(OPENMPI_VERSION).tar.bz2
  3580. OPENMPI_TARBALL_URL = https://www.open-mpi.org/software/ompi/v2.1/downloads/$(OPENMPI_TARBALL)
  3581. OPENMPI_TARBALL_SHA256 = 3cc5804984c5329bdf88effc44f2971ed244a29b256e0011b8deda02178dd635
  3582. OPENMPI_BUILD_DIR = openmpi-$(OPENMPI_VERSION)
  3583. OPENMPI_CONFIGURE_FLAGS =
  3584. OPENMPI_INSTALL_DIR = $(PREFIX)/openmpi-$(OPENMPI_VERSION)
  3585. .fetch-openmpi-$(OPENMPI_VERSION):
  3586. @$(RM) $(OPENMPI_TARBALL)
  3587. $(WGET) -O $(OPENMPI_TARBALL) $(OPENMPI_TARBALL_URL)
  3588. @echo '$(OPENMPI_TARBALL_SHA256) $(OPENMPI_TARBALL)' | $(SHA256SUM)
  3589. @$(TOUCH) $@
  3590. fetch-openmpi: .fetch-openmpi-$(OPENMPI_VERSION)
  3591. .extract-openmpi-$(OPENMPI_VERSION): .fetch-openmpi-$(OPENMPI_VERSION)
  3592. $(RM) $(OPENMPI_BUILD_DIR)
  3593. $(TAR) -xf $(OPENMPI_TARBALL)
  3594. @$(TOUCH) $@
  3595. extract-openmpi: .extract-openmpi-$(OPENMPI_VERSION)
  3596. .configure-openmpi-$(OPENMPI_VERSION): .extract-openmpi-$(OPENMPI_VERSION)
  3597. cd $(OPENMPI_BUILD_DIR) && ./configure --prefix=$(OPENMPI_INSTALL_DIR) $(OPENMPI_CONFIGURE_FLAGS)
  3598. @$(TOUCH) $@
  3599. configure-openmpi: .configure-openmpi-$(OPENMPI_VERSION)
  3600. .build-openmpi-$(OPENMPI_VERSION): .configure-openmpi-$(OPENMPI_VERSION)
  3601. cd $(OPENMPI_BUILD_DIR) && $(MAKE) $(PARALLEL_BUILD_FLAGS)
  3602. @$(TOUCH) $@
  3603. build-openmpi: .build-openmpi-$(OPENMPI_VERSION)
  3604. install-openmpi: .build-openmpi-$(OPENMPI_VERSION)
  3605. cd $(OPENMPI_BUILD_DIR) && $(MAKE) install
  3606. clean-openmpi:
  3607. @$(RM) .build-openmpi-$(OPENMPI_VERSION)
  3608. @$(RM) .configure-openmpi-$(OPENMPI_VERSION)
  3609. @$(RM) .extract-openmpi-$(OPENMPI_VERSION)
  3610. $(RM) $(OPENMPI_BUILD_DIR)
  3611. distclean-openmpi: clean-openmpi
  3612. @$(RM) .fetch-openmpi-$(OPENMPI_VERSION)
  3613. $(RM) $(OPENMPI_TARBALL)
  3614. env-openmpi:
  3615. @echo 'export PATH="$(OPENMPI_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  3616. @echo 'export MANPATH="$(OPENMPI_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'
  3617. @echo 'export CPATH="$(OPENMPI_INSTALL_DIR)/include$${CPATH+:$$CPATH}"'
  3618. @echo 'export LIBRARY_PATH="$(OPENMPI_INSTALL_DIR)/lib$${LIBRARY_PATH+:$$LIBRARY_PATH}"'
  3619. @echo 'export LD_LIBRARY_PATH="$(OPENMPI_INSTALL_DIR)/lib$${LD_LIBRARY_PATH+:$$LD_LIBRARY_PATH}"'
  3620. @echo 'export PKG_CONFIG_PATH="$(OPENMPI_INSTALL_DIR)/lib/pkgconfig$${PKG_CONFIG_PATH+:$$PKG_CONFIG_PATH}"'
  3621. @echo 'export CMAKE_PREFIX_PATH="$(OPENMPI_INSTALL_DIR)$${CMAKE_PREFIX_PATH+:$$CMAKE_PREFIX_PATH}"'
  3622. #
  3623. # Password manager
  3624. #
  3625. PASS_VERSION = 1.7.1
  3626. PASS_TARBALL = password-store-$(PASS_VERSION).tar.xz
  3627. PASS_TARBALL_URL = https://git.zx2c4.com/password-store/snapshot/$(PASS_TARBALL)
  3628. PASS_TARBALL_SHA256 = f6d2199593398aaefeaa55e21daddfb7f1073e9e096af6d887126141e99d9869
  3629. PASS_BUILD_DIR = password-store-$(PASS_VERSION)
  3630. PASS_INSTALL_DIR = $(PREFIX)/pass-$(PASS_VERSION)
  3631. .fetch-pass-$(PASS_VERSION):
  3632. @$(RM) $(PASS_TARBALL)
  3633. $(WGET) -O $(PASS_TARBALL) $(PASS_TARBALL_URL)
  3634. @echo '$(PASS_TARBALL_SHA256) $(PASS_TARBALL)' | $(SHA256SUM)
  3635. @$(TOUCH) $@
  3636. fetch-pass: .fetch-pass-$(PASS_VERSION)
  3637. .extract-pass-$(PASS_VERSION): .fetch-pass-$(PASS_VERSION)
  3638. $(RM) $(PASS_BUILD_DIR)
  3639. $(TAR) -xf $(PASS_TARBALL)
  3640. @$(TOUCH) $@
  3641. extract-pass: .extract-pass-$(PASS_VERSION)
  3642. install-pass: .extract-pass-$(PASS_VERSION)
  3643. cd $(PASS_BUILD_DIR) && $(MAKE) install PREFIX=$(PASS_INSTALL_DIR)
  3644. clean-pass:
  3645. @$(RM) .extract-pass-$(PASS_VERSION)
  3646. $(RM) $(PASS_BUILD_DIR)
  3647. distclean-pass: clean-pass
  3648. @$(RM) .fetch-pass-$(PASS_VERSION)
  3649. $(RM) $(PASS_TARBALL)
  3650. env-pass:
  3651. @echo 'export PATH="$(PASS_INSTALL_DIR)/bin$${PATH+:$$PATH}"'
  3652. @echo 'export MANPATH="$(PASS_INSTALL_DIR)/share/man$${MANPATH+:$$MANPATH}"'