{"id":10785,"date":"2024-02-18T15:14:18","date_gmt":"2024-02-18T20:14:18","guid":{"rendered":"https:\/\/www.rushworth.us\/lisa\/?p=10785"},"modified":"2024-03-18T09:18:52","modified_gmt":"2024-03-18T14:18:52","slug":"fedora-finding-build-parameters-for-rpm","status":"publish","type":"post","link":"https:\/\/www.rushworth.us\/lisa\/?p=10785","title":{"rendered":"Fedora: Finding Build Parameters for RPM"},"content":{"rendered":"<p>There have been a few times I&#8217;ve needed to make a custom build of an application &#8212; to enable some feature that the default build does not include or to use a newer version than is available in the package repository &#8212; and I always thought it would be really useful to know what the build parameters <em>were<\/em>. Turns out you <em>can<\/em> find how Fedora packages were build.<\/p>\n<p>Go to <a href=\"https:\/\/koji.fedoraproject.org\">https:\/\/koji.fedoraproject.org<\/a> and search for the package<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" width=\"1478\" height=\"75\" class=\"wp-image-10786\" src=\"https:\/\/www.rushworth.us\/lisa\/wp-content\/uploads\/2024\/03\/word-image-10785-1.png\" srcset=\"https:\/\/www.rushworth.us\/lisa\/wp-content\/uploads\/2024\/03\/word-image-10785-1.png 1478w, https:\/\/www.rushworth.us\/lisa\/wp-content\/uploads\/2024\/03\/word-image-10785-1-300x15.png 300w, https:\/\/www.rushworth.us\/lisa\/wp-content\/uploads\/2024\/03\/word-image-10785-1-1024x52.png 1024w, https:\/\/www.rushworth.us\/lisa\/wp-content\/uploads\/2024\/03\/word-image-10785-1-768x39.png 768w, https:\/\/www.rushworth.us\/lisa\/wp-content\/uploads\/2024\/03\/word-image-10785-1-750x38.png 750w\" sizes=\"auto, (max-width: 1478px) 100vw, 1478px\" \/><\/p>\n<p>Locate \u2018yours\u2019 \u2013 the right version of the application and the right version of Fedora \u2013 and click on the package name<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" width=\"1439\" height=\"531\" class=\"wp-image-10787\" src=\"https:\/\/www.rushworth.us\/lisa\/wp-content\/uploads\/2024\/03\/word-image-10785-2.png\" srcset=\"https:\/\/www.rushworth.us\/lisa\/wp-content\/uploads\/2024\/03\/word-image-10785-2.png 1439w, https:\/\/www.rushworth.us\/lisa\/wp-content\/uploads\/2024\/03\/word-image-10785-2-300x111.png 300w, https:\/\/www.rushworth.us\/lisa\/wp-content\/uploads\/2024\/03\/word-image-10785-2-1024x378.png 1024w, https:\/\/www.rushworth.us\/lisa\/wp-content\/uploads\/2024\/03\/word-image-10785-2-768x283.png 768w, https:\/\/www.rushworth.us\/lisa\/wp-content\/uploads\/2024\/03\/word-image-10785-2-750x277.png 750w\" sizes=\"auto, (max-width: 1439px) 100vw, 1439px\" \/><\/p>\n<p>Scroll down to the \u201cLogs\u201d section \u2013 click on the \u201cbuild.log\u201d for the proper architecture<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" width=\"599\" height=\"469\" class=\"wp-image-10788\" src=\"https:\/\/www.rushworth.us\/lisa\/wp-content\/uploads\/2024\/03\/word-image-10785-3.png\" srcset=\"https:\/\/www.rushworth.us\/lisa\/wp-content\/uploads\/2024\/03\/word-image-10785-3.png 599w, https:\/\/www.rushworth.us\/lisa\/wp-content\/uploads\/2024\/03\/word-image-10785-3-300x235.png 300w\" sizes=\"auto, (max-width: 599px) 100vw, 599px\" \/><\/p>\n<p>Here, you will see the entire log for building the RPM <em>but<\/em> part of that is building the application from source. You\u2019ll be able to find the configuration and make parameters used in the build. As an example, I was trying to determine if Gerbera was build with the REUSEADDR flag (it was) and LIBUPNP disable-blocking-tcp-connections<\/p>\n<p><a href=\"https:\/\/kojipkgs.fedoraproject.org\/\/packages\/gerbera\/2.0.0\/1.fc39\/data\/logs\/x86_64\/build.log\">https:\/\/kojipkgs.fedoraproject.org\/\/packages\/gerbera\/2.0.0\/1.fc39\/data\/logs\/x86_64\/build.log<\/a><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" width=\"1900\" height=\"152\" class=\"wp-image-10789\" src=\"https:\/\/www.rushworth.us\/lisa\/wp-content\/uploads\/2024\/03\/word-image-10785-4.png\" srcset=\"https:\/\/www.rushworth.us\/lisa\/wp-content\/uploads\/2024\/03\/word-image-10785-4.png 1900w, https:\/\/www.rushworth.us\/lisa\/wp-content\/uploads\/2024\/03\/word-image-10785-4-300x24.png 300w, https:\/\/www.rushworth.us\/lisa\/wp-content\/uploads\/2024\/03\/word-image-10785-4-1024x82.png 1024w, https:\/\/www.rushworth.us\/lisa\/wp-content\/uploads\/2024\/03\/word-image-10785-4-768x61.png 768w, https:\/\/www.rushworth.us\/lisa\/wp-content\/uploads\/2024\/03\/word-image-10785-4-1536x123.png 1536w, https:\/\/www.rushworth.us\/lisa\/wp-content\/uploads\/2024\/03\/word-image-10785-4-750x60.png 750w\" sizes=\"auto, (max-width: 1900px) 100vw, 1900px\" \/><\/p>\n<p>In my particular case, I then had to find the libupnp package and see how <em>that<\/em> was built \u2013 they\u2019ve got <em>enable<\/em> blocking tcp connections. Reusing the parameters from the RPM allows me to build packages that land files in &#8220;the right place&#8221; (or, rather, the place used in the Fedora package) and include any features they&#8217;ve included.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>There have been a few times I&#8217;ve needed to make a custom build of an application &#8212; to enable some feature that the default build does not include or to use a newer version than is available in the package repository &#8212; and I always thought it would be really useful to know what the &hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[30],"tags":[47],"class_list":["post-10785","post","type-post","status-publish","format-standard","hentry","category-system-administration","tag-fedora"],"_links":{"self":[{"href":"https:\/\/www.rushworth.us\/lisa\/index.php?rest_route=\/wp\/v2\/posts\/10785","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.rushworth.us\/lisa\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.rushworth.us\/lisa\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.rushworth.us\/lisa\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rushworth.us\/lisa\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=10785"}],"version-history":[{"count":1,"href":"https:\/\/www.rushworth.us\/lisa\/index.php?rest_route=\/wp\/v2\/posts\/10785\/revisions"}],"predecessor-version":[{"id":10790,"href":"https:\/\/www.rushworth.us\/lisa\/index.php?rest_route=\/wp\/v2\/posts\/10785\/revisions\/10790"}],"wp:attachment":[{"href":"https:\/\/www.rushworth.us\/lisa\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=10785"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rushworth.us\/lisa\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=10785"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rushworth.us\/lisa\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=10785"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}