[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-buildsystem
Subject:    Re: Review Request 122135: Add ecm_add_app_icon function.
From:       "Alex Merry" <alex.merry () kde ! org>
Date:       2015-01-20 22:57:34
Message-ID: 20150120225734.32443.59284 () probe ! kde ! org
[Download RAW message or body]

--===============6912261200687089999==
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit



> On Jan. 20, 2015, 8:13 p.m., Jeremy Whiting wrote:
> > Works on osx, very nice, thanks. Unfortunately I can't test it on windows \
> > currently, but I will try it there soon also, for some definition of soon. 
> > Ralf can you test this on windows? Feel free to try kanagram's appicon branch if \
> > you want.
> 
> Ralf Habacker wrote:
> Thanks for this offer, I will come back to this later. 
> I already have a ready to go cross compile environment for umbrello (based on \
> https://build.opensuse.org/package/show/home:rhabacker:branches:windows:mingw:win32:KF5/mingw32-umbrello5), \
> with which I checked this :-) 
> I used the linux variant of png2ico from S Benkmann on opensuse and got on \
> configure time:  
> --- Found Png2Ico: /usr/bin/png2ico  
> png2ico 2002-12-08  (c) Matthias S. Benkmann
> USAGE: png2ico icofile [--colors <num>] pngfile1 [pngfile2 ...]
> 
> 
> One issue I found is that the scripts does not work with relativ pathes: 
> 
> I'm in <umbrello-source-root-dir>/umbrello/umbrello and have \
> pics/global/hi*-apps-umbrello.png below that 
> so I added 
> 
> ecm_add_app_icon(umbrello_SRCS
> ICONS
> pics/global/hi16-apps-umbrello.png
> pics/global/hi22-apps-umbrello.png
> pics/global/hi32-apps-umbrello.png
> pics/global/hi48-apps-umbrello.png
> pics/global/hi64-apps-umbrello.png
> pics/global/hi128-apps-umbrello.png
> )
> 
> and got 
> 
> cd /home/ralf/src/kf5/umbrello-cross-build/umbrello && /usr/bin/png2ico \
> /home/ralf/src/kf5/umbrello-cross-build/umbrello/umbrello_SRCS.ico \
> pics/global/hi16-apps-umbrello.png     pics/global/hi32-apps-umbrello.png \
> pics/global/hi48-apps-umbrello.png pics/global/hi64-apps-umbrello.png \
> pics/global/hi128-apps-umbrello.png 
> pics/global/hi16-apps-umbrello.png: No such file or directory
> 
> Only absolute pathes works
> 
> ecm_add_app_icon(umbrello_SRCS
> ICONS
> ${CMAKE_CURRENT_SOURCE_DIR}/pics/global/hi16-apps-umbrello.png
> ${CMAKE_CURRENT_SOURCE_DIR}/pics/global/hi22-apps-umbrello.png
> ${CMAKE_CURRENT_SOURCE_DIR}/pics/global/hi32-apps-umbrello.png
> ${CMAKE_CURRENT_SOURCE_DIR}/pics/global/hi48-apps-umbrello.png
> ${CMAKE_CURRENT_SOURCE_DIR}/pics/global/hi64-apps-umbrello.png
> ${CMAKE_CURRENT_SOURCE_DIR}/pics/global/hi128-apps-umbrello.png
> )
> 
> Otherwise cross compile umbrello running with wine shows application icon in the \
> top left corner :-)

Awesome, thanks for checking this. I'll look at making it work with relative paths as \
well.


- Alex


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/122135/#review74433
-----------------------------------------------------------


