Hi ! Just to complete Sylvain’s answer : if the first two files are generated in boot\freeldr\freeldr and the freeldr_pe in the boot\freeldr\freeldr\${Configuration} (Debug/Release), it’s because for the latter we use the default generation settings of CMake (as it is done, by the way, for all the other .exes / .dlls we have) when using the add_library (or add_executable in the case of .exes) function.
Regards,
Hermès.
De : Ros-dev [mailto:ros-dev-bounces@reactos.org] De la part de Sylvain Petreolle
Envoyé : mardi 7 avril 2015 15:44
À : ReactOS Development List
Objet : Re: [ros-dev] [ros-diffs] [spetreolle] 67053: [FREELDR] In a quest to better registry, don't break VSSolution builds. freeldr_pe is not in the same directory and copy doesn't care if you ask to concatenate C:\tomatoes, it a...
freeldr.sys and freeldr16.bin are generated into {output-VS-i386}\reactos\boot\freeldr\freeldr.
freeldr_pe is generated into {output-VS-i386}\reactos\boot\freeldr\freeldr\${Configuration} (Debug/Release)
Kind regards,
Sylvain Petreolle
De : Timo Kreuzer <timo.kreuzer@web.de>
À : ros-dev@reactos.org
Envoyé le : Dimanche 5 avril 2015 10h00
Objet : Re: [ros-dev] [ros-diffs] [spetreolle] 67053: [FREELDR] In a quest to better registry, don't break VSSolution builds. freeldr_pe is not in the same directory and copy doesn't care if you ask to concatenate C:\tomatoes, it a...
The comment "# Retrieve the full path to the generated file of the
'freeldr_pe' target" Doesn't explain why it is done.
It rather looks like someone is doing something pointless and
documenting in a comment that he's doing the pointless.
${CMAKE_CURRENT_BINARY_DIR} should be the "full path to the generated file". So it seems completely pointless to add extra magic to get that file path. Your commit message implies that this change fixes VSSolution builds, but it also doesn't explain it. In fact I don't even understand that sentence.
If you don't add a proper comment to that thing, why it is needed, I
promise I will have forgotten about this in a year and remove it again. :)
Thanks,
Timo
Am 04.04.2015 um 22:33 schrieb spetreolle@svn.reactos.org:
> Author: spetreolle
> Date: Sat Apr 4 20:33:18 2015
> New Revision: 67053
>
> URL: http://svn.reactos.org/svn/reactos?rev=67053&view=rev
> Log:
> [FREELDR]
> In a quest to better registry,
> don't break VSSolution builds.
> freeldr_pe is not in the same directory and copy doesn't care if you ask to concatenate C:\tomatoes, it already has the first file.
>
> Modified:
> trunk/reactos/boot/freeldr/freeldr/CMakeLists.txt
>
> Modified: trunk/reactos/boot/freeldr/freeldr/CMakeLists.txt
> URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/CMakeLists.txt?rev=67053&r1=67052&r2=67053&view=diff
> ==============================================================================
> --- trunk/reactos/boot/freeldr/freeldr/CMakeLists.txt [iso-8859-1] (original)
> +++ trunk/reactos/boot/freeldr/freeldr/CMakeLists.txt [iso-8859-1] Sat Apr 4 20:33:18 2015
> @@ -226,10 +226,13 @@
> add_dependencies(freeldr_pe asm)
> add_dependencies(freeldr_pe_dbg asm)
>
> +# Retrieve the full path to the generated file of the 'freeldr_pe' target
> +get_target_property(_freeldr_pe_output_file freeldr_pe LOCATION)
> +
> concatenate_files(
> ${CMAKE_CURRENT_BINARY_DIR}/freeldr.sys
> ${CMAKE_CURRENT_BINARY_DIR}/frldr16.bin
> - ${CMAKE_CURRENT_BINARY_DIR}/freeldr_pe.dll)
> + ${_freeldr_pe_output_file})
>
> add_custom_target(freeldr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/freeldr.sys)
>
> @@ -240,7 +243,8 @@
> concatenate_files(
> ${CMAKE_CURRENT_BINARY_DIR}/setupldr.sys
> ${CMAKE_CURRENT_BINARY_DIR}/frldr16.bin
> - ${CMAKE_CURRENT_BINARY_DIR}/freeldr_pe.dll)
> + ${_freeldr_pe_output_file})
>
> add_custom_target(setupldr ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/setupldr.sys)
> add_cd_file(TARGET setupldr FILE ${CMAKE_CURRENT_BINARY_DIR}/setupldr.sys DESTINATION loader NO_CAB FOR bootcd regtest)
> +
>
>
>
_______________________________________________
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev