mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-08 21:00:05 +02:00
Eternal Lands: add recipe
This commit is contained in:
162
games-rpg/eternal_lands/additional-files/eternal_lands.rdef.in
Normal file
162
games-rpg/eternal_lands/additional-files/eternal_lands.rdef.in
Normal file
@@ -0,0 +1,162 @@
|
||||
resource app_flags B_SINGLE_LAUNCH;
|
||||
|
||||
resource app_version {
|
||||
major = @MAJOR@,
|
||||
middle = @MIDDLE@,
|
||||
minor = @MINOR@,
|
||||
|
||||
variety = B_APPV_FINAL,
|
||||
internal = 0,
|
||||
|
||||
short_info = "Eternal Lands",
|
||||
long_info = "@LONG_INFO@"
|
||||
};
|
||||
|
||||
resource app_signature "@APP_SIGNATURE@";
|
||||
|
||||
resource vector_icon array {
|
||||
$"6E6369660403EAB65E020006023811AD3B3B9BBADB7537A8494AB06348323E00"
|
||||
$"0583C5FE034A70050104015E0A0249BB78B482BB78B482BC55B3C0BEB0B424BD"
|
||||
$"ADB397BF2CB466BFE9B533BF82B4D7C052B58FC12EB639C0B7B5F0C159B65EC1"
|
||||
$"B8B62BC18DB63AC1B1B5F2C1A1B581C1A9B5BAC1F5B57EC29FB592C250B56BC2"
|
||||
$"EDB5B7C354B640C315B608C3A9B67DC47CB692C415B692C471B645C44EB5AEC4"
|
||||
$"61B5F9C4D7B5B3C5C8B648C583B5BDC603B6A1C690B74CC605B74CC692B6F7C6"
|
||||
$"73B651C693B6A1C61EB56CC4E4B3F8C56CB4BEC594B428C6D7B4D4C647B45FC7"
|
||||
$"A6B579C8A0B752C83BB65FC8D2B7C5C921B8B1C8D6B84AC979B931CA13BA41C9"
|
||||
$"E2B9ABCA43BAD2CA38BC02CA2ABB6CCA3BBC71CAB4BD22CAC1BCAECAAEBD91CA"
|
||||
$"4EBE5FCAA7BE10C9B1BEF0C7FDBF1BC8D2BF3DC7C1BF10C769BEBEC797BEE2C7"
|
||||
$"8ABE87C7ADBE0AC7B9BE4FC7A1BDAAC72DBD0BC770BD50C6DABCB2C5F2BC7BC6"
|
||||
$"52BCC0C57BBC2FC50EBB2CC543BBA8C418BAECC234BB98C319BB41C29ABB97C3"
|
||||
$"66BBC0C30ABB85C3BBBBF7C44FBC83C403BC40C42ABC84C3E1BC86C406BC85C4"
|
||||
$"03BCCCC449BD59C426BD12C3EDBD36C330BD01C390BD15C340BD50C365BDEEC3"
|
||||
$"52BD9FC348BDE4C310BDCFC32CBDD9C2FCBD88C2B9BD04C2EABD3CC27ABCD6C1"
|
||||
$"E7BCA8C22EBCC3C27BBCA7C3A2BCB5C30EBCB3C334BC6AC230BC31C2AEBC57C2"
|
||||
$"8BBC21C340BC00C2E6BC12C29ABBC1C141BBFDC1EBBBFFC166BBC7C1CCBB70C1"
|
||||
$"8EBB8DC26ABB1FC3C6BAD4C319BAF5C440BAC1C538BAECC4C6BAB3C584BB46C5"
|
||||
$"F3BC16C59ABBC5C658BC73C759BCC5C6F4BC67C792BCFCC7DEBD89C7BEBD40C8"
|
||||
$"09BDEDC7E5BEC4C7F2BE5CC8ABBEF2CA18BE2AC982BEB2CA5EBDE8CA63BD24CA"
|
||||
$"6ABD7FCA4DBCC2C9EFBC13C9FDBC78C9D7BB73C9BABA31C9FBBACAC971B976C8"
|
||||
$"90B82DC8C2B8F4C849B709C6C6B532C7A8B5FAC683B4F6C5E2B4A7C633B4CCC6"
|
||||
$"40B54EC6DFB6AFC6C5B5EAC6EFB704C6BEB7A7C6D5B757C67FB79EC606B76FC6"
|
||||
$"34B7A2C5B4B718C557B63DC5A629C52DB61EC4C8B606C4F8B616C4BFB64DC48F"
|
||||
$"B6DDC4DCB6B3C432B6F6C37AB6B4C3D1B6D5C2F1B683C220B5C6C2BAB5D7C208"
|
||||
$"B60EC1ACB68EC1FBB66CC175B6ADC101B680C133B6A1C083B635BFACB56EC019"
|
||||
$"B5CEBF2E25BE14B440BEBFB46CBD46B40DBBB7B4C2BC57B42EBAEFB56FBA3AB7"
|
||||
$"5CBA9FB672BA28B75EB9F1B763BA042BB9F3B715BA31B684BA16B6CCBA7EB5C8"
|
||||
$"BB78B482BADEB50BBB78B482BB78B482BB78B482BB78B4820607FF1FC2A0C5E3"
|
||||
$"C2A0C5E3C271C608C27CC67FC286C64CC2A4C6BDC31EC713C2CDC70BC37EC721"
|
||||
$"C3EAC67FC3CAC6D2C40EC654C420C5E2C40FC616C3A0C5DCC2A0C5E3C31FC5D1"
|
||||
$"C2A0C5E3C5E30035BDA3B809BDA3B809BE2AB80BBF37B7F8BEAFB7F0BF6CB889"
|
||||
$"BF51B9CABFAAB93ABEBDB986BDB2B8D2BE59B8EFBD1EB8B4BC06B954BC52B8B5"
|
||||
$"BBE0B9DABBF3BAF2BBF7BA68BC4BBA79BD5FB9FBBCC2BA07BE27B9CFBEC5BB59"
|
||||
$"BECEBA9FBEC3BC0EBD5BBC93BE0DBCADBD5DBC4ABD46BBB6BD8ABBEDBD09BB71"
|
||||
$"BC5CBBC3BC95BB81BC04BC23BBE2BD26BBEEBCA9BBDCBDACBBE1BEBABBD8BE33"
|
||||
$"BBE4BF15BC85BF76BC29BF69BD22BF8EBE3DBEEDBDC6BF53BEAABE8DBF59BDA6"
|
||||
$"BF12BE26C056BDA1C250BDA8C153BD9FC274BE14C1E9BEBCC1FABE59C1D4BF5C"
|
||||
$"C1E1C09EC1E5BFFEC1E5C1D4C1F5C440C1D2C30BC18BC49EC107C59BC128C50E"
|
||||
$"C0D6C668C1CFC7C8C135C740C282C854C448C7A8C3A7C84FC498C75AC451C685"
|
||||
$"C485C6DEC426C6BEC3CCC72CC401C6FCC378C775C29CC72C48C776C20EC6BEC2"
|
||||
$"94C55CC213C5D2C2D7C513C395C4DFC33DC502C3E8C4CCC3C54BC3DBC460C391"
|
||||
$"C3C348C332C332C386C366C2B2C4C2C2F3C42EC2A2C592C358C5BFC53FC633C4"
|
||||
$"5FC57DC5CEC44BC5E4C4D5C5DEC46DC618C4AEC683C492C64BC4DBC6FCC473C7"
|
||||
$"EDC4D8C792C396C8BBC14BC7B2C204C8A6C103C758C0B7C67FC0D2C6EEC0ABC6"
|
||||
$"4BC09EC5E3C0A5C617C02FC5D7BF52C5B0BFB4C5F1BF82C53D40C44CBFC2C4CC"
|
||||
$"BFC3C31ABFB6C0B7BFB7C1E9BFB5C015BF9BBED0BFBBBF71BF67BF3DBF00C019"
|
||||
$"BF4EBFBABED8C04DBE56C04ABE91C048BCD7C049B9DAC04EBB59C048B99CC04E"
|
||||
$"B92AC018B955C04CB91CBFD5B976BF6EB95ABFA5B9ADBF25B9B3BE6EB9B3BEC7"
|
||||
$"B9B1BCF1B9B2B9F5B9B1BB73B9B0B99BB980B8EAB9B4B93830B8ADB927B831B9"
|
||||
$"27B879B94DB803B9C2B808B98DB80BBB0DB80ABDA3B809BC58B808BDA3B80902"
|
||||
$"3AB8B7BA83B8B7BA83B8D2BA47B915B9D5B8F1BA0DB91EBA32B8EABAE6B91533"
|
||||
$"B864BBF5B74BBE0DB7D6BD00B687BF96B515C2B4B5B1C118B4EAC33825C454B4"
|
||||
$"A2C3D3B525C409B570C372B5474AB5ABC308B661C26AB604C2B5B71AC1D7B8D5"
|
||||
$"C12BB7F1C16AB8A1C183B859C243B878C1E1B8A4C228B93FC202B8EEC203B980"
|
||||
$"C20AB99CC291B9A6C253B983C3A1B919C5B7B8E4C4A0B951C582B9CDC521B984"
|
||||
$"C540BA1FC506BA84C59BBA7BC547BAA3C661BAC9C7F0BA85C730BAE5C84EBB66"
|
||||
$"C8E3BB26C89ABB8DC8B8BBF2C875BBAAC867BC6CC883BD24C92ABCD0C8D6BDBC"
|
||||
$"C9CABF12CAE3BE44CA84BF1ECAABBF46CA36BF02CA4FBFBBCA15C09BCA79C02F"
|
||||
$"CA51C18ECAD6C38CCB40C28BCB18C379CB07C353CA95C366CACEC3E4CA5CC50F"
|
||||
$"CA08C482CA4DC5D0C9ADC730C8BCC696C953C70DC8B2C6C6C89DC6EAC8A7C6E3"
|
||||
$"C7E9C70CC67EC72AC738C704C5D0C68CC490C68CC53FC6EAC4DBC735C5C1C70F"
|
||||
$"C553C77AC69BC71CC85DC76AC788C754C854C7C6C843C78DC84BC79AC89BC722"
|
||||
$"C937C771C8F9C6BCC989C5D3CA01C647C9C6C524CA54C3AECABCC473CAAFC3D3"
|
||||
$"CAF6C429CB63C3FCCB2FC3D8CB78C32FCB7FC384CB91C252CB59C0A7CAD2C17B"
|
||||
$"CB1BC03DCAB0BF5FCA83BFD4CA66BF80CABD40CB31BFA1CAF6BF5CCB33BE99CA"
|
||||
$"FCBEF0CB35BDD6CA80BCAAC925BD53C9BDBC70C8EEBBDBC8BBBC26C8D1BBDDC9"
|
||||
$"04BBE1C996BBE0C94DBB60C943BA9BC850BADDC8E1BA36C781BA38C5B5BA50C6"
|
||||
$"94BA39C577B9BFC57AB9EE4EB970C5B8B94CC680B96DC628B8FDC62CB8BBC54B"
|
||||
$"B8BBC5C2B8B4C441B948C248B955C352B8C2C251B809C309B86CC2BDB80BC298"
|
||||
$"B829C1B9B818C228B740C21FB5C5C37DB65FC2AEB585C3CEB55AC497B56DC434"
|
||||
$"B50AC494B48AC428B4A0C486B468C379B4F4C22EB4B9C2CFB60CBF8CB8B7BA83"
|
||||
$"B77FBD16B8B7BA83B8B7BA83B8B7BA83B8B7BA830214BE33C25FBE33C25FBE6D"
|
||||
$"C1DABF07C0E0BE91C140BF04C109BEFDC15CBF0CC135BEB5C1EEBE41C320BE73"
|
||||
$"C284BE17C3A3BE20C4B4BE1FC42DBDFEC490BDB8C447BDDBC46BBDEBC5D0C00B"
|
||||
$"C827BEBCC74BC0EBC8B5C301C8FEC1F3C91DC3CF57C50EC7D6C49AC885C559C7"
|
||||
$"6AC582C667C56FC6E6C583C660C585C653C584C659C59CC646C5CCC62EC5B4C6"
|
||||
$"3AC5D4C706C4E8C87CC589C7E7C412C940C1C0C939C2D5C97BC0D0C900BF36C7"
|
||||
$"E6BFEFC889BDF8C6C1BD58C361BD58C50CBD69C362BD9EC367BD8CC366BDAFC3"
|
||||
$"7EBDD3C3ACBDC1C395BDE5C339BE33C25FBE06C2CABE33C25FBE33C25FBE33C2"
|
||||
$"5FBE33C25F0243BDA3B809BDA3B809BC58B808B9C2B808BB0DB80AB98DB80BB9"
|
||||
$"27B831B94DB803B927B879B980B8EA30B8ADB9B4B938B9B2B9F5B9B0B99BB9B1"
|
||||
$"BB73B9B3BE6EB9B1BCF1B9B3BEC7B976BF6EB9ADBF25B95ABFA5B92AC018B91C"
|
||||
$"BFD5B955C04CB9DAC04EB99CC04EBB59C048BE56C04ABCD7C049BE91C048BF00"
|
||||
$"C019BED8C04DBF4EBFBABF9BBED0BF67BF3DBFBBBF71BFB6C0B7BFB5C015BFB7"
|
||||
$"C1E940C44CBFC3C31ABFC2C4CCBF52C5B0BF82C53DBFB4C5F1C09EC5E3C02FC5"
|
||||
$"D7C0A5C617C0B7C67FC0ABC64BC043C67EBF5BC673BFCDC68BBEF0C65CBEB8C5"
|
||||
$"7FBE9EC5ECBED8C508BF1AC41ABF26C49BBF0EC331BEFDC15CBF2CC243BF0CC1"
|
||||
$"35BF07C0E0BF04C109BE91C140BE33C25FBE6DC1DABE06C2CABDD3C3ACBDE5C3"
|
||||
$"39BDC1C395BD9EC367BDAFC37EBD8CC366BD58C361BD69C362BD58C50CBF36C7"
|
||||
$"E6BDF8C6C1BFEFC889C1C0C939C0D0C900C2D5C97BC4E8C87CC412C940C589C7"
|
||||
$"E7C5CCC62EC5D4C706C5B4C63AC585C653C59CC646C584C659C582C667C583C6"
|
||||
$"60C53BC66FC4AEC683C4F4C679C492C64BC44BC5E4C46DC618C4D5C5DEC5BFC5"
|
||||
$"3FC57DC5CEC633C45FC4C2C2F3C592C358C42EC2A248C332C366C2B2C332C386"
|
||||
$"C3C54BC391C3C3C3DBC460C395C4DFC3E8C4CCC33DC502C294C55CC2D7C513C2"
|
||||
$"13C5D2C29CC72CC20EC6BE48C776C3CCC72CC378C775C401C6FCC451C685C426"
|
||||
$"C6BEC485C6DEC448C7A8C498C75AC3A7C84FC1CFC7C8C282C854C135C740C107"
|
||||
$"C59BC0D6C668C128C50EC1F5C440C18BC49EC1D2C30BC1E1C09EC1E5C1D4C1E5"
|
||||
$"BFFEC1E9BEBCC1D4BF5CC1FABE59C250BDA8C274BE14C153BD9FBF59BDA6C056"
|
||||
$"BDA1BF12BE26BE3DBEEDBEAABE8DBDC6BF53BC85BF76BD22BF8EBC29BF69BBE1"
|
||||
$"BEBABBE4BF15BBD8BE33BBE2BD26BBDCBDACBBEEBCA9BC5CBBC3BC04BC23BC95"
|
||||
$"BB81BD46BBB6BD09BB71BD8ABBEDBD5BBC93BD5DBC4ABE0DBCADBEC5BB59BEC3"
|
||||
$"BC0EBECEBA9FBD5FB9FBBE27B9CFBCC2BA07BBF3BAF2BC4BBA79BBF7BA68BC06"
|
||||
$"B954BBE0B9DABC52B8B5BDB2B8D2BD1EB8B4BE59B8EFBF51B9CABEBDB986BFAA"
|
||||
$"B93ABF37B7F8BF6CB889BEAFB7F0BDA3B809BE2AB80BBDA3B809BDA3B809BDA3"
|
||||
$"B809BDA3B8090047BBB7B4C2BBB7B4C2BC57B42EBE14B440BD46B40DBEBFB46C"
|
||||
$"BFACB56EBF2E25C019B5CEC101B680C083B635C133B6A1C1ACB68EC175B6ADC1"
|
||||
$"FBB66CC220B5C6C208B60EC2BAB5D7C37AB6B4C2F1B683C3D1B6D5C48FB6DDC4"
|
||||
$"32B6F6C4DCB6B3C4C8B606C4BFB64DC4F8B616C557B63DC52DB61EC5A629C606"
|
||||
$"B76FC5B4B718C634B7A2C6BEB7A7C67FB79EC6D5B757C6DFB6AFC6EFB704C6C5"
|
||||
$"B5EAC5E2B4A7C640B54EC633B4CCC6C6B532C683B4F6C7A8B5FAC890B82DC849"
|
||||
$"B709C8C2B8F4C9BABA31C971B976C9FBBACAC9EFBC13C9D7BB73C9FDBC78CA63"
|
||||
$"BD24CA4DBCC2CA6ABD7FCA18BE2ACA5EBDE8C982BEB2C7E5BEC4C8ABBEF2C7F2"
|
||||
$"BE5CC7DEBD89C809BDEDC7BEBD40C759BCC5C792BCFCC6F4BC67C5F3BC16C658"
|
||||
$"BC73C59ABBC5C538BAECC584BB46C4C6BAB3C3C6BAD4C440BAC1C319BAF5C1CC"
|
||||
$"BB70C26ABB1FC18EBB8DC141BBFDC166BBC7C1EBBBFFC340BC00C29ABBC1C2E6"
|
||||
$"BC12C230BC31C28BBC21C2AEBC57C3A2BCB5C334BC6AC30EBCB3C1E7BCA8C27B"
|
||||
$"BCA7C22EBCC3C2B9BD04C27ABCD6C2EABD3CC310BDCFC2FCBD88C304BE3D47BE"
|
||||
$"F2C2ADBE8DC27DBF33C280BFB9C281BF77C285C0AFC283C29CC27FC1A6C2DCC2"
|
||||
$"6AC39DC222C336C232C508C1E8C68CC490C683C31FC68CC53FC70CC67EC704C5"
|
||||
$"D0C72AC738C6C6C89DC6E3C7E9C6EAC8A7C730C8BCC70DC8B2C696C953C50FCA"
|
||||
$"08C5D0C9ADC482CA4DC353CA95C3E4CA5CC366CACEC38CCB40C379CB07C28BCB"
|
||||
$"18C09BCA79C18ECAD6C02FCA51BF46CA36BFBBCA15BF02CA4FBF12CAE3BF1ECA"
|
||||
$"ABBE44CA84BD24C92ABDBCC9CABCD0C8D6BBF2C875BC6CC883BBAAC867BB66C8"
|
||||
$"E3BB8DC8B8BB26C89ABAC9C7F0BAE5C84EBA85C730BA84C59BBAA3C661BA7BC5"
|
||||
$"47B9CDC521BA1FC506B984C540B919C5B7B951C582B8E4C4A0B99CC291B983C3"
|
||||
$"A1B9A6C253B93FC202B980C20AB8EEC203B859C243B8A4C228B878C1E1B8D5C1"
|
||||
$"2BB8A1C183B7F1C16AB661C26AB71AC1D7B604C2B5B570C372B5ABC308B5474A"
|
||||
$"25C454B525C409B4A2C3D3B515C2B4B4EAC338B5B1C118B74BBE0DB687BF96B7"
|
||||
$"D6BD00B8EABAE6B864BBF5B91533B915B9D5B91EBA32B919B96EB8A8B8C5B8DD"
|
||||
$"B918B85FB85CB905B784B88EB7B6B965B75EBA32B76DB9CEB770BA35B767BA3A"
|
||||
$"B75CBA372BBA9FB672BBB7B4C2BAEFB56FBBB7B4C20606FF07C2A0C5E3C2A0C5"
|
||||
$"E3C31FC5D1C420C5E2C3A0C5DCC40FC616C3EAC67FC40EC654C370C683C27CC6"
|
||||
$"7FC2F6C67FC286C64CC2A0C5E3C271C608C2A0C5E3C5E30608FF7FC80AC707C8"
|
||||
$"0AC707C84FC6CBC909C706C8C8C6BFC8EBC706C8AEC705C8CCC705C8B1C74EC8"
|
||||
$"B8C7E1C8B4C797C89EC7E1C86AC7E156C7E1C86DC798C872C705C86FC74EC84F"
|
||||
$"C706C80AC707C82CC707C80AC707C707020CC926C6D6C926C6D6C95152C9A3C7"
|
||||
$"22C97AC706C9C0C706C9F9C6CEC9DBC6E8CA1AC724CA25C7DBCA21C780CA0BC7"
|
||||
$"DDC9D6C7E1C9F0C7DFC9D3C7ADC9CCC744C9D0C778C9B5C75BC989C78AC99FC7"
|
||||
$"73C971C773C942C746C959C75CC93FC778C93BC7DBC93CC7AAC932C7DCC915C7"
|
||||
$"DCC91EC7DCC91CC785C926C6D6C922C72DC926C6D6C926C6D6C926C6D6C926C6"
|
||||
$"D6080A0306000103020406123F30890000000000003E1F3147DA2E49D6F10117"
|
||||
$"8300040A02060001030204061001178300040A000100000A00020102000A0001"
|
||||
$"03000A000104000A01020506000A01010700"
|
||||
};
|
||||
132
games-rpg/eternal_lands/eternal_lands-1.9.5~pre20200222.recipe
Normal file
132
games-rpg/eternal_lands/eternal_lands-1.9.5~pre20200222.recipe
Normal file
@@ -0,0 +1,132 @@
|
||||
SUMMARY="A 3D fantasy MMORPG"
|
||||
DESCRIPTION="So why play Eternal Lands, when there are so many free MMORPGs out there? \
|
||||
Well, there are many reasons why, but here are a few:
|
||||
|
||||
* Friendly community. Most of the people here are friendly, and they will try to \
|
||||
help you if they can.
|
||||
* There are 12 skills in the game: Attack, Defense, Harvest, Alchemy, Magic, Potion, \
|
||||
Summoning, Manufacturing, Crafting, Engineering, Tailoring and Ranging.
|
||||
* There are no fixed class restrictions, so you can develop your character in any way \
|
||||
you wish. You, as a player, determine exactly how you develop your character. If you \
|
||||
make mistakes, or decide to change or adjust your build, you can do so.
|
||||
* Eternal Lands is not just about combat. Many players focus on more peaceful activities \
|
||||
such as collecting resources, creating items, summoning monsters and so on. But if you \
|
||||
like combat, there is plenty of it as well, both PvP and PvE.
|
||||
* The game client is relatively small, the download being only 50MB. That's under a \
|
||||
minute on a cable modem, and a few minutes on a DSL connection.
|
||||
* Eternal Lands is a multiplatform game, running on Windows, Linux, Haiku and OSX (Mac). \
|
||||
The client is open source.."
|
||||
HOMEPAGE="http://www.eternal-lands.com/"
|
||||
COPYRIGHT="2003-2021 Eternal Lands Team"
|
||||
LICENSE="ELCPL 1.0"
|
||||
REVISION="1"
|
||||
srcGitRev="eadf3ac8cd24ab925391c3dcb27015cc3e81c452"
|
||||
SOURCE_URI="https://github.com/raduprv/Eternal-Lands/archive/$srcGitRev.tar.gz"
|
||||
CHECKSUM_SHA256="a439ae0a40fdde703a367071387d65714b605e9b4e0802ced0d62627580325f5"
|
||||
SOURCE_DIR="Eternal-Lands-$srcGitRev"
|
||||
SOURCE_URI_2="https://github.com/raduprv/Eternal-Lands/releases/download/1.9.5.7/el_195_p7_data_files.zip"
|
||||
CHECKSUM_SHA256_2="32fc28333058955f1b1c11e21ee514d9596743ee6a3628c3bbbba2e4de7d533f"
|
||||
SOURCE_URI_3="http://www.gm.fh-koeln.de/~linke/EL-Downloads/EL_sound_191.zip"
|
||||
CHECKSUM_SHA256_3="94dfcb37ab85f154fa33309a7bf10ca9998a68c5865f85f3d31797625da18f86"
|
||||
SOURCE_URI_4="http://www.gm.fh-koeln.de/~linke/EL-Downloads/EL_music_full.zip"
|
||||
CHECKSUM_SHA256_4="1ea4de25081034ac684aaebf127ab6ca8524ba5367532863d84d63837dd631ec"
|
||||
|
||||
PATCHES="eternal_lands-$portVersion.patchset"
|
||||
ADDITIONAL_FILES="eternal_lands.rdef.in"
|
||||
|
||||
ARCHITECTURES="!x86_gcc2 x86_64"
|
||||
SECONDARY_ARCHITECTURES="x86"
|
||||
|
||||
PROVIDES="
|
||||
eternal_lands$secondaryArchSuffix = $portVersion
|
||||
app:EternalLands
|
||||
"
|
||||
REQUIRES="
|
||||
haiku$secondaryArchSuffix
|
||||
lib:libcal3d$secondaryArchSuffix
|
||||
lib:libGL$secondaryArchSuffix
|
||||
lib:libGLU$secondaryArchSuffix
|
||||
lib:libiconv$secondaryArchSuffix
|
||||
lib:libjpeg$secondaryArchSuffix
|
||||
lib:libogg$secondaryArchSuffix
|
||||
lib:libopenal$secondaryArchSuffix
|
||||
lib:libpng16$secondaryArchSuffix
|
||||
lib:libSDL2_2.0$secondaryArchSuffix
|
||||
lib:libSDL2_image_2.0$secondaryArchSuffix
|
||||
lib:libSDL2_net_2.0$secondaryArchSuffix
|
||||
lib:libSDL2_ttf_2.0$secondaryArchSuffix
|
||||
lib:libvorbis$secondaryArchSuffix
|
||||
lib:libvorbisfile$secondaryArchSuffix
|
||||
lib:libxml2$secondaryArchSuffix
|
||||
lib:libz$secondaryArchSuffix
|
||||
"
|
||||
|
||||
BUILD_REQUIRES="
|
||||
haiku${secondaryArchSuffix}_devel
|
||||
devel:libcal3d$secondaryArchSuffix
|
||||
devel:libGL$secondaryArchSuffix
|
||||
devel:libGLU$secondaryArchSuffix
|
||||
devel:libiconv$secondaryArchSuffix
|
||||
devel:libjpeg$secondaryArchSuffix
|
||||
devel:libogg$secondaryArchSuffix
|
||||
devel:libopenal$secondaryArchSuffix
|
||||
devel:libpng16$secondaryArchSuffix
|
||||
devel:libSDL2$secondaryArchSuffix
|
||||
devel:libSDL2_image$secondaryArchSuffix
|
||||
devel:libSDL2_net$secondaryArchSuffix
|
||||
devel:libSDL2_ttf$secondaryArchSuffix
|
||||
devel:libvorbis$secondaryArchSuffix
|
||||
devel:libvorbisfile$secondaryArchSuffix
|
||||
devel:libxml2$secondaryArchSuffix
|
||||
devel:libz$secondaryArchSuffix
|
||||
devel:nlohmann_json
|
||||
"
|
||||
BUILD_PREREQUIRES="
|
||||
cmd:cmake
|
||||
cmd:gcc$secondaryArchSuffix
|
||||
cmd:ld$secondaryArchSuffix
|
||||
cmd:make
|
||||
cmd:pkg_config$secondaryArchSuffix
|
||||
"
|
||||
|
||||
BUILD()
|
||||
{
|
||||
mkdir -p build
|
||||
cd build
|
||||
cmake .. \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DSDL2_INCLUDE_DIR=/system/$relativeIncludeDir \
|
||||
-DSDL2TTF_INCLUDE_DIR=/system/$relativeIncludeDir \
|
||||
-DFSAA=OFF
|
||||
|
||||
make $jobArgs
|
||||
}
|
||||
|
||||
INSTALL()
|
||||
{
|
||||
mkdir -p $appsDir/EternalLands/music
|
||||
cp -R $sourceDir2/el_data/* $appsDir/EternalLands
|
||||
cp -R $sourceDir3/sound $appsDir/EternalLands
|
||||
cp $sourceDir4/* $appsDir/EternalLands/music
|
||||
|
||||
cp build/EternalLands $appsDir/EternalLands
|
||||
cp dev-data-files/cursors2.dds $appsDir/EternalLands/textures
|
||||
cp dev-data-files/{item_info.txt,item_knowledge_info.txt,main_icon_window.xml} $appsDir/EternalLands
|
||||
|
||||
local APP_SIGNATURE="application/x-vnd.eternal-lands"
|
||||
local MAJOR="`echo "$portVersion" | cut -d. -f1`"
|
||||
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
|
||||
local MINOR="`echo "$portVersion" | cut -d. -f3 | cut -d~ -f1`"
|
||||
local LONG_INFO="$SUMMARY"
|
||||
sed \
|
||||
-e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \
|
||||
-e "s|@MAJOR@|$MAJOR|" \
|
||||
-e "s|@MIDDLE@|$MIDDLE|" \
|
||||
-e "s|@MINOR@|$MINOR|" \
|
||||
-e "s|@LONG_INFO@|$LONG_INFO|" \
|
||||
$portDir/additional-files/eternal_lands.rdef.in > $sourceDir/eternal_lands.rdef
|
||||
|
||||
addResourcesToBinaries $sourceDir/eternal_lands.rdef $appsDir/EternalLands/EternalLands
|
||||
|
||||
addAppDeskbarSymlink $appsDir/EternalLands/EternalLands "Eternal Lands"
|
||||
}
|
||||
60
games-rpg/eternal_lands/licenses/ELCPL 1.0
Normal file
60
games-rpg/eternal_lands/licenses/ELCPL 1.0
Normal file
@@ -0,0 +1,60 @@
|
||||
The Eternal Lands license is a slightly modified QTPL license (the QTPL license can be found here http://opensource.org/licenses/qtpl.php)
|
||||
|
||||
The Eternal Lands Client Public License Version 1.0
|
||||
Copyright (C) 2003, Radu Privantu and Maura Privantu.
|
||||
Everyone is permitted to copy and distribute this license document.
|
||||
|
||||
The intent of this license is to establish freedom to share and change the software regulated by this license under the open source model.
|
||||
|
||||
Definitions:
|
||||
Software means the Source Code (or compiled binary) but does not include anything else.
|
||||
Binary Data means the art (2d, 3d, animations, sound, music, maps, stories, etc.) and anything that is not source or compiled code. The Binary Data is propietary, and should not be used without our permission.
|
||||
|
||||
|
||||
This license applies to any software containing a notice placed by the copyright holder saying that it may be distributed under the terms of the Eternal Lands Client Public License version 1.0. Such software is herein referred to as the Software. This license covers modification and distribution of the Software, use of third-party application programs based on the Software, and development of free software which uses the Software.
|
||||
|
||||
Granted Rights
|
||||
1. You are granted the non-exclusive rights set forth in this license provided you agree to and comply with any and all conditions in this license. Whole or partial distribution of the Software, or software items that link with the Software, in any form signifies acceptance of this license.
|
||||
|
||||
2. You may copy and distribute the Software in unmodified form provided that the entire package, including - but not restricted to - copyright, trademark notices and disclaimers, as released by the initial developer of the Software, is distributed.
|
||||
|
||||
3. You may make modifications to the Software and distribute your modifications, in a form that is separate from the Software, such as patches. The following restrictions apply to modifications:
|
||||
|
||||
a. Modifications must not alter or remove any copyright notices in the Software.
|
||||
|
||||
b. When modifications to the Software are released under this license, a non-exclusive royalty-free right is granted to the initial developer of the Software to distribute your modification in future versions of the Software provided such versions remain available under these terms in addition to any other license(s) of the initial developer.
|
||||
|
||||
c. You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
|
||||
|
||||
4. You may distribute machine-executable forms of the Software or machine-executable forms of modified versions of the Software, provided that you meet these restrictions:
|
||||
|
||||
a. You must include this license document in the distribution.
|
||||
|
||||
b. You must ensure that all recipients of the machine-executable forms are also able to receive the complete machine-readable source code to the distributed Software, including all modifications, without any charge beyond the costs of data transfer, and place prominent notices in the distribution explaining this.
|
||||
|
||||
c. You must ensure that all modifications included in the machine-executable forms are available under the terms of this license.
|
||||
|
||||
5. You may use the original or modified versions of the Software to compile, link and run application programs legally developed by you or by others.
|
||||
|
||||
6. You may develop application programs, reusable components and other software items that link with the original or modified versions of the Software. These items, when distributed, are subject to the following requirements:
|
||||
|
||||
a. You must ensure that all recipients of machine-executable forms of these items are also able to receive and use the complete machine-readable source code to the items without any charge beyond the costs of data transfer.
|
||||
|
||||
b. You must explicitly license all recipients of your items to use and re-distribute original and modified versions of the items in both machine-executable and source code forms. The recipients must be able to do so without any charges whatsoever, and they must be able to re-distribute to anyone they choose.
|
||||
|
||||
c. If the items are not available to the general public, and the initial developer of the Software requests a copy of the items, then you must supply one.
|
||||
|
||||
Restrictions:
|
||||
1. You are not allowed to use the Binary Data that comes with the Official Eternal Lands Client without our prior approval.
|
||||
2. You may not distribute our Binary Data in your modified versions, without our approval.
|
||||
3. You may not use our Trademarks (such as Eternal Lands(TM)) in modifed versions, without our approval. You can (and must) add a notice stating that the code is a Modified Version of the the Eternal Lands Official Client.
|
||||
4. You may not use modified versions to connect to the Eternal Lands server, without our approval.
|
||||
|
||||
Limitations of Liability
|
||||
In no event shall the initial developers or copyright holders be liable for any damages whatsoever, including - but not restricted to - lost revenue or profits or other direct, indirect, special, incidental or consequential damages, even if they have been advised of the possibility of such damages, except to the extent invariable law, if any, provides otherwise.
|
||||
|
||||
No Warranty
|
||||
The Software and this license document are provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
||||
|
||||
Choice of Law
|
||||
This license is governed by the Laws of Pennsylvania, USA.
|
||||
@@ -0,0 +1,327 @@
|
||||
From 11119f83ed7502365369053c6d0e27595369a542 Mon Sep 17 00:00:00 2001
|
||||
From: Gerasim Troeglazov <3dEyes@gmail.com>
|
||||
Date: Sun, 28 Feb 2021 16:27:10 +1000
|
||||
Subject: Fix build for Haiku
|
||||
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 9579a43..de9c108 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -119,7 +119,7 @@ find_package(LibXml2 REQUIRED)
|
||||
if (CMAKE_SYSTEM_NAME MATCHES "Linux")
|
||||
find_package(X11 REQUIRED)
|
||||
endif()
|
||||
-if (CMAKE_SYSTEM_NAME MATCHES "Windows")
|
||||
+if (CMAKE_SYSTEM_NAME MATCHES "Windows" OR CMAKE_SYSTEM_NAME MATCHES "Haiku")
|
||||
find_package(Iconv REQUIRED)
|
||||
endif()
|
||||
# these definitions were re-used from Xapher's opengl client
|
||||
@@ -243,6 +243,11 @@ if (CMAKE_SYSTEM_NAME MATCHES "Linux")
|
||||
set(EXEC "el.linux.bin")
|
||||
endif()
|
||||
add_definitions(-DLINUX)
|
||||
+elseif (CMAKE_SYSTEM_NAME MATCHES "Haiku")
|
||||
+ if (NOT EXEC)
|
||||
+ set(EXEC "EternalLands")
|
||||
+ endif()
|
||||
+ add_definitions(-DHAIKU)
|
||||
elseif (CMAKE_SYSTEM_NAME MATCHES "Windows")
|
||||
if (NOT EXEC)
|
||||
set(EXEC "el")
|
||||
diff --git a/consolewin.c b/consolewin.c
|
||||
index 2b410f3..35768d3 100644
|
||||
--- a/consolewin.c
|
||||
+++ b/consolewin.c
|
||||
@@ -279,7 +279,7 @@ static int click_console_handler(window_info *win, int mx, int my, Uint32 flags)
|
||||
if (hud_click(win, mx, my, flags))
|
||||
return 1;
|
||||
|
||||
-#if !defined OSX && !defined WINDOWS
|
||||
+#if !defined OSX && !defined WINDOWS && !defined HAIKU
|
||||
#ifdef MIDDLE_MOUSE_PASTE
|
||||
if ( (flags & ELW_MID_MOUSE) )
|
||||
{
|
||||
diff --git a/elconfig.c b/elconfig.c
|
||||
index d14c4fe..78c71ff 100644
|
||||
--- a/elconfig.c
|
||||
+++ b/elconfig.c
|
||||
@@ -2663,7 +2663,7 @@ static void init_ELC_vars(void)
|
||||
add_var(OPT_BOOL, "continent_map_boundaries", "cmb", &show_continent_map_boundaries, change_var, 1, "Map Boundaries On Continent Map", "Show map boundaries on the continent map", HUD);
|
||||
add_var(OPT_BOOL,"enable_user_menus", "user_menus", &enable_user_menus, toggle_user_menus, 0, "Enable User Menus","Create .menu files in your config directory. First line is the menu name. After that, each line is a command using the format \"Menus Text || command || command\". Prompt for input using \"command text <prompt text>\".",HUD);
|
||||
add_var(OPT_BOOL,"console_scrollbar_enabled", "console_scrollbar", &console_scrollbar_enabled, toggle_console_scrollbar, 1, "Show Console Scrollbar","If enabled, a scrollbar will be shown in the console window.",HUD);
|
||||
-#if !defined(WINDOWS) && !defined(OSX)
|
||||
+#if !defined(WINDOWS) && !defined(OSX) && !defined(HAIKU)
|
||||
add_var(OPT_BOOL,"use_clipboard","uclb",&use_clipboard, change_var, 1, "Use Clipboard For Pasting", "Use CLIPBOARD for pasting (as e.g. GNOME does) or use PRIMARY cutbuffer (as xterm does)",HUD);
|
||||
#endif
|
||||
|
||||
@@ -2775,9 +2775,9 @@ static void init_ELC_vars(void)
|
||||
add_var(OPT_FLOAT,"chat_win_scale","chatwinscale",get_scale_WM(MW_CHAT),change_win_scale_factor,1.0f,"Chat window scaling factor",win_scale_description,FONT,win_scale_min,win_scale_max,win_scale_step);
|
||||
add_var(OPT_FLOAT,"options_win_scale","optionswinscale",&elconf_custom_scale,change_elconf_win_scale_factor,1.0f,"Options window scaling factor","Multiplied by the user interface scaling factor. Change will take effect after closing then reopening the window.",FONT,win_scale_min,win_scale_max,win_scale_step);
|
||||
#ifdef NEW_CURSOR
|
||||
- add_var(OPT_BOOL,"sdl_cursors","sdl_cursors", &sdl_cursors, change_sdl_cursor,1,"Use Standard Black/White Mouse Pointers", "When disabled, use the experimental coloured mouse pointers. Needs the texture from Git dev-data-files/cursor2.dss.", FONT);
|
||||
- add_var(OPT_BOOL,"big_cursors","big_cursors", &big_cursors, change_var,0,"Use Large Pointers", "When using the experiment coloured mouse pointers, use the large pointer set.", FONT);
|
||||
- add_var(OPT_FLOAT,"pointer_size","pointer_size", &pointer_size, change_float,1.0,"Coloured Pointer Size", "When using the experiment coloured mouse pointers, set the scale of the pointer. 1.0 is 1:1 scale.", FONT,0.25,4.0,0.05);
|
||||
+ add_var(OPT_BOOL,"sdl_cursors","sdl_cursors", &sdl_cursors, change_sdl_cursor,0,"Use Standard Black/White Mouse Pointers", "When disabled, use the experimental coloured mouse pointers. Needs the texture from Git dev-data-files/cursor2.dss.", FONT);
|
||||
+ add_var(OPT_BOOL,"big_cursors","big_cursors", &big_cursors, change_var,1,"Use Large Pointers", "When using the experiment coloured mouse pointers, use the large pointer set.", FONT);
|
||||
+ add_var(OPT_FLOAT,"pointer_size","pointer_size", &pointer_size, change_float,2.5,"Coloured Pointer Size", "When using the experiment coloured mouse pointers, set the scale of the pointer. 1.0 is 1:1 scale.", FONT,0.25,4.0,0.05);
|
||||
#endif // NEW_CURSOR
|
||||
// FONT TAB
|
||||
|
||||
@@ -2937,7 +2937,9 @@ static void init_ELC_vars(void)
|
||||
add_var(OPT_BOOL,"shadows_on","shad",&shadows_on,change_shadows,0,"Shadow Bug","Some video cards have trouble with the shadows. Uncheck this if everything you see is white.", TROUBLESHOOT);
|
||||
// Grum: attempt to work around bug in Ati linux drivers.
|
||||
add_var(OPT_BOOL,"ati_click_workaround", "atibug", &ati_click_workaround, change_var, 0, "ATI Bug", "If you are using an ATI graphics card and don't move when you click, try this option to work around a bug in their drivers.", TROUBLESHOOT);
|
||||
- add_var (OPT_BOOL,"use_old_clicker", "oldmclick", &use_old_clicker, change_var, 0, "Mouse Bug", "Unrelated to ATI graphics cards, if clicking to walk doesn't move you, try toggling this option.", TROUBLESHOOT);
|
||||
+#ifndef HAIKU
|
||||
+ add_var (OPT_BOOL,"use_old_clicker", "oldmclick", &use_old_clicker, change_var, 1, "Mouse Bug", "Unrelated to ATI graphics cards, if clicking to walk doesn't move you, try toggling this option.", TROUBLESHOOT);
|
||||
+#endif
|
||||
add_var(OPT_BOOL,"use_new_selection", "uns", &use_new_selection, change_new_selection, 1, "New selection", "Using new selection can give you a higher framerate. However, if your cursor does not change when over characters or items, try disabling this option.", TROUBLESHOOT);
|
||||
add_var(OPT_BOOL,"clear_mod_keys_on_focus", "clear_mod_keys_on_focus", &clear_mod_keys_on_focus, change_var, 0, "Clear modifier keys when window focused","If you have trouble with modifier keys (shift/ctrl/alt etc) when keyboard focus returns, enable this option to force all modifier keys up.", TROUBLESHOOT);
|
||||
add_var(OPT_BOOL,"use_compiled_vertex_array","cva",&use_compiled_vertex_array,change_compiled_vertex_array,1,"Compiled Vertex Array","Some systems will not support the new compiled vertex array in EL. Disable this if some 3D objects do not display correctly.",TROUBLESHOOT);
|
||||
diff --git a/events.c b/events.c
|
||||
index 53ad5a1..51db744 100644
|
||||
--- a/events.c
|
||||
+++ b/events.c
|
||||
@@ -207,7 +207,7 @@ int HandleEvent (SDL_Event *event)
|
||||
switch( event->type )
|
||||
{
|
||||
|
||||
-#if !defined(WINDOWS) && !defined(OSX)
|
||||
+#if !defined(WINDOWS) && !defined(OSX) && !defined(HAIKU)
|
||||
case SDL_SYSWMEVENT:
|
||||
if (event->syswm.msg->msg.x11.event.type == SelectionNotify)
|
||||
finishpaste(event->syswm.msg->msg.x11.event.xselection);
|
||||
diff --git a/eye_candy/eye_candy.cpp b/eye_candy/eye_candy.cpp
|
||||
index d30c326..6b8ecf3 100644
|
||||
--- a/eye_candy/eye_candy.cpp
|
||||
+++ b/eye_candy/eye_candy.cpp
|
||||
@@ -1748,8 +1748,8 @@ namespace ec
|
||||
delete particle;
|
||||
for (auto effect: effects)
|
||||
delete effect;
|
||||
- for (auto light: lights)
|
||||
- glDisable(light);
|
||||
+// for (auto light: lights)
|
||||
+// glDisable(light);
|
||||
}
|
||||
|
||||
void EyeCandy::set_thresholds(const int _max_particles,
|
||||
diff --git a/font.cpp b/font.cpp
|
||||
index 4db4a6a..64cac3e 100644
|
||||
--- a/font.cpp
|
||||
+++ b/font.cpp
|
||||
@@ -1839,6 +1839,8 @@ float *font_scales = FontManager::font_scales.data();
|
||||
int use_ttf = 0;
|
||||
#ifdef LINUX
|
||||
char ttf_directory[TTF_DIR_SIZE] = "/usr/share/fonts/TTF";
|
||||
+#elif defined HAIKU
|
||||
+char ttf_directory[TTF_DIR_SIZE] = "/system/data/fonts/ttfonts";
|
||||
#elif defined WINDOWS
|
||||
char ttf_directory[TTF_DIR_SIZE] = "C:/Windows/Fonts";
|
||||
#else
|
||||
diff --git a/gamewin.c b/gamewin.c
|
||||
index 89f541a..fe0abc9 100644
|
||||
--- a/gamewin.c
|
||||
+++ b/gamewin.c
|
||||
@@ -63,7 +63,7 @@ int have_mouse = 0;
|
||||
int game_root_win = -1;
|
||||
|
||||
// configuration options exported
|
||||
-int use_old_clicker=0;
|
||||
+int use_old_clicker=1;
|
||||
int include_use_cursor_on_animals = 0;
|
||||
int cm_banner_disabled = 0;
|
||||
int auto_disable_ranging_lock = 1;
|
||||
diff --git a/gl_init.c b/gl_init.c
|
||||
index dbd5683..86ba511 100644
|
||||
--- a/gl_init.c
|
||||
+++ b/gl_init.c
|
||||
@@ -307,7 +307,7 @@ void init_video(void)
|
||||
last_texture = -1; //no active texture
|
||||
video_mode_set = 1; //now you may set the video mode using the %<foo> in-game
|
||||
|
||||
-#if !defined OSX && !defined WINDOWS
|
||||
+#if !defined OSX && !defined WINDOWS && !defined HAIKU
|
||||
init_x11_copy_paste();
|
||||
#endif
|
||||
|
||||
diff --git a/io/elpathwrapper.c b/io/elpathwrapper.c
|
||||
index 741461a..4a2ab8b 100644
|
||||
--- a/io/elpathwrapper.c
|
||||
+++ b/io/elpathwrapper.c
|
||||
@@ -59,6 +59,8 @@ static const char* cfgdirname = CONFIGDIR;
|
||||
static const char* cfgdirname = "Library/Application\ Support/Eternal\ Lands";
|
||||
#elif defined(WINDOWS)
|
||||
static const char* cfgdirname = "Eternal Lands";
|
||||
+#elif defined(HAIKU)
|
||||
+static const char* cfgdirname = "config/settings/EternalLands";
|
||||
#else /* *nix */
|
||||
static const char* cfgdirname = ".elc";
|
||||
#endif // platform check
|
||||
@@ -856,6 +858,9 @@ int search_files_and_apply(const char* base_path, const char *pattern, void (*fn
|
||||
|
||||
while (1)
|
||||
{
|
||||
+#ifdef HAIKU
|
||||
+ struct stat info;
|
||||
+#endif
|
||||
struct dirent *entry;
|
||||
|
||||
errno = 0;
|
||||
@@ -866,14 +871,22 @@ int search_files_and_apply(const char* base_path, const char *pattern, void (*fn
|
||||
LOG_ERROR("Failed to read directory %s: %s\n", base_path, strerror(errno));
|
||||
break;
|
||||
}
|
||||
-
|
||||
+#ifdef HAIKU
|
||||
+ stat(entry->d_name, &info);
|
||||
+ if (S_ISDIR(info.st_mode) && max_depth > 0 && strcmp(entry->d_name, ".") != 0
|
||||
+#else
|
||||
if (entry->d_type == DT_DIR && max_depth > 0 && strcmp(entry->d_name, ".") != 0
|
||||
+#endif
|
||||
&& strcmp(entry->d_name, "..") != 0)
|
||||
{
|
||||
safe_snprintf(full_path, sizeof(full_path), "%s/%s", base_path, entry->d_name);
|
||||
nr_found += search_files_and_apply(full_path, pattern, fn, max_depth-1);
|
||||
}
|
||||
+#ifdef HAIKU
|
||||
+ else if (S_ISREG(info.st_mode) && fnmatch(pattern, entry->d_name, 0) == 0)
|
||||
+#else
|
||||
else if (entry->d_type == DT_REG && fnmatch(pattern, entry->d_name, 0) == 0)
|
||||
+#endif
|
||||
{
|
||||
safe_snprintf(full_path, sizeof(full_path), "%s/%s", base_path, entry->d_name);
|
||||
fn(full_path);
|
||||
diff --git a/io/ioapi.h b/io/ioapi.h
|
||||
index 5c6eeb6..430a7dd 100644
|
||||
--- a/io/ioapi.h
|
||||
+++ b/io/ioapi.h
|
||||
@@ -50,7 +50,7 @@
|
||||
#include <stdlib.h>
|
||||
#include "zlib.h"
|
||||
|
||||
-#if defined(USE_FILE32API) || defined(OSX)
|
||||
+#if defined(USE_FILE32API) || defined(OSX) || defined(HAIKU)
|
||||
#define fopen64 fopen
|
||||
#define ftello64 ftell
|
||||
#define fseeko64 fseek
|
||||
diff --git a/paste.c b/paste.c
|
||||
index 7e70c48..ae6040f 100644
|
||||
--- a/paste.c
|
||||
+++ b/paste.c
|
||||
@@ -125,6 +125,16 @@ void copy_to_clipboard(const char* text)
|
||||
}
|
||||
}
|
||||
|
||||
+#elif defined HAIKU
|
||||
+
|
||||
+void start_paste(widget_list *widget)
|
||||
+{
|
||||
+}
|
||||
+
|
||||
+void copy_to_clipboard(const char* text)
|
||||
+{
|
||||
+}
|
||||
+
|
||||
#else
|
||||
|
||||
static widget_list *paste_to_widget = NULL;
|
||||
diff --git a/paste.h b/paste.h
|
||||
index ed0ff1a..7f26aea 100644
|
||||
--- a/paste.h
|
||||
+++ b/paste.h
|
||||
@@ -46,7 +46,7 @@ void copy_to_clipboard(const char* text);
|
||||
void copy_to_primary(const char* text);
|
||||
#endif
|
||||
|
||||
-#if !defined OSX && !defined WINDOWS
|
||||
+#if !defined OSX && !defined WINDOWS && !defined HAIKU
|
||||
|
||||
#include <X11/Xlib.h>
|
||||
|
||||
diff --git a/widgets.c b/widgets.c
|
||||
index aa08a84..d4d7bfd 100644
|
||||
--- a/widgets.c
|
||||
+++ b/widgets.c
|
||||
@@ -2516,7 +2516,7 @@ void _text_field_copy_to_clipboard(text_field *tf)
|
||||
}
|
||||
}
|
||||
|
||||
-#if !defined OSX && !defined WINDOWS
|
||||
+#if !defined OSX && !defined WINDOWS && !defined HAIKU
|
||||
#ifdef MIDDLE_MOUSE_PASTE
|
||||
void _text_field_copy_to_primary(text_field *tf)
|
||||
{
|
||||
@@ -2943,7 +2943,7 @@ void update_selection(int x, int y, widget_list* w, int drag)
|
||||
// drag, set the end position
|
||||
tf->select.em = tf->select.lines[line].msg;
|
||||
tf->select.ec = col;
|
||||
-#if !defined OSX && !defined WINDOWS
|
||||
+#if !defined OSX && !defined WINDOWS && !defined HAIKU
|
||||
#ifdef MIDDLE_MOUSE_PASTE
|
||||
_text_field_copy_to_primary(tf);
|
||||
#endif
|
||||
@@ -2976,7 +2976,7 @@ static void update_cursor_selection(widget_list* w, int update_end)
|
||||
{
|
||||
tf->select.em = tf->select.lines[line].msg;
|
||||
tf->select.ec = tf->cursor;
|
||||
-#if !defined OSX && !defined WINDOWS
|
||||
+#if !defined OSX && !defined WINDOWS && !defined HAIKU
|
||||
#ifdef MIDDLE_MOUSE_PASTE
|
||||
_text_field_copy_to_primary(tf);
|
||||
#endif
|
||||
@@ -3026,7 +3026,7 @@ static int text_field_click(widget_list *w, int mx, int my, Uint32 flags)
|
||||
|
||||
_set_edit_pos(tf, mx, my, w->fcat);
|
||||
|
||||
-#if !defined OSX && !defined WINDOWS
|
||||
+#if !defined OSX && !defined WINDOWS && !defined HAIKU
|
||||
#ifdef MIDDLE_MOUSE_PASTE
|
||||
if (flags & ELW_MID_MOUSE)
|
||||
start_paste_from_primary(w);
|
||||
--
|
||||
2.30.0
|
||||
|
||||
|
||||
From 09455e2124abf1d2c8634fe45b3c4722358c19ee Mon Sep 17 00:00:00 2001
|
||||
From: Gerasim Troeglazov <3dEyes@gmail.com>
|
||||
Date: Sun, 28 Feb 2021 16:43:59 +1000
|
||||
Subject: Set resource dir
|
||||
|
||||
|
||||
diff --git a/main.c b/main.c
|
||||
index e303953..acc7d0a 100644
|
||||
--- a/main.c
|
||||
+++ b/main.c
|
||||
@@ -521,13 +521,26 @@ void setupWorkingDirectory(const char *argv0, size_t len)
|
||||
}
|
||||
#endif
|
||||
|
||||
+#ifdef HAIKU
|
||||
+void setupWorkingDirectory(const char *argv0, size_t len)
|
||||
+{
|
||||
+ char *binpath = realpath(argv0, NULL);
|
||||
+ if (binpath != NULL) {
|
||||
+ char *appdir = strrchr(binpath, '/');
|
||||
+ *appdir = '\0';
|
||||
+ chdir(binpath);
|
||||
+ free(binpath);
|
||||
+ }
|
||||
+}
|
||||
+#endif
|
||||
+
|
||||
#ifdef WINDOWS
|
||||
int Main(int argc, char **argv)
|
||||
#else
|
||||
int main(int argc, char **argv)
|
||||
#endif
|
||||
{
|
||||
-#ifdef OSX
|
||||
+#if defined OSX || defined HAIKU
|
||||
if (argc > 0) // should always be true
|
||||
setupWorkingDirectory(argv[0], strlen(argv[0]));
|
||||
#endif
|
||||
--
|
||||
2.30.0
|
||||
|
||||
Reference in New Issue
Block a user