On Jan. 20, 2015, 8:07 p.m., Alex Merry wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/122135/
> -----------------------------------------------------------
> 
> (Updated Jan. 20, 2015, 8:07 p.m.)
> 
> 
> Review request for Extra Cmake Modules, Ralf Habacker and Jeremy Whiting.
> 
> 
> Repository: extra-cmake-modules
> 
> 
> Description
> -------
> 
> This adds an application icon to an executable from PNG files for
> Windows and Mac OS X. Unlike the similar kde4_add_app_icon macro from
> kdelibs, this requires icons to be explicitly listed as arguments
> (meaning CMake can tell when ones are added or deleted and reconfigure
> as appropriate), and it works with Matthias Benkmann's png2ico tool, as
> well as the KDE-Win tool of the same name.
> 
> Currently missing unit tests. Also completely untested (except that
> `make test` runs on Linux, so there are no obvious syntax errors).
> 
> With thanks to Ralf Habacker for the initial work on porting
> kde4_add_app_icon.
> 
> CHANGELOG: Add ECMAddAppIcon module to add icons to executable targets
> on Windows and Mac OS X.
> 
> 
> Diffs
> -----
> 
> docs/find-module/FindPng2Ico.rst PRE-CREATION 
> docs/module/ECMAddAppIcon.rst PRE-CREATION 
> find-modules/FindPng2Ico.cmake PRE-CREATION 
> modules/ECMAddAppIcon.cmake PRE-CREATION 
> 
> Diff: https://git.reviewboard.kde.org/r/122135/diff/
> 
> 
> Testing
> -------
> 
> `make test` passes, which just provides a very basic check for syntax errors.
> 
> 
> Thanks,
> 
> Alex Merry
> 
> 


--===============6912261200687089999==
MIME-Version: 1.0
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: 7bit




<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="12" style="border: 1px #c9c399 \
solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">  \
<tr>  <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="https://git.reviewboard.kde.org/r/122135/">https://git.reviewboard.kde.org/r/122135/</a>
  </td>
    </tr>
   </table>
   <br />





<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <p style="margin-top: 0;">On January 20th, 2015, 8:13 p.m. UTC, <b>Jeremy \
Whiting</b> wrote:</p>  <blockquote style="margin-left: 1em; border-left: 2px solid \
#d0d0d0; padding-left: 10px;">  <pre style="white-space: pre-wrap; white-space: \
-moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: \
break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: inherit;">Works on osx, very nice, thanks. Unfortunately I can't \
test it on windows currently, but I will try it there soon also, for some definition \
of soon.</p> <p style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: inherit;">Ralf can you test this on windows? Feel free to try \
kanagram's appicon branch if you want.</p></pre>  </blockquote>




 <p>On January 20th, 2015, 9:07 p.m. UTC, <b>Ralf Habacker</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: \
0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: \
inherit;">Thanks for this offer, I will come back to this later.  I already have a \
ready to go cross compile environment for umbrello (based on \
https://build.opensuse.org/package/show/home:rhabacker:branches:windows:mingw:win32:KF5/mingw32-umbrello5), \
with which I checked this :-)</p> <p style="padding: 0;text-rendering: \
inherit;margin: 0;line-height: inherit;white-space: inherit;">I used the linux \
variant of png2ico from S Benkmann on opensuse and got on configure time: </p> <p \
style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: \
inherit;">--- Found Png2Ico: /usr/bin/png2ico<br style="padding: 0;text-rendering: \
inherit;margin: 0;line-height: inherit;white-space: normal;" /> png2ico 2002-12-08  \
                (c) Matthias S. Benkmann
