One file kept getting added to the git modified list: service/src/main/MySOAPdefinition.pas.
It was part of a repository that had been migrated from SVN (more on that in a future blog post) and along the way been renamed in directory service/src/main from MySOAPdefinition.pas to MySoapDefinition.pas. SVN (and TortoiseSVN) don’t object to this. But git does.
You’d see this on the command-line:
>git status
On branch develop
Your branch is up-to-date with 'origin/develop'.
Changes not staged for commit:
(use "git add ..." to update what will be committed)
(use "git checkout -- ..." to discard changes in working directory)
modified: service/src/main/MySOAPdefinition.pas
no changes added to commit (use "git add" and/or "git commit -a")
>git add service\src\main\MySoapDefinition.pas
>git status
On branch develop
Your branch is up-to-date with 'origin/develop'.
Changes not staged for commit:
(use "git add ..." to update what will be committed)
(use "git checkout -- ..." to discard changes in working directory)
modified: service/src/main/MySOAPdefinition.pas
no changes added to commit (use "git add" and/or "git commit -a")
It’s a general talk, not C++ specific. Recommend it to get some idea of what goes on under the hood these days, and so one doesn’t try to do some premature optimization which may turn out to be bad.
The core of the problem is that Fast Reports stores .dcu/.hpp/.pas files in the same directory whereas Delphi itself stores the .dcu/.hpp/.o files in one directory (actually usually in debug and release directories for each supported platform like win32, win64, etc).
Note: the built-in Fast Reports limits a few features, for instance export to Excel is not supported.
:: Run the most recent vsvars32.bat
:: test these environment variables that have 110 or 120 in them (future enhancements: support more Visual Studio versions):
:: Visual Studio .NET 2002: VS70COMNTOOLS=C:\Program Files (x86)\Microsoft Visual Studio .NET\Common7\Tools\
:: Visual Studio .NET 2003: VS71COMNTOOLS=C:\Program Files (x86)\Microsoft Visual Studio .NET 2003\Common7\Tools\
:: Visual Studio 2005: VS80COMNTOOLS=C:\Program Files (x86)\Microsoft Visual Studio 8\Common7\Tools\
:: Visual Studio 2008: VS90COMNTOOLS=C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\Tools\
:: Visual Studio 2010: VS100COMNTOOLS=C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\Tools\
:: Visual Studio 2012: VS110COMNTOOLS=C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\Tools\
:: Visual Studio 2013: VS120COMNTOOLS=C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\
:: VS130COMNTOOLS was skipped: http://www.neowin.net/forum/topic/1215607-visual-studio-13-to-be-skipped-vnext-to-be-v14/
:: Visual Studio 2015: VS130COMNTOOLS=C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\
:: They contain `vsvars32.bat` which will update the `PATH` so it includes where `xsd.exe`, `csc.exe`, `editbin.exe` and others reside
:: Different examples: https://github.com/noop-dev/c-cgdk/blob/master/compile-vscpp.bat
:: and https://code.google.com/p/xvid4psp/source/browse/trunk/bin/4Gb+patcher.bat
:: or give it a go for any version: http://chess.eecs.berkeley.edu/ptexternal/src/ptII/ptolemy/actor/lib/fmi/fmus/template/sources/build_fmu.bat
setlocal enabledelayedexpansion
:: delayed expansion allows for the exclamation marks
:: see http://ss64.com/nt/delayedexpansion.html
:: see http://stackoverflow.com/questions/22857407/windows-batch-how-to-assign-variable-with-dynamic-name
for %%v in (70 71 80 90 100 110 120 130) do if not [!VS%%vCOMNTOOLS!]==[] set VSCOMNTOOLS=!VS%%vCOMNTOOLS!
:: http://stackoverflow.com/questions/28682268/assign-variables-past-endlocal-in-a-loop
endlocal & call :do call "%VSCOMNTOOLS%vsvars32.bat"
goto :eof
:do
echo %*
%*
goto :eof
Embarcadero closes down their spanish R&D office putting some 80 people on the street and diminishing the total Delphi R&D team.
Former Chief Scientist Allen Bauer commented:
The Spain office had taken on most of the IDE, Delphi RTL, GetIT, Installer, some DB, Bluetooth components, IoT, QA, and other miscellaneous tasks. They were by-far the largest single group working on RAD Studio. They were all a wonderful, dedicated, excited group of folks. They were eager to learn and truly enjoyed their jobs. I am deeply saddened by this development.
Recently I did my very first JavaScript in HTML development. Since it was a one page experiment, I didn’t want to put it in an official repository of it’s own…