QEMU: add recipe for 3.1.0 version

* add native icon
* split to separate packages for x86, sparc, ppc, mips, m68k and arm architectures.
This commit is contained in:
Gerasim Troeglazov
2019-01-17 21:53:14 +10:00
parent 0506eace7e
commit f8566fac9a
3 changed files with 931 additions and 29 deletions

View File

@@ -16,33 +16,173 @@ resource app_version {
resource app_signature "@APP_SIGNATURE@";
resource vector_icon {
$"6E63696604050003FF6500050002011602313AE2BFFFFA41E7B733274A43D52F"
$"4BB69B0001FFFF07060AFF020FBFB820C6BE20B8B22020BFA620B8A920C6A3BF"
$"B8CC4CB8B2CC4CC205CC4CC608CAA2C42BCBB2C608CAA2C6B1CC4CC73DCBCBCB"
$"D2C9D1C757C9D1C757CB75C535CC6FBFA6CC6FC28BCC6FB8A90204C7FABAA9C7"
$"FAB6A8C7FABEAABF8EC1E8C435C1E8BAE7C1E8B721BAA9B721BEAAB721B6A8BF"
$"8EB369BAE7B369C435B3690204C261B838C261B765C261B90BC0E2B9B7C1B6B9"
$"B7C00FB9B7BF64B838BF64B90BBF64B765C0E2B6B9C00FB6B9C1B6B6B90A043C"
$"B8EFC6A4BA28C667BB63BDEBBA290A04C5CDBA8CC74CBA8CC74CBB35C5CDBB35"
$"06313FFFFFFFFDFFFFDAFBFDBFFF03BC58B515BC58B515BC55B594BB6DB5B7BB"
$"77B525BA77B549BB68B678BB80B65EBB68B678BB66BB53B676BB53B676BB48B6"
$"72BB1DB65BBB36B66BBA71B6E4B9BBB89EBA6DB801B947B999B8D6BBAFB92BBA"
$"AAB8ACBCAAB8C6BE9FB887BDA4B8D8BF6CB957C110B89DC081BA6BC1F2BC37C4"
$"21BB50C311BDA2C5DFBFFEC9B2BEE3C7BEC011C936C092CAC3C03FCAAAC075CA"
$"09C03EC7FCC050C8E1BFE2C5A5BE4BC131BEBAC383BE48C118BE40C0E4BE44C0"
$"FEBE40C0E4C09ABE37C09ABE37C09ABE13BF74BEDBBD52BE05BE38BFB5BC76C2"
$"00BBA6C0F9BC3FC23ABB84C2B6BB54C277BB68C2B7BB54C2B8BB54C2B7BB54C3"
$"6EBB1CC4EDBB3CC430BB1EC4EFBB3DC4F6BB3EC4F3BB3EC507BB41C52BBB47C5"
$"19BB44C5B5BB54C6FDBB2AC6CBBB8AC63EBA88C443BA53C52BBA93C41EBA4DC3"
$"C4BA41C3F1BA45C3C4BA41C2E0BA0EC2A8B9FFBA01BF79B963BF79B963BF6CB9"
$"57BF51B942BF5EB94BBF51B942C26BB9A4C26BB9A1C26BB9A1C287B9A7C2BFB9"
$"AFC2A3B9ACC2BFB9AFB9B1C4F0BA19C4F0BA19C551BA3DC619BA5EC5B8BA58C6"
$"B9BA7554BB6FC784BB64C79FBA74C5D4B9BAC6A4BA04C4E1B944C34FB801C376"
$"B948C345B7EBC32EB7BEC33BB7D4C32EB7BEC2D0B740C2D3B73FC2D3B73FC252"
$"B6A6C0DBB60DC19CB637C01B27BE79B56EBF43B588BE34B639BD41B539BDE7B4"
$"CEBCB0B54ABC58B515BCC4B571BC58B5150205AD6FAD25AD18AD28ADA4AD24AE"
$"1CAD43ADE0AD2EAEBDAD7AAF07AE49AF26ADEFAEE8AEA2ADABAE85AE4CAEBDAD"
$"0AAE4DACC0AD80ACA2ADDAACD4AD49060A020100000A030101000A000103000A"
$"000104000A01020506000A000102023FECC33B1635B9B4953E5B12422C04C1AC"
$"E8"
$"6E63696607020016023948D63D3094BDDFAB39FD1F4ABA27497CCF00FFFF1002"
$"010602374523320A99B7657F3CB86948145E49514700F3C7B8FFD5613803D5AD"
$"A105FF05A1050104017B1C0210B9C1B589B9C1B5A0B9CCB5A2B9E8B5CFB9DAB5"
$"B8B9EEB5E2B9F4B608B9F1B5F5B9FBB5F5BA0DB5D0BA03B5E2BA1AB5BDBA22B5"
$"8FBA22B5A7BA25B5A8BA34B5D8BA2EB5C0BA35B5EABA32B60FBA33B5FDBA3FB5"
$"FFBA5AB5E1BA4BB5EFBA6BB5D2BA88B5B0BA7CB5C3BA80B5C6BA80B5F5BA7BB5"
$"DDBA6EB61ABA43B65FBA57B63BBA1EB66BB9D0B661B9F6B65FB9C0B664B9AAB6"
$"4DB9B3B659B9ADB644B9B2B632B9B0B63BB9B6B621B9B8B5FEB9B7B610B9B8B5"
$"EEB9BBB5CEB9B9B5DEB9BEB5B7020DB8A0B651B89AB652B8A1B637B8A5B603B8"
$"A2B61DB8AAB612B8B5B631B8B0B622B8BDB648B8C9B677B8C3B660B8C9B677B8"
$"CAB67DB8CAB67DB8CDB684B8D4B692B8D0B68BB8BBB6A2B884B6AFB89EB6A5B8"
$"7EB6B2B874B6B9B879B6B6B874B6ABB86CB68EB875B69BB85CB676B83FB643B8"
$"4BB65EB84FB654B878B66CB85EB669B876B653B86EB622B871B63AB878B632B8"
$"8EB652B880B6442EB6520212C0ADBDA5C0A6BDA3C125BDC0C1FCBE39C19CBDEA"
$"C209BE44C280BED9C267BEABC28CBEEEC2B6BFA0C2B0BF74C2CFC031C29AC155"
$"C2C0C0C7C28EC17E4449C22A47C06DC439BF18C4E7BF12C4DCBED3C4F9BE4BC5"
$"1DBE90C510BE1BC52DBD26C550BD57C54EBCD6C553BC37C54DBC87C54DBC3AC5"
$"5DBC41C57CBC3DC56CBC38C56637C53ABC31C550BBBCC527BAE6C4E6BB4DC512"
$"BA79C4B8B9B5C433BA0FC480B984C408B934C3A2B954C3DBB8E2C314B8E6C1C8"
$"B8CCC268B8E9C1B63141B926C0C5353DBD4DBDFABC93BE2D3F3A0206B958B5DB"
$"B91DB5EDB978B5D2B9BBB5CEB99927B9B9B5DEB9B8B5FEB9B8B5EEB993B60AB9"
$"48B60DB96DB605B911B61CB8C9B677B8E5B647B8C3B660B8B5B631B8BDB648B8"
$"E3B6060203B9E8B5CFB9EEB5E2B9F4B5CFBA0DB5D0BA01B5D0BA03B5E2B9F4B6"
$"08B9FBB5F5B9F1B5F50203BA34B5D8BA35B5EABA41B5DBBA5AB5E1BA4DB5DEBA"
$"4BB5EFBA32B60FBA3FB5FFBA33B5FD0221BAF9B64B3226BB2DB67CBB6FB6FABB"
$"50B6BBBB81B726BB9EB77FBB95B751BBAEB7C1BBB9B849BBB6B805362EBBB4B9"
$"29BBB9B8DEBBA2B9EBBB4FBB67BB7BBAAABB40BB97BB2BBBF9BB36BBC8BAFEBC"
$"A3BACCBDFFBADCBD50BACCBE55BACDBF01BAB9BEACBAD7BF31BAE3BF94BAD8BF"
$"63BAF1BFD2BB1CC04BBB00C011BB2AC06FBB3CC0BBBB31C096BB4EC0FDBB59C1"
$"87BB5AC142BB5CC1DBBB13C276BB4AC234BAE9C2A3BA74C2CDBAB2C2C6BA2EC2"
$"D4B9ABC298B9E4C2C3B988C27EB951C239B969C25DB93AC216B916C1C9B929C1"
$"EEB914C1A7B901C165B909C186B905C123B8F7C0A1B8F1C0E3B8FDC075B905C0"
$"1DB8FCC049B911BFE5B927BF74B918BFACB932BF41B94DBEDBB93CBF0DB9A8BD"
$"78BA33BAA8BA1BBC18BA37BA53BA29B9AABA34B9FEBA0FB945B9AAB88DB9EEB8"
$"DEB99DB87EB980B864B990B86FB963B85DB927B868B944B860B90AB871B8CEB8"
$"75B8EBB86BB8B4B87EB87EB877B899B87BB8D1B85FB82CB7B22A2EB845B79EB8"
$"75B773B861B78DB872B7362E28B88EB6333026020CB82AB850B7F6B858B8C2B8"
$"39B9EAB7E0B957B80EB9C0B808B951B82DB988B81CB90FB842B889B863B8CEB8"
$"58B85FB86AB80BB87FB835B874B82FB87DB879B878B854B87BB861B88AB827B8"
$"8AB843B886B7E7B8982BB891B7A3B897B74BB88CB72EB859B727B862B74CB83C"
$"B794B812B76FB825B77AB8282B2DB777B812B777B835B78DB865B777B867B7C2"
$"B861002EC0E2C513C0E2C513C11DC50CC15CC4A6C143C4D6C16DC4B5C194C4CC"
$"C17FC4C2C198C4F5C192C549C198C51FC18FC55AC18BC57EC18BC56CC189C58E"
$"C185C5AFC188C59FC176C5DFC161C642C16BC611C156C656C145C680C14AC669"
$"C135C6C2C111C746C11AC701C10EC756C0F9C770C0FFC760C0E9C79EC0DDC801"
$"C0E5C7D0C0D2C83BC0D7C8B1C0D8C876C0D757C0B4C958C0D7C929C09DC979C0"
$"5DC9ACC085C99DC052C9B4C044C9CCC04DC9C2C03AC9DCC017C9EBC025C9DFC0"
$"0AC9F9BFF0CA16BFFDCA08BFE6CA20BFD9CA39BFDFCA2CBFBCCA70BF8ACAE2BF"
$"A6CAAABF88CAE4BF83CAEDBF85CAEABF7BCAF9BF6ACB10BF72CB043FCB28BF24"
$"CB30BF3CCB29BEFECB37BEB0CB36BED6CB46BE8FCB2ABE65CAF1BE79CB0DBE66"
$"CAE4BE68CAC9BE67CAD6BE2ECAEEBDB0CB26BDF2CB10BD8FCB2DBD4CCB2ABD6D"
$"CB2BBD33CB29BD15CAFEBD18CB19BD12CADBBD31CA99BD21CAB8BD53CA5EBDBC"
$"CA06BD83CA2BBE2EC9B2BF34C94DBEBEC99ABF5BC934BF9DC8F1BF80C916BFDD"
$"C8A2C01DC7E1C006C843C020C7D5C01AC7BCC01CC7C8C019C7ACC01EC78DC01B"
$"C79CC031C74DC02BC6C8C02EC709C024C695C020C62FC029C661C01CC611C004"
$"C5DAC00FC5F5BFFEC5CABFF4C5ABBFF9C5BBBFECC58CBFDAC54EBFE5C56CBFF1"
$"C560C024C581C007C578C036C586C05AC57BC04CC589C06DC569C08EC542C080"
$"C557C09DC525C0B2C4E7C0A5C504C0C64DC0EAC505C0D8C4F9C0E7C50AC0E2C5"
$"13C0E5C50EC0E2C5130206BEE0C9FEBEE7C9F4BECACA1ABEA4CA56BEB5CA37BE"
$"9ACA68BE9ECA90BE9DCA7DBEA7CA8FBEBACA8CBEB1CA8EBEC5CA7ABED4CA52BE"
$"CBCA65BEE2CA30BEFEC9EEBEFCCA13BEF3C9F2001DBD26C550BD26C550BD57C5"
$"4EBDB9C541BD8AC551BDBCC56B3B4FBDE6C57FBDABC5CEBD47C7253B51BD47C7"
$"1CBD46C70BBD47C714BD32C725BD12C75FBD24C744BCF5C77EBCDEC7CEBCE9C7"
$"A7BCD3C7FFBCE0C865BCD1C834BCE8C882BCEEC8BEBCECC89FBCF1C8E0BCDDC9"
$"22BCE5C901BCD9C932BCB9C93DBCC6C938BC82C949BC16C92ABC4BC935BBABC9"
$"12BACEC91DBB3BC90BBAACC921BA67C92ABA89C921BA29C93AB9ABC94CB9EAC9"
$"45B984C94FB93AC93CB95FC945B91CC935B8EDC908B8F9C928B8E1C8EDB901C8"
$"BBB8F0C8CFB91AC89EB95BC877B935C880B974C86DB9A8C870B98FC871B9B8C8"
$"61B9D8C846B9C4C84EBA05C82DBA6BC835BA3AC829BAA7C843BB22C856BAE3C8"
$"563656BC0CC809BBF7C826BC21C7EDBC63C6FA3755BC66C6C9BC5EC602BC65C6"
$"24BC56C5D4BC41C57CBC4DC5A8BC3DC56CBC37C54DBC3AC55DBC87C54DBD26C5"
$"50BCD6C553BD26C5500207B948B60DB911B61CB96DB605B9B8B5FEB993B60AB9"
$"B7B610B9B2B632B9B6B621B9A4B635B98BB642B996B638B96CB65CB923B681B9"
$"4BB677B906B687B8CAB67DB8E8B680B8CAB67DB8C9B677B8C9B677B8E5B64702"
$"16B8E8B717B8CBB751B8F7B6FFB925B6DDB906B6E1B943B6DFB966B712B958B6"
$"FAB976B72EB9A1B75DB986B74BB9C4B775BA16B787B9F0B777BA3DB798BA4CB7"
$"F0BA58B7C6BA42B80FBA08B830BA26B826B9DAB83DB97BB843B9AAB839B926B8"
$"52B87EB877B8D1B85FB87EB877B879B878B879B878B854B87BB80BB87FB82FB8"
$"7DB835B874B889B863B85FB86AB8CEB858B951B82DB90FB842B988B81CB9EAB7"
$"E0B9C0B808B957B80EB82AB850B8C2B839B7F6B858B78DB865B7C2B861B777B8"
$"67B74BB85CB761B863B761B840B794B812B77AB828B797B811B79FB80CB79CB8"
$"0EB7ADB80CB7BFB7F7B7BAB804B7D5B7E9B803B7D1B7ECB7DCB826B7C5B865B7"
$"A0B847B7B5B899B77B020BC043C5B2C041C5F1C04DC5BBC05DC5D3C059C5C5C0"
$"6EC600C073C661C075C631C074C6B9C071C76BC075C712C068C7B3C054C843C0"
$"68C7FDC047C875C017C8D3C040C8AEC00CC8DFBFEDC8E7BFFDC8E4BFECC8B9C0"
$"1BC86AC005C891C039C836C04CC7C1C043C7FBC056C794C057C739C054C767C0"
$"5AC6F6C052C66EC054C6B2C050C62F0207BE51C9CFBE2AC9E4BE6AC9C2BEA3C9"
$"C1BE88C9AEBE8BC9E0BE45C9FCBE63C9E7BE19CA18BDC4CA55BDE9CA2FBDB0CA"
$"69BD86CA8EBDA2CA85BD75CA8CBD77CA69BD77CA76BD89CA3DBDDACA09BDB6CA"
$"25BDFDC9ED0008B98BB695B98BB695B98DB67AB9AAB64DB99CB663B9B3B659B9"
$"D0B661B9C0B664B9F6B65FBA43B65FBA1EB66BBA51B67ABA63B6B5BA61B695BA"
$"66B6DDBA3AB724BA5AB709BA1FB73DB9D5B72FB9F5B740B99DB714B98BB695B9"
$"82B6D1B98BB6950203BA18B677BA3AB673B9DCB683BA1DB6F4B9DFB6EEBA3BB6"
$"F2BA50B6B5BA52B6D2BA4FB6970206B8D4B692B8BBB6A2B8E4B6A8B8F1B6DBB8"
$"F3B6BFB8DFB6D2B8B3B6D5B8C5B6C2B89AB6EFB8BAB72FB8A5B717B8B2B736B8"
$"A1B743B8A9B73DB880B71AB884B6AFB876B6E2B89EB6A50025C413BBB7C413BB"
$"B7C438BBADC483BB9FC45DBB9EC48DBB9EC49ABBABC494BBA4C49ABBBFC482BB"
$"E0C48FBBD1C45FBC0CC403BC4EC42FBC2BC45EBC29C523BC05C4BEBC00C540BC"
$"06C577BC1FC561BC0AC58CBC36C573BC72C587BC5CC553BC97C4FBBCC5C524BC"
$"ABC4C1BCE9C45DBD45C48EBD16C4B0BD294EBCEAC500BD04C57CBCDFC5D3BCEF"
$"C5AEBCD2C5E9BD06C5F4BD48C5F8BD28C5E2BD65C5A1BD7EC5C0BD72C52FBDA7"
$"C450BE0AC4B3BDBFC4A2BDF8C54ABDFCC4F7BDEEC56FBE02C5B0BE2AC594BE0F"
$"C5BDBE37C5C2BE5DC5C8BE4AC5BBBE70C594BE7EC5A6BE78C54CBE92C4B7BE91"
$"C500BE8AC473BE93C3EDBE9CC430BE93C372BEA6C280BED9C2F6BEB4C267BEAB"
$"C223BE5DC248BE81C233BE53C255BE41C244BE49C2A5BE1EC34ABDE9C2F5BDFD"
$"C38BBDD7C40EBDB9C3D3BDDCC3E0BDAEC380BDB5C3AFBDB0C308BDBFC22ABE1B"
$"C293BDE2C21ABE24C1FCBE39C20BBE2EC19CBDEAC0ADBDA5C125BDC0C0F5BD4A"
$"C19BBCA8C147BCF7C1E3BC66C282BBF6C22EBC28C2B6BBD8C32DBBBF48BBBFC3"
$"19BBD7C2EBBC01C301BBECC2E1BC09C2CEBC1BC2D8BC12C2BDBC2CC2ABBC5AC2"
$"B3BC43C31FBC1BC413BBB7C394BBDBC413BBB70006C29BBCA8C29BBCA8C23EBC"
$"DCC1B9BD86C1E9BD26C1E4BD6FC229BD29C204BD48C261BCF3C2E6BCA1C2A0BC"
$"C4C2FFBC95C32DBC74C319BC88C2F9BC79C29BBCA8C2C9BC91C29BBCA80205C3"
$"FFBC88C41EBC7DC3B3BCA2C33EBD13C36ABCCFC36DBD00C3BEBCC1C393BCDCC3"
$"E1BCADC42BBC8EC405BC9AC43EBC89C45FBC75C44FBC81C43EBC74021FBB1CC0"
$"4BBB2AC06FBB1FC04ABB29C048BB26C049BB3DC04DBB61C05CBB50C053BB75C0"
$"68BB91C08DBB83C07BBBBEC08BBC10C0B3BBEFC090BC2CC0CABC29C112BC27C0"
$"F1BC43C11DBC72C142BC62C128BC80C15ABC6EC18EBC7AC177BC5DC1AEBC22C1"
$"D9BC3EC1C4BC31C1F2BC35C22DBC42C20FBC27C260BBC8C28EBBF7C27EBBD6C2"
$"ABBBE2C2ECBBE5C2CABBE1C31EBB81C34BBBB3C34835C350BB1DC332BB3CC341"
$"BB22C359BB10C3A5BB20C381BB02C3CCBAADC3C1BACEC3CFBA7CC3AABA3EC351"
$"BA57C380BA37C370BA13C3A8BA33C398B9FCC3B2B9D6C392B9E6C3A1B9AFC36B"
$"B981C305B993C339B977C30EB962C321B96CC318B931C2EBB94BC25EB94AC29F"
$"B939C273B908C28DB927C28CB8FBC25FB904C1FEB900C22EB907C1ECB916C1C9"
$"B90FC1DAB929C1EEB951C239B93AC216B969C25DB9ABC298B988C27EB9E4C2C3"
$"BA74C2CDBA2EC2D4BAB2C2C6BB13C276BAE9C2A3BB4AC234BB59C187BB5CC1DB"
$"BB5AC142BB3CC0BBBB4EC0FDBB31C096021AC12EC2E5C118C2E2C14DC2E3C166"
$"C2A8C15CC2C2C170C2BEC17FC2EDC179C2D5C196C34AC181C40BC19DC3AEC175"
$"C42CC147C463C164C44FC130C472C115C445C121C454C107C469C0C7C49DC0F3"
$"C497C0A9C4A2C08BC46EC09AC483C083C49DC04FC4F0C073C4CEC03BC505BFFD"
$"C4FBC016C50DBFE7C4EABFCFC4B6BFDDC4CEBFC1C4C9BF97C4E3BFB4C4E8BF78"
$"C4DCBF4EC4ABBF62C4C2BF3AC494BF1EC45CBF30C475BF0DC44CBEE8C42CBEF3"
$"C443BEBFC3E5BED0C340BEC1C38FBED8C33EBEE9C339BEE0C33BBEF2C350BF13"
$"C376BEFBC36ABF33C387BF75C364BF5CC37CBF90C34DBFA6C30ABF9CC32ABFB4"
$"C324BFDDC351BFBFC345BFF4C35CC022C345C00EC352C03BC334C055C2FDC048"
$"C318C05FC309C073C320C068C316C083C330C0B1C328C09DC32EC0D8C318C0F7"
$"C2C8C0EDC2EFC108C2D3020AC201BC28C1B8BC58C26ABBDDC36DBBAEC2E9BBA2"
$"C360BBB9C343BBCCC352BBC3C325BBDDC2EBBC01C30ABBF2C301BBECC32DBBBF"
$"C319BBD748BBBFC282BBF6C2B6BBD8C22EBC28C19BBCA8C1E3BC66C147BCF7C0"
$"ADBDA5C0F5BD4AC0A6BDA3C098BD9EC09FBDA1C0CBBD58C13DBCD5C103BD16C1"
$"7ABC970205C29BBCA8C23EBCDCC2C9BC91C32DBC74C2F9BC79C319BC88C2E6BC"
$"A1C2FFBC95C2A0BCC4C229BD29C261BCF3C204BD48C1B9BD86C1E4BD6FC1E9BD"
$"260205C3FFBC88C3B3BCA2C41EBC7DC45FBC75C43EBC74C44FBC81C42BBC8EC4"
$"3EBC89C405BC9AC3BEBCC1C3E1BCADC393BCDCC33EBD13C36DBD00C36ABCCF02"
$"07C22ABE1BC21ABE24C293BDE2C380BDB5C308BDBFC3AFBDB0C40EBDB9C3E0BD"
$"AEC3D3BDDCC34ABDE9C38BBDD7C2F5BDFDC255BE41C2A5BE1EC244BE49C223BE"
$"5DC233BE53C216BE50C1FCBE39C209BE44C20BBE2E02044030C34530BC3A3030"
$"4030BC3A30C3454050BC3A50C34550504050C34550BC3A1C0A06011B024067BA"
$"0000000000003EDA12C3C3B549B8E30A051314151608090A0D171A1202030405"
$"0607110100124032F3000000000000402C3F38AEA3C438E301178222040A0001"
$"00024032F3000000000000402C3F38AEA3C438E30A000101024032F300000000"
$"0000402C3F38AEA3C438E30A000102024032F3000000000000402C3F38AEA3C4"
$"38E30A010103024032F3000000000000402C3F38AEA3C438E30A010104024032"
$"F3000000000000402C3F38AEA3C438E30A010105024032F3000000000000402C"
$"3F38AEA3C438E30A010106024032F3000000000000402C3F38AEA3C438E30A01"
$"0107024032F3000000000000402C3F38AEA3C438E30A01020809024032F30000"
$"00000000402C3F38AEA3C438E30A01010A024032F3000000000000402C3F38AE"
$"A3C438E30A02010B024032F3000000000000402C3F38AEA3C438E30A02010C02"
$"4032F3000000000000402C3F38AEA3C438E30A02010D024032F3000000000000"
$"402C3F38AEA3C438E30A02010E024032F3000000000000402C3F38AEA3C438E3"
$"0A03020F10024032F3000000000000402C3F38AEA3C438E30A030111024032F3"
$"000000000000402C3F38AEA3C438E30A0503121314124032F300000000000040"
$"2C3F38AEA3C438E301178100040A0303121314024032F3000000000000402C3F"
$"38AEA3C438E30A040115124032F3000000000000402C3F38AEA3C438E3011781"
$"00040A030115024032F3000000000000402C3F38AEA3C438E30A040116124032"
$"F3000000000000402C3F38AEA3C438E301178100040A030116024032F3000000"
$"000000402C3F38AEA3C438E30A040117024032F3000000000000402C3F38AEA3"
$"C438E30A040118024032F3000000000000402C3F38AEA3C438E30A0401190240"
$"32F3000000000000402C3F38AEA3C438E30A04011A024032F300000000000040"
$"2C3F38AEA3C438E3"
};

View File

@@ -0,0 +1,541 @@
From a4dade48889221d8e8a719f79df5baafb7b537df Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Wed, 16 Jan 2019 22:00:42 +1000
Subject: Haiku patches
diff --git a/os-posix.c b/os-posix.c
index 4bd80e4..98565ba 100644
--- a/os-posix.c
+++ b/os-posix.c
@@ -41,6 +41,15 @@
#include <sys/prctl.h>
#endif
+#ifdef __HAIKU__
+#ifndef MCL_CURRENT
+#define MCL_CURRENT 8192
+#endif
+#ifndef MCL_FUTURE
+#define MCL_FUTURE 16384
+#endif
+#endif
+
/*
* Must set all three of these at once.
* Legal combinations are unset by name by uid
diff --git a/target/mips/mips-semi.c b/target/mips/mips-semi.c
index a7aefba..16c2336 100644
--- a/target/mips/mips-semi.c
+++ b/target/mips/mips-semi.c
@@ -75,6 +75,7 @@ enum UHIOpenFlags {
/* Errno values taken from asm-mips/errno.h */
static uint16_t host_to_mips_errno[] = {
+#ifndef __HAIKU__
[ENAMETOOLONG] = 78,
#ifdef EOVERFLOW
[EOVERFLOW] = 79,
@@ -82,6 +83,9 @@ static uint16_t host_to_mips_errno[] = {
#ifdef ELOOP
[ELOOP] = 90,
#endif
+#else
+NULL
+#endif
};
static int errno_mips(int err)
diff --git a/target/xtensa/xtensa-semi.c b/target/xtensa/xtensa-semi.c
index 2f76216..3540ea0 100644
--- a/target/xtensa/xtensa-semi.c
+++ b/target/xtensa/xtensa-semi.c
@@ -96,59 +96,53 @@ enum {
static uint32_t errno_h2g(int host_errno)
{
- static const uint32_t guest_errno[] = {
- [EPERM] = TARGET_EPERM,
- [ENOENT] = TARGET_ENOENT,
- [ESRCH] = TARGET_ESRCH,
- [EINTR] = TARGET_EINTR,
- [EIO] = TARGET_EIO,
- [ENXIO] = TARGET_ENXIO,
- [E2BIG] = TARGET_E2BIG,
- [ENOEXEC] = TARGET_ENOEXEC,
- [EBADF] = TARGET_EBADF,
- [ECHILD] = TARGET_ECHILD,
- [EAGAIN] = TARGET_EAGAIN,
- [ENOMEM] = TARGET_ENOMEM,
- [EACCES] = TARGET_EACCES,
- [EFAULT] = TARGET_EFAULT,
+ switch (host_errno) {
+ case 0: return 0;
+ case EPERM: return TARGET_EPERM;
+ case ENOENT: return TARGET_ENOENT;
+ case ESRCH: return TARGET_ESRCH;
+ case EINTR: return TARGET_EINTR;
+ case EIO: return TARGET_EIO;
+ case ENXIO: return TARGET_ENXIO;
+ case E2BIG: return TARGET_E2BIG;
+ case ENOEXEC: return TARGET_ENOEXEC;
+ case EBADF: return TARGET_EBADF;
+ case ECHILD: return TARGET_ECHILD;
+ case EAGAIN: return TARGET_EAGAIN;
+ case ENOMEM: return TARGET_ENOMEM;
+ case EACCES: return TARGET_EACCES;
+ case EFAULT: return TARGET_EFAULT;
#ifdef ENOTBLK
- [ENOTBLK] = TARGET_ENOTBLK,
+ case ENOTBLK: return TARGET_ENOTBLK;
#endif
- [EBUSY] = TARGET_EBUSY,
- [EEXIST] = TARGET_EEXIST,
- [EXDEV] = TARGET_EXDEV,
- [ENODEV] = TARGET_ENODEV,
- [ENOTDIR] = TARGET_ENOTDIR,
- [EISDIR] = TARGET_EISDIR,
- [EINVAL] = TARGET_EINVAL,
- [ENFILE] = TARGET_ENFILE,
- [EMFILE] = TARGET_EMFILE,
- [ENOTTY] = TARGET_ENOTTY,
+ case EBUSY: return TARGET_EBUSY;
+ case EEXIST: return TARGET_EEXIST;
+ case EXDEV: return TARGET_EXDEV;
+ case ENODEV: return TARGET_ENODEV;
+ case ENOTDIR: return TARGET_ENOTDIR;
+ case EISDIR: return TARGET_EISDIR;
+ case EINVAL: return TARGET_EINVAL;
+ case ENFILE: return TARGET_ENFILE;
+ case EMFILE: return TARGET_EMFILE;
+ case ENOTTY: return TARGET_ENOTTY;
#ifdef ETXTBSY
- [ETXTBSY] = TARGET_ETXTBSY,
+ case ETXTBSY: return TARGET_ETXTBSY;
#endif
- [EFBIG] = TARGET_EFBIG,
- [ENOSPC] = TARGET_ENOSPC,
- [ESPIPE] = TARGET_ESPIPE,
- [EROFS] = TARGET_EROFS,
- [EMLINK] = TARGET_EMLINK,
- [EPIPE] = TARGET_EPIPE,
- [EDOM] = TARGET_EDOM,
- [ERANGE] = TARGET_ERANGE,
- [ENOSYS] = TARGET_ENOSYS,
+ case EFBIG: return TARGET_EFBIG;
+ case ENOSPC: return TARGET_ENOSPC;
+ case ESPIPE: return TARGET_ESPIPE;
+ case EROFS: return TARGET_EROFS;
+ case EMLINK: return TARGET_EMLINK;
+ case EPIPE: return TARGET_EPIPE;
+ case EDOM: return TARGET_EDOM;
+ case ERANGE: return TARGET_ERANGE;
+ case ENOSYS: return TARGET_ENOSYS;
#ifdef ELOOP
- [ELOOP] = TARGET_ELOOP,
+ case ELOOP: return TARGET_ELOOP;
#endif
};
- if (host_errno == 0) {
- return 0;
- } else if (host_errno > 0 && host_errno < ARRAY_SIZE(guest_errno) &&
- guest_errno[host_errno]) {
- return guest_errno[host_errno];
- } else {
- return TARGET_EINVAL;
- }
+ return TARGET_EINVAL;
}
typedef struct XtensaSimConsole {
diff --git a/tests/Makefile.include b/tests/Makefile.include
index fb0b449..6780e70 100644
--- a/tests/Makefile.include
+++ b/tests/Makefile.include
@@ -778,7 +778,7 @@ tests/migration/initrd-stress.img: tests/migration/stress$(EXESUF)
rmdir $(INITRD_WORK_DIR)
ifeq ($(CONFIG_POSIX),y)
-LIBS += -lutil
+LIBS +=
endif
# QTest rules
diff --git a/util/compatfd.c b/util/compatfd.c
index 980bd33..31e01d6 100644
--- a/util/compatfd.c
+++ b/util/compatfd.c
@@ -17,7 +17,9 @@
#include "qemu-common.h"
#include "qemu/thread.h"
+#ifndef __HAIKU__
#include <sys/syscall.h>
+#endif
struct sigfd_compat_info
{
diff --git a/util/main-loop.c b/util/main-loop.c
index affe040..de89c2c 100644
--- a/util/main-loop.c
+++ b/util/main-loop.c
@@ -83,7 +83,9 @@ static int qemu_signal_init(void)
*/
sigemptyset(&set);
sigaddset(&set, SIG_IPI);
+#ifdef SIGIO
sigaddset(&set, SIGIO);
+#endif
sigaddset(&set, SIGALRM);
sigaddset(&set, SIGBUS);
/* SIGINT cannot be handled via signalfd, so that ^C can be used
diff --git a/util/oslib-posix.c b/util/oslib-posix.c
index c1bee2a..b1011b0 100644
--- a/util/oslib-posix.c
+++ b/util/oslib-posix.c
@@ -36,7 +36,9 @@
#include "qapi/error.h"
#include "qemu/sockets.h"
#include <libgen.h>
+#ifndef __HAIKU__
#include <sys/signal.h>
+#endif
#include "qemu/cutils.h"
#ifdef CONFIG_LINUX
diff --git a/util/qemu-openpty.c b/util/qemu-openpty.c
index 2e8b43b..adcc732 100644
--- a/util/qemu-openpty.c
+++ b/util/qemu-openpty.c
@@ -35,7 +35,9 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
-#if defined(__GLIBC__)
+#if defined(__HAIKU__)
+# include <termios.h>
+#elif defined(__GLIBC__)
# include <pty.h>
#elif defined CONFIG_BSD
# include <termios.h>
--
2.19.1
From 47e776e4f6736ac5cc283747e810ecc6a16f45aa Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Wed, 16 Jan 2019 22:01:29 +1000
Subject: Haiku build fix
diff --git a/configure b/configure
index 0a3c6a7..2013a19 100755
--- a/configure
+++ b/configure
@@ -865,8 +865,8 @@ SunOS)
;;
Haiku)
haiku="yes"
- QEMU_CFLAGS="-DB_USE_POSITIVE_POSIX_ERRORS $QEMU_CFLAGS"
- LIBS="-lposix_error_mapper -lnetwork $LIBS"
+ QEMU_CFLAGS="-DB_USE_POSITIVE_POSIX_ERRORS -D_BSD_SOURCE $QEMU_CFLAGS"
+ LIBS="-lposix_error_mapper -lnetwork -lbsd $LIBS"
;;
Linux)
audio_drv_list="oss"
diff --git a/include/qemu/bswap.h b/include/qemu/bswap.h
index a684c1a..09bdb7f 100644
--- a/include/qemu/bswap.h
+++ b/include/qemu/bswap.h
@@ -8,6 +8,8 @@
# include <machine/bswap.h>
#elif defined(__FreeBSD__)
# include <sys/endian.h>
+#elif defined(__HAIKU__)
+# include <endian.h>
#elif defined(CONFIG_BYTESWAP_H)
# include <byteswap.h>
--
2.19.1
From b264891c1f3d2e9d40e0fc8f082e304e7a3295bf Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Wed, 16 Jan 2019 22:02:47 +1000
Subject: Fix keymap for Haiku
diff --git a/ui/input-keymap-haiku-to-qcode.h b/ui/input-keymap-haiku-to-qcode.h
new file mode 100644
index 0000000..c3b4fff
--- /dev/null
+++ b/ui/input-keymap-haiku-to-qcode.h
@@ -0,0 +1,105 @@
+const guint16 qemu_input_map_haiku_to_qcode[] = {
+ [0x00] = Q_KEY_CODE_UNMAPPED,
+ [0x01] = Q_KEY_CODE_ESC,
+ [0x02] = Q_KEY_CODE_F1,
+ [0x03] = Q_KEY_CODE_F2,
+ [0x04] = Q_KEY_CODE_F3,
+ [0x05] = Q_KEY_CODE_F4,
+ [0x06] = Q_KEY_CODE_F5,
+ [0x07] = Q_KEY_CODE_F6,
+ [0x08] = Q_KEY_CODE_F7,
+ [0x09] = Q_KEY_CODE_F8,
+ [0x0a] = Q_KEY_CODE_F9,
+ [0x0b] = Q_KEY_CODE_F10,
+ [0x0c] = Q_KEY_CODE_F11,
+ [0x0d] = Q_KEY_CODE_F12,
+ [0x0e] = Q_KEY_CODE_SYSRQ,
+ [0x0f] = Q_KEY_CODE_SCROLL_LOCK,
+ [0x10] = Q_KEY_CODE_UNMAPPED, // ?
+ [0x11] = Q_KEY_CODE_GRAVE_ACCENT,
+ [0x12] = Q_KEY_CODE_1,
+ [0x13] = Q_KEY_CODE_2,
+ [0x14] = Q_KEY_CODE_3,
+ [0x15] = Q_KEY_CODE_4,
+ [0x16] = Q_KEY_CODE_5,
+ [0x17] = Q_KEY_CODE_6,
+ [0x18] = Q_KEY_CODE_7,
+ [0x19] = Q_KEY_CODE_8,
+ [0x1a] = Q_KEY_CODE_9,
+ [0x1b] = Q_KEY_CODE_0,
+ [0x1c] = Q_KEY_CODE_MINUS,
+ [0x1d] = Q_KEY_CODE_EQUAL,
+ [0x1e] = Q_KEY_CODE_BACKSPACE,
+ [0x1f] = Q_KEY_CODE_INSERT,
+ [0x20] = Q_KEY_CODE_HOME,
+ [0x21] = Q_KEY_CODE_PGUP,
+ [0x22] = Q_KEY_CODE_NUM_LOCK,
+ [0x23] = Q_KEY_CODE_KP_DIVIDE,
+ [0x24] = Q_KEY_CODE_KP_MULTIPLY,
+ [0x25] = Q_KEY_CODE_KP_SUBTRACT,
+ [0x26] = Q_KEY_CODE_TAB,
+ [0x27] = Q_KEY_CODE_Q,
+ [0x28] = Q_KEY_CODE_W,
+ [0x29] = Q_KEY_CODE_E,
+ [0x2a] = Q_KEY_CODE_R,
+ [0x2b] = Q_KEY_CODE_T,
+ [0x2c] = Q_KEY_CODE_Y,
+ [0x2d] = Q_KEY_CODE_U,
+ [0x2e] = Q_KEY_CODE_I,
+ [0x2f] = Q_KEY_CODE_O,
+ [0x30] = Q_KEY_CODE_P,
+ [0x31] = Q_KEY_CODE_BRACKET_LEFT,
+ [0x32] = Q_KEY_CODE_BRACKET_RIGHT,
+ [0x33] = Q_KEY_CODE_BACKSLASH,
+ [0x34] = Q_KEY_CODE_DELETE,
+ [0x35] = Q_KEY_CODE_END,
+ [0x36] = Q_KEY_CODE_PGDN,
+ [0x37] = Q_KEY_CODE_KP_7,
+ [0x38] = Q_KEY_CODE_KP_8,
+ [0x39] = Q_KEY_CODE_KP_9,
+ [0x3a] = Q_KEY_CODE_KP_ADD,
+ [0x3b] = Q_KEY_CODE_CAPS_LOCK,
+ [0x3c] = Q_KEY_CODE_A,
+ [0x3d] = Q_KEY_CODE_S,
+ [0x3e] = Q_KEY_CODE_D,
+ [0x3f] = Q_KEY_CODE_F,
+ [0x40] = Q_KEY_CODE_G,
+ [0x41] = Q_KEY_CODE_H,
+ [0x42] = Q_KEY_CODE_J,
+ [0x43] = Q_KEY_CODE_K,
+ [0x44] = Q_KEY_CODE_L,
+ [0x45] = Q_KEY_CODE_SEMICOLON,
+ [0x46] = Q_KEY_CODE_APOSTROPHE,
+ [0x47] = Q_KEY_CODE_RET,
+ [0x48] = Q_KEY_CODE_KP_4,
+ [0x49] = Q_KEY_CODE_KP_5,
+ [0x4a] = Q_KEY_CODE_KP_6,
+ [0x4b] = Q_KEY_CODE_SHIFT,
+ [0x4c] = Q_KEY_CODE_Z,
+ [0x4d] = Q_KEY_CODE_X,
+ [0x4e] = Q_KEY_CODE_C,
+ [0x4f] = Q_KEY_CODE_V,
+ [0x50] = Q_KEY_CODE_B,
+ [0x51] = Q_KEY_CODE_N,
+ [0x52] = Q_KEY_CODE_M,
+ [0x53] = Q_KEY_CODE_COMMA,
+ [0x54] = Q_KEY_CODE_DOT,
+ [0x55] = Q_KEY_CODE_SLASH,
+ [0x56] = Q_KEY_CODE_SHIFT_R,
+ [0x57] = Q_KEY_CODE_UP,
+ [0x58] = Q_KEY_CODE_KP_1,
+ [0x59] = Q_KEY_CODE_KP_2,
+ [0x5a] = Q_KEY_CODE_KP_3,
+ [0x5b] = Q_KEY_CODE_KP_ENTER,
+ [0x5c] = Q_KEY_CODE_CTRL,
+ [0x5d] = Q_KEY_CODE_ALT,
+ [0x5e] = Q_KEY_CODE_SPC,
+ [0x5f] = Q_KEY_CODE_ALT_R,
+ [0x60] = Q_KEY_CODE_CTRL_R,
+ [0x61] = Q_KEY_CODE_LEFT,
+ [0x62] = Q_KEY_CODE_DOWN,
+ [0x63] = Q_KEY_CODE_RIGHT,
+ [0x64] = Q_KEY_CODE_KP_0,
+ [0x65] = Q_KEY_CODE_KP_DECIMAL
+};
+const guint qemu_input_map_haiku_to_qcode_len = sizeof(qemu_input_map_haiku_to_qcode)/sizeof(qemu_input_map_haiku_to_qcode[0]);
diff --git a/ui/sdl.c b/ui/sdl.c
index 190b16f..b2c0590 100644
--- a/ui/sdl.c
+++ b/ui/sdl.c
@@ -35,9 +35,12 @@
#include "ui/console.h"
#include "ui/input.h"
#include "sysemu/sysemu.h"
-#ifndef WIN32
+#if !defined(WIN32) && !defined(__HAIKU__)
#include "x_keymap.h"
#endif
+#if defined(__HAIKU__)
+#include "input-keymap-haiku-to-qcode.h"
+#endif
#include "sdl_zoom.h"
static DisplayChangeListener *dcl;
@@ -224,6 +227,9 @@ static const guint16 *sdl_get_keymap(size_t *maplen)
#if defined(WIN32)
*maplen = qemu_input_map_atset1_to_qcode_len;
return qemu_input_map_atset1_to_qcode;
+#elif defined(__HAIKU__)
+ *maplen = qemu_input_map_haiku_to_qcode_len;
+ return qemu_input_map_haiku_to_qcode;
#else
#if defined(SDL_VIDEO_DRIVER_X11)
SDL_SysWMinfo info;
diff --git a/ui/x_keymap.c b/ui/x_keymap.c
index 2bc0143..6e29686 100644
--- a/ui/x_keymap.c
+++ b/ui/x_keymap.c
@@ -9,6 +9,7 @@
* published by the Free Software Foundation.
*/
+#ifndef __HAIKU__
#include "qemu/osdep.h"
#include "x_keymap.h"
@@ -112,3 +113,4 @@ const guint16 *qemu_xkeymap_mapping_table(Display *dpy, size_t *maplen)
return NULL;
}
}
+#endif
diff --git a/ui/x_keymap.h b/ui/x_keymap.h
index 0395e33..96f4812 100644
--- a/ui/x_keymap.h
+++ b/ui/x_keymap.h
@@ -25,8 +25,11 @@
#ifndef QEMU_X_KEYMAP_H
#define QEMU_X_KEYMAP_H
+#ifndef __HAIKU__
+
#include <X11/Xlib.h>
const guint16 *qemu_xkeymap_mapping_table(Display *dpy, size_t *maplen);
#endif
+#endif
diff --git a/util/qemu-thread-posix.c b/util/qemu-thread-posix.c
index 865e476..faa3d9a 100644
--- a/util/qemu-thread-posix.c
+++ b/util/qemu-thread-posix.c
@@ -293,7 +293,11 @@ int qemu_sem_timedwait(QemuSemaphore *sem, int ms)
}
}
if (rc < 0) {
+#ifndef __HAIKU__
error_exit(errno, __func__);
+#else
+ return -1;
+#endif
}
return 0;
#endif
--
2.19.1
From a4a7a33d9a708302d158f64767ce0c368c0490c7 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Wed, 16 Jan 2019 22:03:12 +1000
Subject: Fix crash on qemu-img exit
diff --git a/util/notify.c b/util/notify.c
index 06de63a..9f85c2d 100644
--- a/util/notify.c
+++ b/util/notify.c
@@ -37,6 +37,9 @@ void notifier_list_notify(NotifierList *list, void *data)
Notifier *notifier, *next;
QLIST_FOREACH_SAFE(notifier, &list->notifiers, node, next) {
+#ifdef __HAIKU__
+ if(notifier->notify == NULL)break;
+#endif
notifier->notify(notifier, data);
}
}
--
2.19.1
From c0e278138903513f4c747572421e371436dc980a Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Wed, 16 Jan 2019 23:29:06 +1000
Subject: Use system int defs
diff --git a/disas/nanomips.h b/disas/nanomips.h
index 84cc9a6..742a867 100644
--- a/disas/nanomips.h
+++ b/disas/nanomips.h
@@ -24,10 +24,14 @@
#include <string>
+#ifndef __HAIKU__
typedef unsigned short uint16;
typedef unsigned int uint32;
typedef long long int64;
typedef unsigned long long uint64;
+#else
+#include <SupportDefs.h>
+#endif
namespace img
{
--
2.19.1
From 6be2d318e0899d9e58070e9819904f6040e705b1 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Wed, 16 Jan 2019 23:29:29 +1000
Subject: Disable mlockall for Haiku
diff --git a/os-posix.c b/os-posix.c
index 98565ba..668a405 100644
--- a/os-posix.c
+++ b/os-posix.c
@@ -361,11 +361,11 @@ bool is_daemonized(void)
int os_mlock(void)
{
int ret = 0;
-
+#ifndef __HAIKU__
ret = mlockall(MCL_CURRENT | MCL_FUTURE);
if (ret < 0) {
error_report("mlockall: %s", strerror(errno));
}
-
+#endif
return ret;
}
--
2.19.1

View File

@@ -0,0 +1,221 @@
SUMMARY="A generic and open source machine emulator and virtualizer"
DESCRIPTION="QEMU is a generic and open source machine emulator and virtualizer.
QEMU can run OSes and programs made for one machine (e.g. an ARM board) on a \
different machine (e.g. your own PC). By using dynamic translation, it \
achieves very good performance."
HOMEPAGE="https://www.qemu.org/"
COPYRIGHT="2003-2018 Fabrice Bellard"
LICENSE="GNU GPL v2"
REVISION="1"
SOURCE_URI="https://download.qemu.org/qemu-$portVersion.tar.xz"
CHECKSUM_SHA256="6a0508df079a0a33c2487ca936a56c12122f105b8a96a44374704bef6c69abfc"
SOURCE_DIR="qemu-$portVersion"
PATCHES="qemu-$portVersion.patchset"
ADDITIONAL_FILES="qemu.rdef.in"
ARCHITECTURES="!x86_gcc2 x86 x86_64"
SECONDARY_ARCHITECTURES="x86"
commandSuffix=$secondaryArchSuffix
commandBinDir=$binDir
if [ "$targetArchitecture" = x86_gcc2 ]; then
commandSuffix=
commandBinDir=$prefix/bin
fi
platformList="x86 arm mips ppc sparc m68k"
archList_x86="i386 x86_64"
archList_arm="arm aarch64"
archList_mips="mips mipsel mips64 mips64el"
archList_ppc="ppc ppc64"
archList_sparc="sparc sparc64"
archList_m68k="m68k"
PROVIDES="
qemu$secondaryArchSuffix = $portVersion
cmd:qemu_edid$commandSuffix = $portVersion
cmd:qemu_img$commandSuffix = $portVersion
cmd:qemu_io$commandSuffix = $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix
cmd:iasl
lib:libbz2$secondaryArchSuffix
lib:libcapstone$secondaryArchSuffix
lib:libcurl$secondaryArchSuffix
lib:libfdt$secondaryArchSuffix
lib:libgcrypt$secondaryArchSuffix
lib:libglib_2.0$secondaryArchSuffix
lib:libgnutls$secondaryArchSuffix
lib:libgpg_error$secondaryArchSuffix
lib:libintl$secondaryArchSuffix
lib:libjpeg$secondaryArchSuffix
lib:liblzo2$secondaryArchSuffix
lib:libncursesw$secondaryArchSuffix
lib:libnettle$secondaryArchSuffix
lib:libpixman_1$secondaryArchSuffix
lib:libpng16$secondaryArchSuffix
lib:libSDL_1.2$secondaryArchSuffix
lib:libsnappy$secondaryArchSuffix
lib:libssh2$secondaryArchSuffix
lib:libssp$secondaryArchSuffix
lib:libtasn1$secondaryArchSuffix
lib:libusb_1.0$secondaryArchSuffix
lib:libxml2$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
PROVIDES_x86="
cmd:qemu$commandSuffix = $portVersion
cmd:qemu_system_i386$commandSuffix = $portVersion
cmd:qemu_system_x86_64$commandSuffix = $portVersion
"
REQUIRES_x86="
$REQUIRES
qemu$secondaryArchSuffix
"
SUPPLEMENTS_x86="
qemu$secondaryArchSuffix
"
PROVIDES_arm="
cmd:qemu_system_aarch64$commandSuffix = $portVersion
cmd:qemu_system_arm$commandSuffix = $portVersion
"
REQUIRES_arm=$REQUIRES_x86
PROVIDES_mips="
cmd:qemu_system_mips$commandSuffix = $portVersion
cmd:qemu_system_mips64$commandSuffix = $portVersion
cmd:qemu_system_mips64el$commandSuffix = $portVersion
cmd:qemu_system_mipsel$commandSuffix = $portVersion
"
REQUIRES_mips=$REQUIRES_x86
PROVIDES_ppc="
cmd:qemu_system_ppc$commandSuffix = $portVersion
cmd:qemu_system_ppc64$commandSuffix = $portVersion
"
REQUIRES_ppc=$REQUIRES_x86
PROVIDES_sparc="
cmd:qemu_system_sparc$commandSuffix = $portVersion
cmd:qemu_system_sparc64$commandSuffix = $portVersion
"
REQUIRES_sparc=$REQUIRES_x86
PROVIDES_m68k="
cmd:qemu_system_m68k$commandSuffix = $portVersion
"
REQUIRES_m68k=$REQUIRES_x86
BUILD_REQUIRES="
devel:libbz2$secondaryArchSuffix
devel:libcapstone$secondaryArchSuffix
devel:libcurl$secondaryArchSuffix
devel:libfdt$secondaryArchSuffix
devel:libgcrypt$secondaryArchSuffix
devel:libglib_2.0$secondaryArchSuffix
devel:libgnutls$secondaryArchSuffix
devel:libgpg_error$secondaryArchSuffix
devel:libintl$secondaryArchSuffix
devel:libjpeg$secondaryArchSuffix
devel:liblzo2$secondaryArchSuffix
devel:libncursesw$secondaryArchSuffix
devel:libnettle$secondaryArchSuffix
devel:libpixman_1$secondaryArchSuffix
devel:libpng16$secondaryArchSuffix
devel:libSDL_1.2$secondaryArchSuffix
devel:libsnappy$secondaryArchSuffix
devel:libssh2$secondaryArchSuffix
devel:libtasn1$secondaryArchSuffix
devel:libusb_1.0$secondaryArchSuffix
devel:libxml2$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
haiku${secondaryArchSuffix}_devel
cmd:awk
cmd:cmp
cmd:gcc$secondaryArchSuffix
cmd:gcov$secondaryArchSuffix
cmd:gprof$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:make
cmd:find
cmd:iasl
cmd:pkg_config$secondaryArchSuffix
cmd:pod2man
cmd:python
"
BUILD()
{
export CFLAGS="-I`finddir B_SYSTEM_HEADERS_DIRECTORY`/capstone"
for platformItem in $platformList; do
platformArchList=$(eval echo \$archList_$platformItem)
archList="$archList $platformArchList"
done
for archItem in $archList; do
targetList="$archItem-softmmu,$targetList"
done
runConfigure --omit-dirs "binDir sbinDir" \
--omit-buildspec ./configure \
--bindir="$commandBinDir" --sbindir="$commandBinDir" \
--enable-capstone=system \
--enable-gcrypt \
--disable-tpm \
--target-list="${targetList::-1}"
make $jobArgs
}
INSTALL()
{
make install $jobArgs
local MAJOR="`echo "$portVersion" | cut -d. -f1`"
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
local MINOR="`echo "$portVersion" | cut -d. -f3`"
local LONG_INFO="$SUMMARY"
archList=""
for platformItem in $platformList; do
platformArchList=$(eval echo \$archList_$platformItem)
archList="$archList $platformArchList"
done
for archItem in $archList; do
echo $archItem
local APP_SIGNATURE="application/x-vnd.qemu-system-$archItem"
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/qemu.rdef.in > qemu-system-$archItem.rdef
addResourcesToBinaries qemu-system-$archItem.rdef $commandBinDir/qemu-system-$archItem
done
# provide convenience symlink to just "qemu"
if [ "$effectiveTargetArchitecture" = x86_64 ]; then
ln -s $commandBinDir/qemu-system-x86_64 $commandBinDir/qemu
else
ln -s $commandBinDir/qemu-system-i386 $commandBinDir/qemu
fi
packageEntries x86 $commandBinDir/qemu
for platformItem in $platformList; do
platformArchList=$(eval echo \$archList_$platformItem)
for archItem in $platformArchList; do
packageEntries $platformItem $commandBinDir/qemu-system-$archItem
done
done
}