Referencing files included in the FileList attribute in a manifest - powershell

I am writing a PowerShell module that will perform various configurations on our product including some xml transformations.
So, I need to include the XDT files in my module.
My module manifest will include the FileList attribute with a list of all the transformation files.
But the question is, how do I reference these files in the functions in the module?
Didn't find much in the documentation except that the FileList is just an inventory.
I thought of creating a variable with a path to the files (dynamic of course, depending on where the module is installed) but there must be a way to use these files...
This is a script module, not binary module and intended for V5
Thanks!

Related

UnityEngine.UI outside of Unity Environment

I am trying to compile several scripts in my project into an easier to move and manage DLL file, however several scripts call UnityEngine.UI, and I know that the DLL file used to exist in /Contents/UnityExtensions/Unity/GUISystem/Editor/UnityEditor.UI.dll however the only data I can find for it now are the uncompiled files inside the Package Manager, where is the compiled DLL stored now?
The simplest answer that I just found is to look in the project folder of one of your projects in Library\ScriptAssemblies

What do _._ files mean in nuget packages?

While looking at the contents of a Nuget package I came across the following file named:
_._
Shown by the Image below:
What does this file mean or do in nuget packages?
They are placeholder files to denote an empty directory.
Empty directories are often not well-supported in ZIPs so a file with that name is placed in there to ensure the directory is created.
From this link
They are placeholder files to denote an empty directory. Empty directories are often not well-supported in ZIPs so a file with that name is placed in there to ensure the directory is created.
This is important because the existence of an "empty" net46 folder
means that the package supports .NET Framework 4.6, but does not
require any assemblies (DLLs) in order to run on that version of .NET.
This is most likely because the implementation of the package is in
the GAC.

How does NuGet decide which files are included when packing a csproj file?

I'm trying to use the simplest and most automated approach possible to create a few NuGet packages from some of our projects, by using the nuget pack [path-to-csproj] method.
For most of the projects I've tried this, the command line tool seems to understand the .Net framework version of the projects and it adds the output dll and xml files to the correct lib folder. In some other project, it is including a .css file to the content folder in the package, I assume because the file has a Content build action.
What exactly does this NuGet command include in the final package and how does it extract this information? Is there a comprehensive documentation on the file extraction from the csproj? I'd like to understand this process so that I can hopefully add my own files to it, like the app.config file and some code contracts assembly files without having to hardcode paths in the nuspec definition.

Retrieve a Relative Path to a Directory from another Directory in NAnt

I have a NAnt task create copies of MSBuild files. The copies are located in other directories than their originals.
The source files should remain where they are. Therefore, I'm using NAnt's <style> task to run an XSLT on the MSBuild files. It replaces the <Compile/> elements with <Compile><Link/></Compile> subtrees (attributes omitted for the sake of legibility).
I've encountered the following problem:
In the resulting MSBuild files, the Include attribute of the Compile elements should receive the relative path to the source file from the new location of the MSBuild files. As the original MSBuild files contain the relative paths to the files, what I am actually looking for is the relative path from the new MSBuild file location to the location of the original MSBuild files.
Workarounds that I know how to use, but which I'd like to avoid:
custom NAnt task
using substring to remove the mutual prefix of the directory paths (the NAnt base dir)
Is there any better way; possibly a NAnt function or an ingenious way to use several NAnt functions in conjunction to achieve this?

Emacs CEDET EDE non-trivial project setups

Trying to understand how EDE works by using it to generate Makefiles for
a project directory that contains several targets under a specific
hierarchy. I'm not having any luck, and the info pages don't seem to
answer my question.
My directory structure looks something like:
(The asterix (*) marks files containing main() functions)
research/
flow/
flow.cpp
flow.hpp
program.cpp *
samples/
sample1.yuv
utils/
yuvreader.cpp
yuvreader.hpp
tests/
yuvreader_test.cpp *
I want to create EDE project(s) with one or more subprojects; or maybe I
just want one or more targets...?
flow's program.cpp requires flow/ and utils/ sources, but yuvreader_test
only requires utils/ sources.
I did ede-new in the root directory, and all subdirectories. I also did ede-new-target in the root directory, but when adding source files in subdirectories, it does not recognize the target I created.
I would appreciate it if someone could point me to some more complicated
Project.ede files for something like I'm trying to do. You can guess
that I have more subdirectories containing class code files, some of
which have standalone programs that use that code; also I have more test
code under tests/. Any example files/command workflows would be
appreciated.
The EDE feature that will generate Makefile or Automakefiles has a few more constraints than either Make or Automake. For example, the files belonging to a target must be in the same directory as the project containing the target. In your example, you would probably have no projects in your root directory.
To bring multiple sources together into a single program, a simple mechanism is to have each subdirectory create an archive (.a) or a shared lib (.so) that is linked together in your program.
If that is too constraining, you can also write your own automake files, and EDE will read those directly, so you can have a more complex build procedure as needed.
The CEDET distribution uses EDE as its build process, so you could look at that as a complex example. It doesn't build C++ files though, so it may not be as helpful as you would like.