Hi Dave,
Dave Festing wrote:
> As minicom running on a 3.5" mini2440 requires a very small font (4*6) I
> ticked the nanocom box. It runs fine but I would like to change it's
> display to fit better on my small screen.
>
> So, I thought why not do a ptxdist newpackage src-make-prog called mycom.
>
> Project sets up OK, but will not compile with the following message:
>
> make[1]: Entering directory `/home/davef/Pengutronix12/local_src/mycom-1'
> make[1]: *** No rule to make target `mycom', needed by `all'. Stop.
> make[1]: Leaving directory `/home/davef/Pengutronix12/local_src/mycom-1'
> make: *** [/home/davef/Pengutronix12/platform-mini2440/state/mycom.compile]
> Error 2
>
> Seems to be a makefile issue.
Yes. Make should build the target "mycom", but does not find a rule in the
Makefile how to do so.
> I then thought why not take the makefile
> generated by PTXdist and use that? I am sure there are probably good
> reasons NOT to do this.
Hmm, I see no reason, why NOT to use the generated Makefile. But you must know
what you are doing (as always) ;)
> The bottom line in "How to become a PTXdist Guru" section 4.2.2 if that a
> patch may be required to get it to work.
>
> Is there a patch for Nanocom in PTXdist, if so where is it located?
PTXdist always looks for patches for a specific package in
- priority a: $(PTXDIST_WORKSPACE)/patches/<package> (= BSP)
- priority b: $(PTXDIST_PLATFORMDIR)/patches/<package> (= platform)
- priority c: <ptxdist install dir>/patches/<package>
To search for patches you can check these three locations to get an idea if
the package in question gets patched or not. In your case <package>
is "nanocom-1.0" and there is no patch in PTXdist for it. If you want to
change something you can start to create your own patch stack.
The "git" way:
$ mkdir -p patches/nanocom-1.0
$ touch patches/nanocom-1.0/series
$ ptxdist --git extract nanocom
Now do all your changes in "platform-mini2440/build-target/nanocom-1.0" and
let "git" keep track of your changes (but never run "ptxdist clean nanocom"
at this stage). If nanocom works as you expect it, create your patch stack
with git ("git add ...", "git commit ...") and if this is finished as well,
run in "platform-mini2440/build-target/nanocom-1.0" the command:
$ git ptx-patches
This will generate the patch stack as PTXdist require it. This patches will be
stored into "$(PTXDIST_WORKSPACE)/patches/nanocom-1.0" which will keep them
for future use, even if you run "ptxdist clean".
But I'm not sure, when the ptxdist/git feature was added to PTXdist. The still
available "classic" way is using "quilt" for that.
$ mkdir -p patches/nanocom-1.0
$ echo dummy.patch patches/nanocom-1.0/series
$ touch patches/nanocom-1.0/dummy.patch
$ ptxdist extract nanocom
The "dummy.patch" is only required at this stage to make PTXdist happy and the
extract step successfully.
Then in "platform-mini2440/build-target/nanocom-1.0" run always the same
commands:
$ quilt new this_is_my_own_patch.diff
$ quilt add <file to edit>
<edit file>
$ quilt -z diff (to check the change)
$ quilt refresh
Keep in mind: until you run the "quilt refresh" your changes would be lost, if
you would run any of the PTXdist 'clean' commands. You should use the 'drop'
command instead ("ptxdist drop nanocom compile"), to compile the package
again and again, until your development is finished.
Regards,
Juergen
--
Pengutronix e.K. | Juergen Beisert |
Linux Solutions for Science and Industry | http://www.pengutronix.de/ |