Le 18/01/2024 à 21:16, Abel Pau a écrit :

After all that process if I search for the file in all gdal it appears twice:

d:\GitHub-repository\gdal\ogr\ogrsf_frmts\miramon\data\MM_m_idofic.csv <-- OK; where it is...

Yes, this is the location of the source file, as stored in the git repository and in release source tarballs.

And here, with all other data files. It is correct?

d:\GitHub-repository\gdal\build\data\MM_m_idofic.csv

Yes, build artifact copied from source location by the logic at https://github.com/OSGeo/gdal/blob/a090314330026333eba534d50f74499ffee76d63/gdal.cmake#L671

As I mentioned yesterday, for development builds, you should change your GDAL_DATA env var now to point to d:\GitHub-repository\gdal\build\data

Even

*De:*gdal-dev <gdal-dev-boun...@lists.osgeo.org> *En nombre de *Abel Pau via gdal-dev
*Enviado el:* dijous, 18 de gener de 2024 21:13
*Para:* Even Rouault <even.roua...@spatialys.com>; gdal-dev@lists.osgeo.org
*Asunto:* Re: [gdal-dev] Where to fins my own files

Even,

thanks a lot.

I moved the file to {my GitHubDir}\GDAL\ogr\ogrsf_frmts\miramon\data\MM_m_idofic.csv

I changed my CMakeLists.txt  (see it below) as you indicated. And I deleted from gdal.cmake than now has only 5 files in there)

I rebased, deleted my gdal\build directory created the project again and built this.

An when I debug it seems that CPLFindFile("gdal", "MM_m_idofic.csv");returns NULL. If I see inside it has only one locator and it seems that should be more, now...

I am missing something?

The CMakeLists

add_gdal_driver(

TARGETogr_MiraMon

SOURCESogrmiramondatasource.cpp ogrmiramondriver.cpp ogrmiramonlayer.cpp mm_wrlayr.c mm_gdal_functions.c mmrdlayr.c

BUILTIN)

gdal_standard_includes(ogr_MiraMon)

target_include_directories(ogr_MiraMon PRIVATE$<TARGET_PROPERTY:ogrsf_generic,SOURCE_DIR>)

set(GDAL_DATA_FILES

*${CMAKE_CURRENT_SOURCE_DIR}*/data/MM_m_idofic.csv

)

set_property(

TARGET*${GDAL_LIB_TARGET_NAME}*

APPEND

PROPERTY RESOURCE"*${GDAL_DATA_FILES}*")

Thanks again

*De:*Even Rouault <even.roua...@spatialys.com>
*Enviado el:* dimecres, 17 de gener de 2024 17:13
*Para:* Abel Pau <a....@creaf.uab.cat>; gdal-dev@lists.osgeo.org
*Asunto:* Re: [gdal-dev] Where to fins my own files

Abel,

Le 17/01/2024 à 15:50, Abel Pau a écrit :

    Hi,

    ok Even,

    so, as my driver is not already online I have to do some changes
    at this part of the code, don’t I?

    At this moment I have the file in the folder GDAL\data (my
    GDAL_DATA environment variable).

    I call it like that.

    aMMIDDBFFile=CPLFindFile("gdal", "MM_m_idofic.csv");

    Do I have to move the file to somewhere? where?

I've merged the PR, so you can rebase on top of latest master

No change required in your .cpp file

The only change is to move the resource file into a data/ subdirectory within your ogr/ogrsf_frmts/XXXX driver directory

and add in ogr/ogrsf_frmts/XXX/CMakeLists.txt


set(GDAL_DATA_FILES
    ${CMAKE_CURRENT_SOURCE_DIR}/data/MM_m_idofic.csv
)
set_property(
  TARGET ${GDAL_LIB_TARGET_NAME}
  APPEND
  PROPERTY RESOURCE "${GDAL_DATA_FILES}")

Even

--
http://www.spatialys.com
My software is free, but my time generally not.

--
http://www.spatialys.com
My software is free, but my time generally not.
_______________________________________________
gdal-dev mailing list
gdal-dev@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/gdal-dev

Reply via email to