Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / fpc-devel / 2011-08

svn and make install

3 messages · 2 people ·

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Ludo Brands

Dear all,

On windows, "make install" copies .svn subdirectories from the packages/xxx/examples/ directories to the new examples/xxx/ directories. First time examples/xxx/ doesn't exist and all is fine. Second make install causes following error:
...
make[5]: Leaving directory `C:/lazarus/fpc/svn/packages/regexpr/examples' C:/lazarus/fpc/2.4.3/bin/i386-win32/ginstall.exe -m 755 -d C:\lazarus\fpc\svn/examples/regexpr
C:/lazarus/fpc/2.4.3/bin/i386-win32/cp.exe -Rfp examples/* C:\lazarus\fpc\svn/examples/regexpr
cp.exe: cannot remove old link to
`C:/lazarus/fpc/svn/examples/regexpr/.svn/all-wcprops': Permission denied cp.exe: cannot remove old link to
`C:/lazarus/fpc/svn/examples/regexpr/.svn/dir-prop-base': Permission denied cp.exe: cannot remove old link to
`C:/lazarus/fpc/svn/examples/regexpr/.svn/entries': Permission denied cp.exe: cannot remove old link to
`C:/lazarus/fpc/svn/examples/regexpr/.svn/prop-base/Makefile.fpc.svn-base': Permission denied
...

The permission denied comes probably from the read-only attribute of .svn files.

The easiest solution I've found is to delete the examples directory before running make install.

A more lasting solution would be to change the makefile to execute instead
of;

C:/lazarus/fpc/2.4.3/bin/i386-win32/ginstall.exe -m 755 -d C:\lazarus\fpc\svn/examples/regexpr
C:/lazarus/fpc/2.4.3/bin/i386-win32/cp.exe -Rfp examples/* C:\lazarus\fpc\svn/examples/regexpr

the following:

C:/lazarus/fpc/2.4.3/bin/i386-win32/ginstall.exe -m 755 -d C:\lazarus\fpc\svn/examples/regexpr
C:/lazarus/fpc/2.4.3/bin/i386-win32/rm.exe -rf
C:\lazarus\fpc\svn/examples/regexpr
C:/lazarus/fpc/2.4.3/bin/i386-win32/cp.exe -Rfp examples/* C:\lazarus\fpc\svn/examples/regexpr

Something along the lines of ( added $(DELTREE) $(INSTALL_EXAMPLEDIR) ):

fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS)) ifdef HASEXAMPLES
$(MKDIR) $(INSTALL_EXAMPLEDIR)
$(DELTREE) $(INSTALL_EXAMPLEDIR)
endif
ifdef EXAMPLESOURCEFILES
$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR) endif
ifdef TARGET_EXAMPLEDIRS
$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS))
$(INSTALL_EXAMPLEDIR)
endif

Ludo

Reply by email

Ludo Brands
to Marco van de Voort
Show quoted text 8 lines
> On windows, "make install" copies .svn subdirectories from the > packages/xxx/examples/ directories to the new examples/xxx/ > directories. First time examples/xxx/ doesn't exist and all is fine. > Second make install causes following error: http://www.stack.nl/~marcov/buildfaq/#toc-Section-2.4

OK, read that: I'll stick to deleting the examples directory. It produces "quickly" the same result as the "slow solution". It's part of my build and install batch files now.

Thanks, Ludo

Reply by email