svn, windows, linux, problems, the whole ordeal - General Chat - CHDK Forum supplierdeeply

svn, windows, linux, problems, the whole ordeal

  • 10 Replies
  • 3946 Views
*

Offline PhyrePhoX

  • *****
  • 2254
  • make RAW not WAR
    • PhyreWorX
svn, windows, linux, problems, the whole ordeal
« on: 16 / April / 2008, 10:03:35 »
Advertisements
edit: snip from yet another personal CHDK build (against trunk revision 384)

hey jucifer, what is your procedure on merging all these changes? can you do it semi-automatically? because if not that sure is one hell of a workload. i'm searching for a way to merge changes from different sources into one workingcopy for ages. maybe you have some tips regarding this :)
« Last Edit: 16 / April / 2008, 13:53:05 by PhyrePhoX »

*

Offline Jucifer

  • *****
  • 251
  • [A710IS]
svn, windows, linux, problems, the whole ordeal
« Reply #1 on: 16 / April / 2008, 11:32:16 »
My method... hmm...
I wish I could do it (semi)automagically, but no... I start by applying other people's/largest patches, then what TortoiseSVN can't apply automagically, I do by copy-pasting. That's why I usually have to compile at least a couple of times. Those +'s are left there so easily...
It's not _that_ much work. :]
Or haven't been... Please, stop making your modifications! :]

*

Offline PhyrePhoX

  • *****
  • 2254
  • make RAW not WAR
    • PhyreWorX
svn, windows, linux, problems, the whole ordeal
« Reply #2 on: 16 / April / 2008, 12:29:10 »
okay. so you apply the patches in the windows gui, right? i'm searching for a way i can do that on linux via commandline. i mean i like linux and all the opensource stuff, but manuals, helpfiles and the like... [admin: avoid swearing please]. no comments, no documentation, i feel like going to the subversion forum and opening three threads, bumping a nonrelated one and ask questions like "gimme gimme gimme, me so needy". wait a second, i know that behaviour from somewhere... :D
anyways, problem is: i cant use the linux patch command, at least not with patches created with windows tortoise. even if i convert it with dos2unix. well well, enough with the rant.
well i would like to stop modifications... but atm i like coding for my cam way more than for my degree at uni :D right now i'm looking for an algorithm to calculate sun/moon rise and set times. :D

svn, windows, linux, problems, the whole ordeal
« Reply #3 on: 16 / April / 2008, 13:26:42 »
anyways, problem is: i cant use the linux patch command, at least not with patches created with windows tortoise. even if i convert it with dos2unix. well well, enough with the rant.
What's wrong with Windows' diff on Linux?


*

Offline PhyrePhoX

  • *****
  • 2254
  • make RAW not WAR
    • PhyreWorX
svn, windows, linux, problems, the whole ordeal
« Reply #4 on: 16 / April / 2008, 13:38:05 »
okay, here's the deal:

these are the commands i used:
Quote
colorsvn export https://tools.assembla.com/svn/chdk/trunk export
...
Exported revision 384.
cd export/
patch -p0 <trunk-r384-patch-unix.diff

this is the output:
Code: [Select]
patching file core/conf.c
patching file core/gui.c
patching file core/gui_fselect.c
patching file core/gui_lang.c
Hunk #1 FAILED at 419.
1 out of 1 hunk FAILED -- saving rejects to file core/gui_lang.c.rej
patching file core/gui_lang.h
patching file core/gui_menu.c
patching file core/gui_mpopup.c
patching file core/gui_mpopup.h
patching file core/gui_osd.c
patching file core/gui_osd.h
patching file core/kbd.c
patching file core/main.c
patching file core/raw.c
Hunk #1 FAILED at 50.
1 out of 1 hunk FAILED -- saving rejects to file core/raw.c.rej
patching file include/conf.h
patching file include/platform.h
Hunk #1 FAILED at 242.
Hunk #2 FAILED at 420.
2 out of 2 hunks FAILED -- saving rejects to file include/platform.h.rej
patching file lang/english.lng
Hunk #1 FAILED at 434.
1 out of 1 hunk FAILED -- saving rejects to file lang/english.lng.rej
patching file lang/german.lng
Hunk #1 FAILED at 1.
Hunk #2 FAILED at 193.
2 out of 2 hunks FAILED -- saving rejects to file lang/german.lng.rej
patching file lib/ubasic/tokenizer.c
Hunk #1 FAILED at 85.
Hunk #2 FAILED at 110.
Hunk #3 FAILED at 124.
3 out of 3 hunks FAILED -- saving rejects to file lib/ubasic/tokenizer.c.rej
patching file lib/ubasic/tokenizer.h
Hunk #1 FAILED at 150.
1 out of 1 hunk FAILED -- saving rejects to file lib/ubasic/tokenizer.h.rej
patching file lib/ubasic/ubasic.c
patching file makefile.inc
patching file platform/a450/sub/100d/stubs_min.S
patching file platform/a460/sub/100d/stubs_min.S
patching file platform/a530/sub/100a/stubs_min.S
patching file platform/a540/sub/100b/stubs_min.S
Hunk #1 FAILED at 16.
1 out of 1 hunk FAILED -- saving rejects to file platform/a540/sub/100b/stubs_min.S.rej
patching file platform/a550/sub/100c/stubs_min.S
patching file platform/a560/sub/100a/stubs_min.S
patching file platform/a570/sub/100e/stubs_min.S
patching file platform/a570/sub/101a/stubs_min.S
patching file platform/a610/sub/100e/stubs_min.S
patching file platform/a610/sub/100f/stubs_min.S
patching file platform/a620/sub/100f/stubs_min.S
patching file platform/a630/sub/100c/stubs_min.S
patching file platform/a640/sub/100b/stubs_min.S
patching file platform/a650/sub/100d/stubs_min.S
patching file platform/a700/sub/100b/stubs_min.S
patching file platform/a710/sub/100a/stubs_min.S
patching file platform/a720/sub/100c/stubs_min.S
patching file platform/g7/sub/100e/stubs_min.S
patching file platform/g7/sub/100g/stubs_min.S
patching file platform/g7/sub/100i/stubs_min.S
patching file platform/g7/sub/100j/stubs_min.S
patching file platform/generic/kbd.c
Hunk #1 FAILED at 318.
1 out of 1 hunk FAILED -- saving rejects to file platform/generic/kbd.c.rej
patching file platform/generic/shooting.c
patching file platform/ixus55_sd450/sub/100b/stubs_min.S
patching file platform/ixus55_sd450/sub/100c/stubs_min.S
patching file platform/ixus65_sd630/sub/100a/lib.c
patching file platform/ixus700_sd500/sub/101a/stubs_min.S
patching file platform/ixus700_sd500/sub/101b/stubs_min.S
patching file platform/ixus70_sd1000/sub/100c/stubs_min.S
patching file platform/ixus70_sd1000/sub/101b/stubs_min.S
patching file platform/ixus70_sd1000/sub/102a/stubs_min.S
patching file platform/ixus800_sd700/sub/100b/stubs_min.S
patching file platform/ixus800_sd700/sub/101b/stubs_min.S
patching file platform/ixus850_sd800/sub/100e/stubs_min.S
patching file platform/ixus860_sd870/sub/100c/stubs_min.S
patching file platform/ixus950_sd850/sub/100c/stubs_min.S
patching file platform/s2is/sub/100e/stubs_min.S
patching file platform/s2is/sub/100f/stubs_min.S
patching file platform/s2is/sub/100g/stubs_min.S
patching file platform/s3is/kbd.c
patching file platform/s3is/sub/100a/stubs_min.S
patching file platform/s5is/sub/101a/lib.c
patching file platform/s5is/sub/101b/lib.c
patching file platform/s5is/sub/101b/stubs_auto.S
patching file platform/s5is/sub/101b/stubs_min.S

this is an example content of such *.rej (core/raw.c.rej) file:
Code: [Select]
***************
*** 50,56 ****

      state_shooting_progress = SHOOTING_PROGRESS_PROCESSING;

-     if (conf.save_raw) {
          long v;

          started();
--- 50,56 ----

      state_shooting_progress = SHOOTING_PROGRESS_PROCESSING;

+      if (conf.save_raw && (!((movie_state > 1) && conf.save_raw_in_video   ))) {
          long v;

          started();

this definitly doesnt have anything to do with jucifers diff, happens with all diffs i get from windows. but even after dos2unix'ing it doesnt work. so either i use the patch command in the wrong way (which is very likely as i dont have a real clue) or my linux is fubared.

i know this probably deserves an own topic, sorry :D
well i probably will split this part of the topic and create a new one later.

Re: yet another personal CHDK build (against trunk revision 384)
« Reply #5 on: 16 / April / 2008, 14:06:15 »
could you run
Code: [Select]
tar -cf - path/to/trunk-r384-patch-unix.diff path/to/core/raw.c.rej path/to/raw.c.org | gzip -c -9 - > file_to_send.tar.gz
and send me this file_to_send.tar.gz at (email removed by phyrephox)


edit: removed email adress.
« Last Edit: 16 / April / 2008, 14:20:32 by PhyrePhoX »

*

Offline PhyrePhoX

  • *****
  • 2254
  • make RAW not WAR
    • PhyreWorX
Re: svn, windows, linux, problems, the whole ordeal
« Reply #6 on: 16 / April / 2008, 14:19:51 »
i attached the file and removed your email adress from your post. we dont want to invite the spammers, do we :D
thanks in advance, maybe you do have a clue :)

Re: svn, windows, linux, problems, the whole ordeal
« Reply #7 on: 16 / April / 2008, 15:13:32 »
raw.c has dos end lines (x0Dx0A) and patch cannot patch (I don't know why). I've checked out the trunk and it seems patches fail only on dos end line files. So you have to convert theses files to unix endline before patching.


*

Offline PhyrePhoX

  • *****
  • 2254
  • make RAW not WAR
    • PhyreWorX
Re: svn, windows, linux, problems, the whole ordeal
« Reply #8 on: 16 / April / 2008, 15:20:05 »
well i already did "dos2unix trunk-r384-patch-unix.diff". hm, gotta read the manpage of that command, maybe i'm missing a parameter there.

Re: svn, windows, linux, problems, the whole ordeal
« Reply #9 on: 16 / April / 2008, 15:26:37 »
you have to convert end lines for each file where patch failed in your working copy also.

 

Related Topics