[solved] AssetData.hx & DefaultAssetLibrary.hx missing all my assets on Linux, but not on Windows

  • So I have my project compiling fine on Windows, but I copy the whole thing to a Linux box and when it compiles (with openfl test linux or openfl build linux) it does not do the following two things that normally happen on windows:

    1. copy the assets directory to to export/[platform]/cpp/bin
    2. have each asset mentioned in cpp/haxe/lime/AssetData.hx and cpp/haxe/DefaultAssetLibrary.hx

    My AssetPaths.hx is just the standard one included with the flixel template:

    @:build(flixel.system.FlxAssets.buildFileReferences("assets", true))
    class AssetPaths {}

    And my Project.xml doesn't seem to be something that would break on linux:

    	<!-- _____________________________ Path Settings ____________________________ -->
    	<set name="BUILD_DIR" value="export" />
    	<classpath name="source" />
    	<assets path="assets" exclude="*.mp3|*.txt|*.fgr" if="windows | linux"/>

    But, both generated .hx files have only the 5 default flixel assets, and none of my hundreds of ogg/wav/png/xml assets are in there.

    haxelib list gives the same on both machines: flixel git (equivalent of latest dev as of this week, with some PRs), openfl 3.6.1, lime 2.9.1, hxcpp 3.2.205.

    What could be getting in the way of the assets building normally?

  • Earlier I had had just "windows" there; I guess I must have changed it to "linux" to get it to build on a one-off that I had working once. For some reason it doesn't like the "windows | linux" even on Windows, even though I have other lines using that like <haxedef name="TESTING_RECORD" unless="html5 | SCREENSHOTS | SANITY_CHECK" /> that work fine.

    Anyway, solution: if="cpp" instead.

Log in to reply