USAGE: png2ico icofile [--colors &lt;num&gt;] pngfile1 [pngfile2 ...]</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: inherit;">One issue I found is that the scripts does not work \
with relativ pathes: </p> <p style="padding: 0;text-rendering: inherit;margin: \
0;line-height: inherit;white-space: inherit;">I'm in \
&lt;umbrello-source-root-dir&gt;/umbrello/umbrello and have \
pics/global/hi*-apps-umbrello.png below that</p> <p style="padding: 0;text-rendering: \
inherit;margin: 0;line-height: inherit;white-space: inherit;">so I added </p> <p \
style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: \
inherit;">ecm_add_app_icon(umbrello_SRCS  ICONS
    pics/global/hi16-apps-umbrello.png
    pics/global/hi22-apps-umbrello.png
    pics/global/hi32-apps-umbrello.png
    pics/global/hi48-apps-umbrello.png
    pics/global/hi64-apps-umbrello.png
    pics/global/hi128-apps-umbrello.png
)</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: inherit;">and got </p> <p style="padding: 0;text-rendering: \
inherit;margin: 0;line-height: inherit;white-space: inherit;">cd \
/home/ralf/src/kf5/umbrello-cross-build/umbrello &amp;&amp; /usr/bin/png2ico \
/home/ralf/src/kf5/umbrello-cross-build/umbrello/umbrello_SRCS.ico \
pics/global/hi16-apps-umbrello.png     pics/global/hi32-apps-umbrello.png \
pics/global/hi48-apps-umbrello.png pics/global/hi64-apps-umbrello.png \
pics/global/hi128-apps-umbrello.png</p> <p style="padding: 0;text-rendering: \
inherit;margin: 0;line-height: inherit;white-space: \
inherit;">pics/global/hi16-apps-umbrello.png: No such file or directory</p> <p \
style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: \
inherit;">Only absolute pathes works</p> <p style="padding: 0;text-rendering: \
inherit;margin: 0;line-height: inherit;white-space: \
inherit;">ecm_add_app_icon(umbrello_SRCS  ICONS
    ${CMAKE_CURRENT_SOURCE_DIR}/pics/global/hi16-apps-umbrello.png
    ${CMAKE_CURRENT_SOURCE_DIR}/pics/global/hi22-apps-umbrello.png
    ${CMAKE_CURRENT_SOURCE_DIR}/pics/global/hi32-apps-umbrello.png
    ${CMAKE_CURRENT_SOURCE_DIR}/pics/global/hi48-apps-umbrello.png
    ${CMAKE_CURRENT_SOURCE_DIR}/pics/global/hi64-apps-umbrello.png
    ${CMAKE_CURRENT_SOURCE_DIR}/pics/global/hi128-apps-umbrello.png
)</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: inherit;">Otherwise cross compile umbrello running with wine \
shows application icon in the top left corner :-)</p></pre>  </blockquote>








</blockquote>

<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: \
0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: \
inherit;">Awesome, thanks for checking this. I'll look at making it work with \
relative paths as well.</p></pre> <br />










<p>- Alex</p>


<br />
<p>On January 20th, 2015, 8:07 p.m. UTC, Alex Merry wrote:</p>









<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="12" style="border: \
1px #888a85 solid; border-radius: 6px; -moz-border-radius: 6px; \
-webkit-border-radius: 6px;">  <tr>
  <td>

<div>Review request for Extra Cmake Modules, Ralf Habacker and Jeremy Whiting.</div>
<div>By Alex Merry.</div>


<p style="color: grey;"><i>Updated Jan. 20, 2015, 8:07 p.m.</i></p>









<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
extra-cmake-modules
</div>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
 <table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" \
style="border: 1px solid #b8b5a0">  <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: \
-moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: \
break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: inherit;">This adds an application icon to an executable from \
PNG files for Windows and Mac OS X. Unlike the similar kde4_add_app_icon macro from
kdelibs, this requires icons to be explicitly listed as arguments
(meaning CMake can tell when ones are added or deleted and reconfigure
as appropriate), and it works with Matthias Benkmann's png2ico tool, as
well as the KDE-Win tool of the same name.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: inherit;">Currently missing unit tests. Also completely untested \
(except that `make test` runs on Linux, so there are no obvious syntax errors).</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: inherit;">With thanks to Ralf Habacker for the initial work on \
porting kde4_add_app_icon.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: inherit;">CHANGELOG: Add ECMAddAppIcon module to add icons to \
executable targets on Windows and Mac OS X.</p></pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: \
1px solid #b8b5a0">  <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: \
-moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: \
break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: inherit;"><code style="text-rendering: inherit;color: \
#4444cc;padding: 0;white-space: normal;margin: 0;line-height: inherit;">make \
test</code> passes, which just provides a very basic check for syntax \
errors.</p></pre>  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>docs/find-module/FindPng2Ico.rst <span style="color: \
grey">(PRE-CREATION)</span></li>

 <li>docs/module/ECMAddAppIcon.rst <span style="color: \
grey">(PRE-CREATION)</span></li>

 <li>find-modules/FindPng2Ico.cmake <span style="color: \
grey">(PRE-CREATION)</span></li>

 <li>modules/ECMAddAppIcon.cmake <span style="color: grey">(PRE-CREATION)</span></li>

</ul>

<p><a href="https://git.reviewboard.kde.org/r/122135/diff/" style="margin-left: \
3em;">View Diff</a></p>






  </td>
 </tr>
</table>








  </div>
 </body>
</html>


--===============6912261200687089999==--



_______________________________________________
Kde-buildsystem mailing list
Kde-buildsystem@kde.org
https://mail.kde.org/mailman/listinfo/kde-buildsystem


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic