1

I have a software project which has a global software base but many different build targets for specific hardware platforms. At the moment I address these targets by different makefiles, which access the hardwareplatform specific folders. But I thought about, how I could improve this structure....because in most terms the user will only focus on one hardware platform, but all platforms should be in the svn. So is it possible and if yes, in which way, to build a structure in svn in that way, that I have only one makefile one folder for hardware specific stuff and only differentiation by checking out on a specific branch,tag...? But the development process should also continue on all platforms in parallel? How could I handle it best?

chris LB
  • 451
  • 1
  • 4
  • 14

1 Answers1

0

You can split your makefile into base and hardware specific parts. Then, you can structure it as

/cmn_src
/hw1
   makefile.part
/hw2
   makefile.part
makefile

So, your basic makefile will utilize this:

include $(HARDWARE_TYPE)/makefile.part
...

If you aim to limit size (or fix tag/revision) for product you can also setup svn product specific location with externals:

/product_based_on_hw1
   ^.../hw1 hw1
   ^.../cmn_src cmn_src
pmod
  • 10,450
  • 1
  • 37
  • 50
  • Hey, thank you for your answer. Your described procedure with the makefile is equal to that I am already using. Maybe I could not clear out my problem. I want to have the possebility of checking out only the sources for one hardware platform, but together with the main code, which is used by all platforms. Next I want to enable the further development on such a hardware branch, but changes must be go back into the main branch for all main files...Moreover the checked out files should be clean as possible in term of other hardware platforms. – chris LB Jul 20 '11 at 06:42